Commit Graph

31263 Commits

Author SHA1 Message Date
machenbach
688ae58727 [build] Landmine after ndk update.
Bots broke after https://codereview.chromium.org/2040913002/

BUG=chromium:599327
NOTRY=true
NOPRESUBMIT=true
TBR=bmeurer@chromium.org

Review-Url: https://codereview.chromium.org/2044013002
Cr-Commit-Position: refs/heads/master@{#36771}
2016-06-07 06:41:35 +00:00
yangguo
208d2ce882 Fix presubmit check failure.
NOTRY=true
TBR=bmeurer@chromium.org

Review-Url: https://codereview.chromium.org/2044593003
Cr-Commit-Position: refs/heads/master@{#36770}
2016-06-07 06:38:46 +00:00
Yang Guo
7c3748a9c4 [debug] load correct stack slot for frame details.
R=bmeurer@chromium.org
BUG=v8:5071

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

Cr-Commit-Position: refs/heads/master@{#36769}
2016-06-07 06:25:15 +00:00
bmeurer
dad8ed5342 [turbofan] Only run TypeHintAnalysis when --turbo-type-feedback is on.
There's no point in trying to extract the type hints from the
fullcodegen CompareICs, BinaryOpICs and ToBooleanICs if the
feedback is not consumed (which is guarded by the flag).

R=jarin@chromium.org

Review-Url: https://codereview.chromium.org/2048543002
Cr-Commit-Position: refs/heads/master@{#36768}
2016-06-07 04:36:49 +00:00
v8-autoroll
90d31f4eb5 Update V8 DEPS.
Rolling v8/build to 274d94c4280f7a4bd0e5747ac4a6ac5d1aedad32

Rolling v8/third_party/android_tools to 5b5f2f60b78198eaef25d442ac60f823142a8a6e

TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org

Review-Url: https://codereview.chromium.org/2046883002
Cr-Commit-Position: refs/heads/master@{#36767}
2016-06-07 03:26:39 +00:00
gsathya
9b606523b5 Revert of Promises: Make PromiseSet operation monomorphic (patchset #1 id:1 of https://codereview.chromium.org/2025073002/ )
Reason for revert:
As a side effect of calling PromiseSet from
FulfillPromise, clears the deferred symbol and the
resolve/reject callback symbols. Although this
isn't strictly necessary, not doing this seems to
result in a leak as seen in --

https://bugs.chromium.org/p/chromium/issues/detail?id=617137#c10

Original issue's description:
> Promises: Make PromiseSet operation monomorphic
>
> The PromiseSet operation is called with two types of promises
> 1) A newly created promise object with no properties
> 2) Promise object with callbacks and other properties
>
> PromiseSet is called with the first type of promise (with no
> properties) from multiple call sites. PromiseSet is called with the
> second type of promise object only from FulfillPromise. Furthermore,
> this call only sets the value and status of the promise, the rest of
> the values are reset to UNDEFINED (which isn't necessary).
>
> This patch inlines the calls to set the value and status of the
> promise in FulfillPromise, instead of calling out to PromiseSet.
>
> This patch also reduces the number of symbol lookups, as we only set
> the value and status of the promise, and don't change the callback or
> deferred symbols.
>
> This patch results in a performance improvement of 2.8% over 5 runs in
> the bluebird benchmark.
>
> BUG=v8:5046
>
> Committed: https://crrev.com/df4f8a2b9ee9e474e674301718d19b63650a0ba5
> Cr-Commit-Position: refs/heads/master@{#36688}

TBR=littledan@chromium.org,adamk@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=v8:5046

Review-Url: https://codereview.chromium.org/2047553002
Cr-Commit-Position: refs/heads/master@{#36766}
2016-06-06 22:06:44 +00:00
gsathya
41c875a69e Promises: Short circuit promise resolution procedure
When |ResolvePromise| is resolved with a promise that is
already fulfilled or resolved, we can short circuit the
promise resolution procedure by directly looking up the
result from the promise. We save creating two closures, enqueuing in
the promise queue, and running through PromiseThen.

This patch uses IsPromise to check if the |resolution| object is a native
promise and also checks if |resolution.then| hasn't been monkey
patched.

This patch adds some redundant code from PromiseThen like setting
the promiseHasHandlerSymbol and calling PromiseRevokeReject call,
which would've been taken care of by PromiseThen in the old code path.

This patch results in a 13.8% improvement(over 5 runs) in the bluebird
benchmarks.

BUG=v8:5046

Review-Url: https://codereview.chromium.org/2028253004
Cr-Commit-Position: refs/heads/master@{#36765}
2016-06-06 21:38:39 +00:00
adamk
59785f9e64 Revert of [stubs] Enable TurboFan LoadIC dispatcher stub. (patchset #1 id:1 of https://codereview.chromium.org/2033943005/ )
Reason for revert:
Fails cctest consistently on Linux nosnap debug:

https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/7185
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/7186
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/7187

Original issue's description:
> [stubs] Enable TurboFan LoadIC dispatcher stub.
>
> Committed: https://crrev.com/46a9322e88de037598cfd1090285375d97b11db2
> Cr-Commit-Position: refs/heads/master@{#36760}

TBR=verwaest@chromium.org,ishell@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/2042873002
Cr-Commit-Position: refs/heads/master@{#36764}
2016-06-06 19:10:00 +00:00
hpayer
d61a5c376b [heap] Uncommit unused large object page memory.
As a first step I uncommit the memory on the main thread. Also to measure impact and stability of that optimization. In a follow-up CL, the uncommitting should be moved on the concurrent thread.

BUG=

Review-Url: https://codereview.chromium.org/2032393002
Cr-Commit-Position: refs/heads/master@{#36763}
2016-06-06 17:19:25 +00:00
mtrofin
c0c3a23101 [turbofan] Robust node caching for relocatable int{32|64}
We should use both the int value as well as the reloc info mode for the
key of a relocatable int{32|64}.

BUG=

Review-Url: https://codereview.chromium.org/2039023002
Cr-Commit-Position: refs/heads/master@{#36762}
2016-06-06 16:46:57 +00:00
hlopko
0f93486699 Introduce api for incremental wrapper tracing
This cl sketches an api for incremental wrapper tracing, but still uses the api
in the stop-the-world fashion. Responsibility to maintain a marking deque is
transfered to the embedder. V8 will still collect wrapper internal fields, but
will send them to the embedder after each incremental gc task. Wrappers must be
sent at latest by the time next oilpan gc runs - so blink can keep all
discovered wrappables alive.

The old api will be cleared after this cl and corresponding blink cl land.

Comments are very welcomed :)

LOG=no
BUG=468240

Review-Url: https://codereview.chromium.org/2032213003
Cr-Commit-Position: refs/heads/master@{#36761}
2016-06-06 16:33:59 +00:00
ishell
46a9322e88 [stubs] Enable TurboFan LoadIC dispatcher stub.
Review-Url: https://codereview.chromium.org/2033943005
Cr-Commit-Position: refs/heads/master@{#36760}
2016-06-06 16:18:31 +00:00
balazs.kilvady
941524f895 MIPS: Fix '[debug] implement intuitive semantics for stepping over await call.'
Port 8d90210a1e

BUG=

Review-Url: https://codereview.chromium.org/2045553002
Cr-Commit-Position: refs/heads/master@{#36759}
2016-06-06 16:05:50 +00:00
epertoso
d8c2b8f982 Revert of Provide a tagged allocation top pointer. (patchset #5 id:80001 of https://codereview.chromium.org/2028633002/ )
Reason for revert:
d8 segfaults on some benchmarks on ia32. Investigating.

Original issue's description:
> Provide a tagged allocation top pointer.
>
> Taking over http://crrev.com/1924223002.
>
> BUG=chromium:606711
> LOG=N
>
> Committed: https://crrev.com/f42c9e93c80fdf57e8f92bb87f6ed927d0ae4028
> Committed: https://crrev.com/c99caf307ba3bb1b1cf08bf4172f503754c41341
> Cr-Original-Commit-Position: refs/heads/master@{#36633}
> Cr-Commit-Position: refs/heads/master@{#36742}

TBR=bmeurer@chromium.org,hpayer@chromium.org,machenbach@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:606711

Review-Url: https://codereview.chromium.org/2035413003
Cr-Commit-Position: refs/heads/master@{#36758}
2016-06-06 15:12:35 +00:00
yangguo
d75baead74 [rng] improve RNG seed.
Prior to this change, both 0 and 1 as RNG seed would result in the same
internal state. state0 and state1 cannot both be zero, but murmur hash
maps 0 back to 0.

R=cbruni@chromium.org
BUG=v8:5069

Review-Url: https://codereview.chromium.org/2040953002
Cr-Commit-Position: refs/heads/master@{#36757}
2016-06-06 15:02:04 +00:00
martyn.capewell
95f210d562 [turbofan] ARM64: Faster checked ops for PoT arrays
Improve CheckedLoad and Store bounds checking for arrays with power of two
length.

BUG=

Review-Url: https://codereview.chromium.org/2043663002
Cr-Commit-Position: refs/heads/master@{#36756}
2016-06-06 15:02:03 +00:00
littledan
4cc1331c34 Fix scope flags for default parameters
R=rossberg,adamk
BUG=chromium:616386

Review-Url: https://codereview.chromium.org/2042793002
Cr-Commit-Position: refs/heads/master@{#36755}
2016-06-06 14:31:02 +00:00
ishell
f1ffe31163 [stubs] Introducing LoadICTFStub and LoadICTrampolineTFStub and a switch to enable them instead of respective platform stubs.
The stubs do not increase respective counters as they are in the snapshot and --native-code-counters is off during snapshot creation anyway.

Review-Url: https://codereview.chromium.org/2031753003
Cr-Commit-Position: refs/heads/master@{#36754}
2016-06-06 14:28:24 +00:00
machenbach
2ecd866d9b [gn] Fix gn targets for tools
This switches a few underscores to dashes to match the infra-
side definitions.

BUG=chromium:474921
TBR=vogelheim@chromium.org, jochen@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2045543002
Cr-Commit-Position: refs/heads/master@{#36753}
2016-06-06 14:25:30 +00:00
mstarzinger
3910f6dfea Make type-feedback-vector.h be self-contained.
This allows the header in question to be included without including any
other header files. This is step towards factory.h being self-contained.

R=clemensh@chromium.org

Review-Url: https://codereview.chromium.org/2043723002
Cr-Commit-Position: refs/heads/master@{#36752}
2016-06-06 14:17:49 +00:00
jochen
37394eb3b0 Add a convenience method to get the debugged context
Since the generic GetCallingContext is deprecated, but there's still the
use case for the debugger to get the currently debugged context while in
the debug context, add a convenience API for it.

Note that EventDetails already exposes this context, but the embedder
might not necessarily have the EventDetails around.

R=verwaest@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2040853003
Cr-Commit-Position: refs/heads/master@{#36751}
2016-06-06 14:12:10 +00:00
bjaideep
4fb3051da2 PPC: [debug] implement intuitive semantics for stepping over await call.
Port 8d90210a1e

R=yangguo@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com

BUG=v8:4483
LOG=N

Review-Url: https://codereview.chromium.org/2040803003
Cr-Commit-Position: refs/heads/master@{#36750}
2016-06-06 14:04:10 +00:00
bjaideep
d048ed80c6 PPC: Store Floats as 4 bytes and Double as 8 bytes for codegen
R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com, bjaideep@ca.ibm.com

BUG=

Review-Url: https://codereview.chromium.org/2043553002
Cr-Commit-Position: refs/heads/master@{#36749}
2016-06-06 13:58:56 +00:00
titzer
0b91952913 [asmjs] Validator should reject modules with repeated functions.
R=ahaas@chromium.org,aseemgarg@chromium.org,bradnelson@chromium.org
BUG=chromium:617525

Review-Url: https://codereview.chromium.org/2040983002
Cr-Commit-Position: refs/heads/master@{#36748}
2016-06-06 13:40:42 +00:00
titzer
dc98fabf15 [asmjs] Validator should reject assignments to heap variables in functions.
BUG=chromium:617529

Review-Url: https://codereview.chromium.org/2041843002
Cr-Commit-Position: refs/heads/master@{#36747}
2016-06-06 13:30:13 +00:00
machenbach
87affbc531 [gn] Fix isolate_driver for gn
This makes the isolate-driver script rebase all paths to be
relative to the isolate-file location. This is an assumption
of the go binaries and is needed for batcharchive to work.

In gyp, actions were executed relative to the gyp file that
specified them, while in gn it's relative to the product dir.

BUG=chromium:474921

Review-Url: https://codereview.chromium.org/2039873002
Cr-Commit-Position: refs/heads/master@{#36746}
2016-06-06 13:25:04 +00:00
cbruni
fb9ce9373b [tools] Update callstats.[py|html]
BUG=

Review-Url: https://codereview.chromium.org/2040823003
Cr-Commit-Position: refs/heads/master@{#36745}
2016-06-06 13:08:47 +00:00
cbruni
bc0798ca1a Introduce IsUndefined(Isolate*) and IsTheHole(Isolate*)
Passing in the isolate and pointer compare the instnance against the
corresponding constant is always faster than decoding the instance types.

BUG=

Review-Url: https://codereview.chromium.org/2028983002
Cr-Commit-Position: refs/heads/master@{#36744}
2016-06-06 13:00:49 +00:00
mstarzinger
826627d9fd [turbofan] Make FindFrameStateBefore handle dead paths.
This makes sure {NodeProperties::FindFrameStateBefore} can deal with
effect chains that are marked as dead. This can happen when reducers
looking for frame states run together with other reducers killing some
execution paths within the same reduction phase.

R=bmeurer@chromium.org
TEST=mjsunit/regress/regress-crbug-617567
BUG=chromium:617567,chromium:617224

Review-Url: https://codereview.chromium.org/2041833002
Cr-Commit-Position: refs/heads/master@{#36743}
2016-06-06 12:34:53 +00:00
epertoso
c99caf307b Provide a tagged allocation top pointer.
Taking over http://crrev.com/1924223002.

BUG=chromium:606711
LOG=N

Committed: https://crrev.com/f42c9e93c80fdf57e8f92bb87f6ed927d0ae4028
Review-Url: https://codereview.chromium.org/2028633002
Cr-Original-Commit-Position: refs/heads/master@{#36633}
Cr-Commit-Position: refs/heads/master@{#36742}
2016-06-06 12:31:54 +00:00
machenbach
0e2d92967d Revert of [build] Use sysroot for linux compilation with clang (patchset #5 id:80001 of https://codereview.chromium.org/2028623002/ )
Reason for revert:
sysroot logic breaks "make arm"

Original issue's description:
> [build] Use sysroot for linux compilation with clang
>
> This ports the configuration for using a sysroot from
> chromium's common.gypi.
>
> This is restricted to clang only.
>
> BUG=chromium:474921, chromium:616032
> LOG=y
>
> Committed: https://crrev.com/c47d3c63695d2999752f5fc61ff171f3ff100553
> Cr-Commit-Position: refs/heads/master@{#36729}

TBR=jochen@chromium.org,vogelheim@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:474921, chromium:616032

Review-Url: https://codereview.chromium.org/2042693003
Cr-Commit-Position: refs/heads/master@{#36741}
2016-06-06 11:04:26 +00:00
machenbach
46d8293f50 Revert of [build] Fix default for target_arch (patchset #1 id:1 of https://codereview.chromium.org/2040803005/ )
Reason for revert:
sysroot logic breaks "make arm"

Original issue's description:
> [build] Fix default for target_arch
>
> Fix after https://codereview.chromium.org/2028623002/
>
> BUG=chromium:474921, chromium:616032
> TBR=vogelheim@chromium.org, jochen@chromium.org
> NOTRY=true
>
> Committed: https://crrev.com/9dcb67dd174fefc98f9c964ef54fed8fe6feb224
> Cr-Commit-Position: refs/heads/master@{#36733}

TBR=vogelheim@chromium.org,jochen@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:474921, chromium:616032

Review-Url: https://codereview.chromium.org/2039853002
Cr-Commit-Position: refs/heads/master@{#36740}
2016-06-06 11:01:42 +00:00
titzer
585771f264 [wasm] Move 64-bit call tests into test-run-wasm-64.cc so they also run on 32-bit platforms.
This duplicates some test code (which hopefully can be factored out later), but increases
test coverage.

R=ahaas@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2042773002
Cr-Commit-Position: refs/heads/master@{#36739}
2016-06-06 10:59:04 +00:00
epertoso
36807f064a [crankshaft] Fix DoDeferredMathAbsTaggedHeapNumber overwriting the context with some temporary value.
BUG=v8:5067

Review-Url: https://codereview.chromium.org/2033413002
Cr-Commit-Position: refs/heads/master@{#36738}
2016-06-06 10:11:03 +00:00
v8-autoroll
f3694aca11 Update V8 DEPS.
Rolling v8/build to 9f3f50f2d8b3b751c451c76d9bbf648835256dd5

Rolling v8/third_party/icu to ffa4b6704cf5cc9fec9485731f24a05b2ba94bca

Rolling v8/tools/clang to 27056571d3878fee640fe0e3f1b8ba5e9a7570f6

TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org

Review-Url: https://codereview.chromium.org/2041803002
Cr-Commit-Position: refs/heads/master@{#36737}
2016-06-06 09:50:06 +00:00
bgeron
0d3413f874 Print MachineTypes when using --trace-turbo-graph.
Previously, ZoneVector<MachineType>* printed just as a pointer; now we
print each MachineType in it, separated by commas.

BUG=

Review-Url: https://codereview.chromium.org/2030323002
Cr-Commit-Position: refs/heads/master@{#36736}
2016-06-06 09:47:10 +00:00
mstarzinger
960a87bbd5 [runtime] Remove RUNTIME_ASSERT_HANDLIFIED.
This removes the macro in question form the utility header. In the long
run we want to convert all RUNTIME_ASSERTs to CHECKs, now that runtime
functions are no longer fuzzed directly. This is just a first step.

R=bmeurer@chromium.org
BUG=v8:5066

Review-Url: https://codereview.chromium.org/2038013002
Cr-Commit-Position: refs/heads/master@{#36735}
2016-06-06 09:29:03 +00:00
neis
6ddd8314a5 [compiler] Deal with some old TODOs in the typer.
This is mostly about DCHECKs. Enabling some requires a few
changes to tests that were not careful about types.

BUG=

Review-Url: https://codereview.chromium.org/2033703002
Cr-Commit-Position: refs/heads/master@{#36734}
2016-06-06 09:18:30 +00:00
machenbach
9dcb67dd17 [build] Fix default for target_arch
Fix after https://codereview.chromium.org/2028623002/

BUG=chromium:474921, chromium:616032
TBR=vogelheim@chromium.org, jochen@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2040803005
Cr-Commit-Position: refs/heads/master@{#36733}
2016-06-06 09:12:43 +00:00
neis
e33b7421f7 [test] Fix result regexp in JSTests.json.
R=machenbach@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2035313003
Cr-Commit-Position: refs/heads/master@{#36732}
2016-06-06 09:07:33 +00:00
machenbach
0d65554c05 [gn] Port test262 archiving to gn
This calls the action that archives test262 in gn. In gn
we can't specify an action output outside the product
directory. This works around it with an extra action
stamp file in the product directory, while the archive
remains in the test directory.

We don't want to generate the archive in the product
directory, as some legacy archiving scripts might include
it and it's too large. It should only be included in the
swarming tasks that are going to use it for testing.

BUG=chromium:474921

Review-Url: https://codereview.chromium.org/2034713005
Cr-Commit-Position: refs/heads/master@{#36731}
2016-06-06 08:56:58 +00:00
machenbach
8ee22392f8 [build] Roll android_tools to 04c2c06
This ports:
https://codereview.chromium.org/1991343002

BUG=chromium:599327

Review-Url: https://codereview.chromium.org/2040913002
Cr-Commit-Position: refs/heads/master@{#36730}
2016-06-06 08:48:59 +00:00
machenbach
c47d3c6369 [build] Use sysroot for linux compilation with clang
This ports the configuration for using a sysroot from
chromium's common.gypi.

This is restricted to clang only.

BUG=chromium:474921, chromium:616032
LOG=y

Review-Url: https://codereview.chromium.org/2028623002
Cr-Commit-Position: refs/heads/master@{#36729}
2016-06-06 08:41:03 +00:00
zhengxing.li
1763a9e5f3 X87: [debug] implement intuitive semantics for stepping over await call.
port 8d90210a1e (r36718)

  original commit message:

BUG=

Review-Url: https://codereview.chromium.org/2039743002
Cr-Commit-Position: refs/heads/master@{#36728}
2016-06-06 03:09:00 +00:00
zhengxing.li
973823e454 X87: [builtins] Migrate Math.log to TurboFan.
port f2da19fe39 (r36703)

  original commit message:
  Introduce a dedicated Float64Log machine operator, that is either
  implemented by a direct C call or by platform specific code, i.e.
  using the FPU on x64 and ia32.

  This operator is used to implement Math.log as a proper TurboFan
  builtin on top of the CodeStubAssembler.

  Also introduce a NumberLog simplified operator on top of Float64Log
  and use that for the fast inline path of Math.log inside TurboFan
  optimized code.

BUG=

Review-Url: https://codereview.chromium.org/2034393002
Cr-Commit-Position: refs/heads/master@{#36727}
2016-06-06 03:01:11 +00:00
oth
ecd4086cf0 [interpreter] Faster and fewer flushes in register optimizer.
This change requires a single pass over the register set during
bytecode pipeline flushes.

A few bytecode tests are updated too because the order of register
flushes is different.

BUG=v8:4280
LOG=N

Review-Url: https://codereview.chromium.org/2033013002
Cr-Commit-Position: refs/heads/master@{#36726}
2016-06-04 09:48:06 +00:00
brucedawson
ac03c63c28 Add standard Windows manifest to five v8 executables
Many executables are missing embedded manifest files when built with gn.
This causes OS compatibility information to be omitted which can lead
to strange behavior. This change adds a manifest to:

  v8_simple_json_fuzzer.exe
  v8_simple_parser_fuzzer.exe
  v8_simple_regexp_fuzzer.exe
  v8_simple_wasm_asmjs_fuzzer.exe
  v8_simple_wasm_fuzzer.exe

BUG=chromium:602505

Review-Url: https://codereview.chromium.org/2040623003
Cr-Commit-Position: refs/heads/master@{#36725}
2016-06-04 06:29:46 +00:00
jyan
00c158a65c S390: [builtins] Migrate Math.log to TurboFan.
Port f2da19fe39

Original commit message:

    Introduce a dedicated Float64Log machine operator, that is either
    implemented by a direct C call or by platform specific code, i.e.
    using the FPU on x64 and ia32.

    This operator is used to implement Math.log as a proper TurboFan
    builtin on top of the CodeStubAssembler.

    Also introduce a NumberLog simplified operator on top of Float64Log
    and use that for the fast inline path of Math.log inside TurboFan
    optimized code.

R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com, bjaideep@ca.ibm.com
BUG=

Review-Url: https://codereview.chromium.org/2033353003
Cr-Commit-Position: refs/heads/master@{#36724}
2016-06-04 02:24:54 +00:00
adamk
4cc2a73185 [cleanup] Inline HAS_INDEX macro as it's trivially the 'in' operator
R=cbruni@chromium.org

Review-Url: https://codereview.chromium.org/2037153002
Cr-Commit-Position: refs/heads/master@{#36723}
2016-06-03 20:09:20 +00:00
bmeurer
e3c3be36ee [json] Repair JSON.parse regression with non-sequential strings.
Make sure to flatten strings first in JSON.parse() builtins, otherwise
we always hit the slow path for non-sequential strings, i.e. for cons
strings.

Also don't create any arguments adaptor frames for JSON.parse() as the
C++ builtin can handle any number of inputs properly.

R=yangguo@chromium.org

Review-Url: https://codereview.chromium.org/2039553002
Cr-Commit-Position: refs/heads/master@{#36722}
2016-06-03 18:42:29 +00:00