[4.8] Support OpenMP

See b6e375800c9a2f02a732cbdf5e87a860c3d954e1,
1271761f530c0050154e8d526b95f952df551751,
92c478dba755a1a2f6f00ff390666acbffd41982 and
51df2e98d22e2c6f5d2a16860bc8fc3644179c1d.

Change-Id: I7b01524a5516dd31b26a68cccc616a066893db39

Author: Andrew Hsieh <andrewhsieh@google.com>
Date:   Tue Apr 2 19:46:23 2013 +0800
[4.8] Disable libstdc versioning

Used to be first half of NDK local patch at $NDK/build/tools/
toolchain-patches/gcc/0006-Disable-libstdc-versioning.patch

See 4a0927423d51f594b870e58b3eb51574327f8b0e

Change-Id: Ifc8efb661c5b4175feb1654fbc79525e1bc7f713

Author: Andrew Hsieh <andrewhsieh@google.com>
Date:   Tue Apr 2 19:47:45 2013 +0800
[4.8] Use memalign instead of posix_memalign in GCC x86 mm_malloc.h

posix_memalign doesn't exist in NDK.  Code inludes ?mmintrin.h
which in turn includes mm_malloc.h may fail to link

For AOSP platform build which uses the same compiler, add
-DHAVE_POSIX_MEMALIGN to restore the original behavior.

Other than non-zero return value which _mm_alloc already ignores, both
paths are functioanlly identical (under the hood dlmalloc.c in 32-bit
ensure alignment is at least 16-byte)

See 0457b0db02c4b229eab11c01025df948032c31a7

Change-Id: I2e83d544a4ac2f4549de3b41a85e009a0a085476

Author: Andrew Hsieh <andrewhsieh@google.com>
Date:   Tue Apr 2 19:48:31 2013 +0800
[4.8] Add mclinker support: -fuse-ld=mcld

See http://code.google.com/p/mclinker/
    6502f082fed932c0609b475d5d6917103700e5a8

Change-Id: I3c782584f43a8216d868e016d5f416a574402702

Author: Andrew Hsieh <andrewhsieh@google.com>
Date:   Tue Apr 2 19:50:14 2013 +0800
[4.8] Fixed GCC 4.8 ICE gen_thumb_movhi_clobber at config/arm/arm.md:5832

See issue https://code.google.com/p/android/issues/detail?id=52732,
and fix http://gcc.gnu.org/ml/gcc-patches/2010-12/msg00732.html

Also see 78a68e851a2f6f9d00367cd38eeedf670bb80f01

Change-Id: Iad4deda17414f3165714da0b60f9f8cb2a6ef052

Author: Andrew Hsieh <andrewhsieh@google.com>
Date:   Tue Apr 2 19:51:54 2013 +0800