Allow dynamically shared library

Change-Id: I3a53a0462dac66bd0744836796434096cffe9720

Conflicts:

	Android.mk
Merge "Allow dynamically shared library"
Use kernel cacheflush for large sizes on MIPS.

This is a workaround to a deserializer bug. The bug was exposed
with a recent optimization to use user-mode cache-flushing on
MIPS. To reduce risk, we're doing a workaround in mips-specific
code so that other arch's cannot be affected.

The deserializer does this FlushICache:

  CPU::FlushICache(last_object_address_, Page::kPageSize);

However, that region includes OS guard-pages with no access
privilege. The MIPS kernel cacheflush routines work OK in this
case, but the Bionic cacheflush recently enabled user-mode flushing
using the synci instruction, which causes a segfault on MIPS when
the guard pages are reached.
(change I48fd6f2b0cbe80c3cd90f453ced97a2f154f7ad3)

The workaround just reverts to the kernel flush when the size
is Page::kPageSize or bigger.

A better fix would be to alter the deserializer so that only the
executable pages are flushed:
  CPU::FlushICache(last_object_address_,
                   isolate_->memory_allocator()->CodePageAreaSize());

However, that changes common code for all supported architectures.
There is no evidence that this bug affects the other arch's, so we
are doing a MIPS-specific workaround.

Change-Id: I30b62eb579feab1453d3ae85a5fb9b408f91756b
Signed-off-by: Paul Lind <paul.lind@imgtec.com>
Merge "Use kernel cacheflush for large sizes on MIPS."
am 8c7c06b5: Use kernel cacheflush for large sizes on MIPS.

* commit '8c7c06b5cdac575f2288290cbad8c757ca078635':
  Use kernel cacheflush for large sizes on MIPS.
Merge branch 'jb_2.5' of git://codeaurora.org/quic/la/platform/external/v8 into jb-devel
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>
libv8: set unused attribute for unused parameters

Summary:
On GCC 4.8+ we get excessive unused parameter warnings due to -Wunused-parameter.
Set __attribute__((unused)) for all unused parameters.

Test Plan:
Build libv8 with this patch and gcc 4.8, and enjoy a much cleaner log due to the lack of unused parameter
warnings.

Reviewers: randall.rushing, Mustaavalkosta, michyprima, rlasalle15, Roach, synergy

Reviewed By: synergy

Differential Revision: http://review.codefirex.com/D212
Merge https://android.googlesource.com/platform/external/v8 into jb-devel
Merge remote-tracking branch 'cfx/jb-devel-mr2-release' into cm-10.2