Android ucontext refinements (upstream backport).

This is a forward-compatible patch to avoid naming/type conflicts in
the near future, when the Android C library will be updated to provide
mcontext_t/ucontext_t properly.

Note that this changes the naming convention used to access the
register values from mcontext_t, to follow current ARM GLibc (this
is also the convention being adopted by Android).

+ Android provides gettid() (all API levels) so use it instead of
  relying on syscall().

This is a backport of http://code.google.com/p/v8/source/detail?r=12250

See http://code.google.com/p/android/issues/detail?id=34784 for more
context.

Change-Id: Id1fe5489eea8a51d0210858bf91132191f967822
Merge "Android ucontext refinements (upstream backport)."
am 5725f319: Merge "Android ucontext refinements (upstream backport)."

* commit '5725f3197b98021df10ce3655cddecb7c118baaa':
  Android ucontext refinements (upstream backport).
Revert "Android ucontext refinements (upstream backport)".

This creates build breakages in the internal Android tree.
Will investigate later.

Original patch: https://android-review.googlesource.com/#/c/38852/

Change-Id: I902021fa56b959f1f035f4d448a43483328debd8
Merge "Revert "Android ucontext refinements (upstream backport)"."
am c796025f: Merge "Revert "Android ucontext refinements (upstream backport)"."

* commit 'c796025f7dc5f8df7c0f9c76bcaee96a7716912d':
  Revert "Android ucontext refinements (upstream backport)".
Fix ARM hardfloat detection in linux

See
  http://code.google.com/p/v8/issues/detail?id=2140
  https://chromiumcodereview.appspot.com/10713009

The original code fails to detect at run-time when compiled
with GCC 4.7, because the undefined behavior of casting
void to double, and the r0/r1 clobbered in assembly code
isn't reaching the use when compared to 1.0 in VFP reg.
In summary, the old code is incorrect and overkill, and the
new code fix it.

Change-Id: I6b63a4f9789e08089368e431a5553f482400725a
Merge "Fix ARM hardfloat detection in linux"
am 1724e02f: Merge "Fix ARM hardfloat detection in linux"

* commit '1724e02fae2f5a2de04e994567a8c74cd31068ef':
  Fix ARM hardfloat detection in linux
v8: Fix build in ISO C++ 11 mode

Fixes building with -std=gnu++11 - this is useful for compatibility
with future compilers (where gnu++11 will be the default mode) and
to make additional language features/optimizations (e.g. constexpr)
available.

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