Version 3.28.71.10 (merged r23727)

Allocate a new empty number dictionary when resetting elements

BUG=410332
LOG=N
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/577233002

git-svn-id: https://v8.googlecode.com/svn/branches/3.28@24034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Version 3.28.71.11 (merged r24079)

ARM: Make stack limit stricter to account for large buffers in MacroAssembler.

BUG=chromium:405338
LOG=Y
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/594033003

git-svn-id: https://v8.googlecode.com/svn/branches/3.28@24131 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Version 3.28.71.12 (merged r24125)

Fix escaped index JSON parsing

BUG=416449
LOG=N
R=verwaest@google.com, verwaest@chromium.org

Review URL: https://codereview.chromium.org/597893002

git-svn-id: https://v8.googlecode.com/svn/branches/3.28@24162 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Version 3.28.71.13 (merged r24049)

Revert "filter cross context eval"

BUG=chromium:415051
LOG=N
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/600203003

git-svn-id: https://v8.googlecode.com/svn/branches/3.28@24241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Version 3.28.71.14 (merged r23144)

Correctly handle holes when concat()ing double arrays

BUG=chromium:403409
LOG=N
TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/608373002

git-svn-id: https://v8.googlecode.com/svn/branches/3.28@24296 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Version 3.28.71.15 (merged r23824)

Remove guard page mechanism from promotion queue.

BUG=chromium:411210
LOG=N
TBR=jarin@chromium.org

Review URL: https://codereview.chromium.org/617493005

git-svn-id: https://v8.googlecode.com/svn/branches/3.28@24300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
V8 CPU profiler: source level support
Introduce Float32x4, Float64x2, Int32x4, Float32x4Array, Float64x2Array
and Int32x4Array data types, implement the SIMD operations on the
Float32x4, Float64x2 and Int32x4 with C++ runtime functions and implement
Float32x4Array, Float64x2Array and Int32x4Array element loading and storing.

Change Float32x4, Float64x2 and Int32x4 to JSObject.

These objects contains a "value" pointer pointing to a corresponding
FixedTypedArray which is the real data storage.

Conflicts:
	include/v8.h
	src/arm/lithium-arm.cc
	src/bootstrapper.cc
	src/contexts.h
	src/factory.h
	src/flag-definitions.h
	src/globals.h
	src/heap/heap.h
	src/heap/objects-visiting.cc
	src/ia32/lithium-ia32.cc
	src/ia32/macro-assembler-ia32.h
	src/objects-inl.h
	src/objects-printer.cc
	src/objects.cc
	src/objects.h
	src/runtime.cc
	src/runtime.h
	src/runtime.js
	src/x64/lithium-x64.cc
	src/x64/macro-assembler-x64.h
	tools/generate-runtime-tests.py
	tools/gyp/v8.gyp
	tools/js2c.py

Fix build and tests error

  1). ASSERT ==> DCHECK
  2). static inline Int32x4* cast(Object* obj);  ==>  DECLARE_CAST(Int32x4)
  3). OS::nan_value() ==> base::OS::nan_value()
  4). change print arguments from StringStream* accumulator to OStream& os
      (Float32x4::Float32x4Print(StringStream* accumulator) ==> Float32x4::Float32x4Print(OStream& os))

Fix the presubmit step

- Fix the runtime function test auto generation.
- Fix the coding style issues.

TODO(ningxin): squash into patch 1

Conflicts:
	tools/generate-runtime-tests.py

Fix "Extension or internal compilation error."

  change the function SetProperty ==> AddNamedProperty
Inline all SIMD operations and optimize the SIMD arrays load and store.

The implementation is for ia32 and x64 ports.

Optimize Float32x4Array, Float64x2Array and Int32x4Array element loading
and storing for ia32 and x64 port by:
  1). Allocating SIMD128 registers
  2). Emitting SIMD movups instruction
  3). Adding deoptimization support for SIMD128 registers or stack slots

Inline all SIMD operations and emit SIMD instructions for ia32 and x64 port

Conflicts:
	src/bootstrapper.cc
	src/deoptimizer.h
	src/hydrogen-instructions.h
	src/hydrogen-types.cc
	src/hydrogen-types.h
	src/hydrogen.h
	src/ia32/lithium-codegen-ia32.cc
	src/ia32/lithium-ia32.cc
	src/ia32/lithium-ia32.h
	src/ia32/macro-assembler-ia32.h
	src/lithium-allocator.cc
	src/lithium-allocator.h
	src/lithium.cc
	src/objects.h
	src/x64/lithium-codegen-x64.cc
	src/x64/lithium-x64.cc
	src/x64/lithium-x64.h
	src/x64/macro-assembler-x64.h
	test/fuzz-natives/testcfg.py

Fix build and tests error for cherry pick the commit
"Inline all SIMD operations and optimize the SIMD arrays load and store"

  1). ASSERT ==> DCHECK
  2). change print arguments from StringStream* accumulator to OStream& os
      (HNullarySIMDOperation::PrintDataTo(StringStream* stream) ==>
       HNullarySIMDOperation::PrintDataTo(OStream& os))

Inline the simd128-tag

Implement the simd128-tag inlining for the new JSObject-based
SIMD128 types' layout.

TODO(ningxin): squash into patch-2

Conflicts:
	src/heap/heap.h

Fix invalid native context reference in simd128-tag

The solution is to inline the native context load.

BUG=XWALK-2255

Fix build error for check debug version

Change point
  PrintF ==> os

Fix cctest assumption after introducinng SIMD128 objects.

Include:
cctest/test-heap/GrowAndShrinkNewSpace
cctest/test-mark-compact/NoPromotion
Change JS function names in simd128.js to JS prefix.
Change the name of conversion functions according to spec.
Implement SIMD.float32x4.select API.
Add the 1 argument constructor for SIMD types.
Fix invalid object access in SIMD types after heap mark compact.