frameworks/base: Squashed Linaro patches:

Summary:
Squashed commit of the following:

frameworks/base: Fix various aliasing violations

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

frameworks/base: Fix aliasing violations

Fix violations of strict aliasing rules

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

frameworks/base: Fix build in ISO C++11 mode

Fix various incompatibilities with ISO C++11:
- Assumption that char16_t is defined to uint16_t
- constexpr usage
- macro constructs that could be interpreted as string literals
- enum typesafety

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

base: Fix build after Parcel ABI fix in Binder

Adapt code to the fact that writeString16's first parameter
is now an uint16_t* to match the old ABI

Change-Id: I138af645c877f343f0490152b9702698b7d36582
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>

frameworks/base: Fix compile errors

Fix ISO C++11 incompatibility in TextLayoutCache and
aliasing violation in FontRenderer

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

frameworks/base: Fix build in ISO C++11 mode

Change-Id: I5d3ba44cc9faa5826a5a0a6b37c8f0eb2872e1ac
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>

hwui: Fix build in ISO C++11 mode

Make sure log calls can't be confused with C++11 string literals

Change-Id: I1d458e92e690f6f2b922a05494db8c01da54e460
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>

Fix confusion about whether or not output() should be const

It probably should be const, but it isn't on master - let's try to
be closer to next upstream

Change-Id: Id26bf19d94a36d83b57488e8bd8d86fa21e784b2
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>

Work around uint16_t vs. char16_t confusion

Change-Id: I188e5a82b2dba821710eaea85d6cbef2ae004ce9
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>

Test Plan: verified, depends on other patches

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D82

Signed-off-by: Anthony <Disciple3603@gmail.com>

Conflicts:
	core/jni/Android.mk
	core/jni/android_os_FileUtils.cpp
hwui: build with GCC for now

Summary:
Build with GCC until we fix a few
issues in OpenGLRenderer.cpp

Test Plan: good, temp workaround

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D125
Don't rely on gcc extensions

Summary:
Variable-length arrays of non-POD data types are a gcc extension
not currently supported by clang.

Change-Id: I9cd1aed742ac70e642771ff455582727fbafaec2
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>

Test Plan: verified

Reviewers: randall.rushing, jriordan001, anders3408

Reviewed By: randall.rushing

Differential Revision: http://review.codefirex.com/D284
GC triggering performance optimizations

Copy the correct starting heap size at process init.
Interfaces to set GC/managed heap parameters.

Change-Id: Idc02ef35c6045c129addcac17628eefffe958805
(cherry picked from commit 71c3f30fc9ad6ecaf534a02b6e795d86628d923b)
(cherry picked from commit a93fe7200b5df163e13e11059555ddcbdcbbf808)
(cherry picked from commit cc68d4a09b89aa71e5dd08ee6a220200f4e084e9)
Signed-off-by: Anthony <Disciple3603@gmail.com>

Conflicts:
	core/java/android/app/ActivityThread.java

Conflicts:
	core/java/android/app/ActivityThread.java
Fix various c++11 narrowing violations

Summary:
The best fix for these narrowing
violations is to use static casting

Test Plan: verified

Reviewers: randall.rushing, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D124
Too late, go to bed already

Signed-off-by: Anthony <Disciple3603@gmail.com>