platform/upstream/v8.git
9 years agoProbe same-isolate compilation cache before deserializing.
yangguo [Mon, 26 Jan 2015 10:56:53 +0000 (02:56 -0800)]
Probe same-isolate compilation cache before deserializing.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26266}

9 years ago[turbofan] make register allocator verifier independent of phi assignment
dcarney [Mon, 26 Jan 2015 10:40:16 +0000 (02:40 -0800)]
[turbofan] make register allocator verifier independent of phi assignment

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

Cr-Commit-Position: refs/heads/master@{#26265}

9 years ago[turbofan] Don't embed pointer to builtins object in generic lowering.
bmeurer [Mon, 26 Jan 2015 10:20:31 +0000 (02:20 -0800)]
[turbofan] Don't embed pointer to builtins object in generic lowering.

Accessing the builtins object this way prevents sharing of code across
native contexts; instead we now load the builtin from the context of the
JS operation instead.

R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26264}

9 years ago[turbofan] Add new JSIntrinsicsLowering reducer.
bmeurer [Mon, 26 Jan 2015 09:05:47 +0000 (01:05 -0800)]
[turbofan] Add new JSIntrinsicsLowering reducer.

The lowering of intrinsics is therefore now decoupled from the general
inlining logic.

TEST=cctest,unittests
R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26263}

9 years agoFix regexp=interpreted build wrt zone related changes.
yangguo [Mon, 26 Jan 2015 08:44:23 +0000 (00:44 -0800)]
Fix regexp=interpreted build wrt zone related changes.

Broke after c7b09aac317dd810d29b82061973199b80363b65

TBR=danno@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26262}

9 years agoFixed Hydrogen environment handling for mul-i on ARM and ARM64.
svenpanne [Mon, 26 Jan 2015 08:35:45 +0000 (00:35 -0800)]
Fixed Hydrogen environment handling for mul-i on ARM and ARM64.

The whole logic in DoMul makes me cry, so I made only the minimal
change to fix the issue...

BUG=v8:451322
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#26261}

9 years agoUpdate V8 DEPS.
v8-autoroll [Sun, 25 Jan 2015 04:22:50 +0000 (20:22 -0800)]
Update V8 DEPS.

Rolling v8/tools/clang to 853a3150b369e5dcd62d7429998bfafe8158e16e

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26260}

9 years agoUpdate V8 DEPS.
v8-autoroll [Sat, 24 Jan 2015 04:31:17 +0000 (20:31 -0800)]
Update V8 DEPS.

Rolling v8/build/gyp to b28bd7ddd1438c98f93a8e5383b7daceb572a3fb

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26259}

9 years agoRemove unused VariableDeclarationContext value: kBlockElement
adamk [Fri, 23 Jan 2015 21:35:10 +0000 (13:35 -0800)]
Remove unused VariableDeclarationContext value: kBlockElement

R=arv@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26258}

9 years agoMIPS64: Remove the dependency of Zone on Isolate.
balazs.kilvady [Fri, 23 Jan 2015 19:34:39 +0000 (11:34 -0800)]
MIPS64: Remove the dependency of Zone on Isolate.

Port c7b09aac317dd810d29b82061973199b80363b65

Original commit message:
Along the way:
- Thread isolate parameter explicitly through code that used to
  rely on getting it from the zone.
- Canonicalize the parameter position of isolate and zone for
  affected code
- Change Hydrogen New<> instruction templates to automatically
  pass isolate

LOG=N
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26257}

9 years agoDistinquish TestWithIsolateAndZone from TestWithZone
danno [Fri, 23 Jan 2015 16:29:50 +0000 (08:29 -0800)]
Distinquish TestWithIsolateAndZone from TestWithZone

Allows unit tests that just need a zone and no isolate to avoid the overhead of
creating one.

R=mstarzinger@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26256}

9 years agoFix version and changelog pushing.
machenbach [Fri, 23 Jan 2015 15:30:17 +0000 (07:30 -0800)]
Fix version and changelog pushing.

BUG=chromium:451357
LOG=n
TBR=tandrii@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26255}

9 years agoRevert "Make version generation robust to other user-defined tags."
machenbach [Fri, 23 Jan 2015 15:29:05 +0000 (07:29 -0800)]
Revert "Make version generation robust to other user-defined tags."

This reverts commit 9ae1c2382a35147d7f4aeba3ecd2030123f0d5fb.

BUG=chromium:446166
LOG=n
NOTRY=true
TBR=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26254}

9 years agoES6 Array.prototype.toString falls back on Object.prototype.toString if method "join...
caitpotter88 [Fri, 23 Jan 2015 15:21:29 +0000 (07:21 -0800)]
ES6 Array.prototype.toString falls back on Object.prototype.toString if method "join" is not callable.

BUG=v8:3793
LOG=Y
R=dslomov@chromium.org, arv@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26253}

9 years agoRemove the dependency of Zone on Isolate
danno [Fri, 23 Jan 2015 15:19:34 +0000 (07:19 -0800)]
Remove the dependency of Zone on Isolate

Along the way:
- Thread isolate parameter explicitly through code that used to
  rely on getting it from the zone.
- Canonicalize the parameter position of isolate and zone for
  affected code
- Change Hydrogen New<> instruction templates to automatically
  pass isolate

R=mstarzinger@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26252}

9 years agoPush version and changelog as a separate commit.
machenbach [Fri, 23 Jan 2015 14:58:49 +0000 (06:58 -0800)]
Push version and changelog as a separate commit.

BUG=chromium:451357
LOG=n
TBR=tandrii@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26251}

9 years agoScript streaming: Test that streaming <-> harmony scopes interaction is correct.
marja [Fri, 23 Jan 2015 14:41:00 +0000 (06:41 -0800)]
Script streaming: Test that streaming <-> harmony scopes interaction is correct.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26250}

9 years agoMake TestSetJitCodeEventHandler more resilient.
mstarzinger [Fri, 23 Jan 2015 12:12:12 +0000 (04:12 -0800)]
Make TestSetJitCodeEventHandler more resilient.

R=ishell@chromium.org
TEST=cctest/test-api/SetJitCodeEventHandler

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

Cr-Commit-Position: refs/heads/master@{#26249}

9 years agoMIPS: convert compile-time checkable DCHECKs to STATIC_ASSERTs.
balazs.kilvady [Fri, 23 Jan 2015 12:00:04 +0000 (04:00 -0800)]
MIPS: convert compile-time checkable DCHECKs to STATIC_ASSERTs.

Port cc6c373e2a25ae5ab54ea0ff042230364ec1a21b

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26248}

9 years agoAlways adjust amount of external memory when change is reported.
hpayer [Fri, 23 Jan 2015 11:37:33 +0000 (03:37 -0800)]
Always adjust amount of external memory when change is reported.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26247}

9 years agoSupport old and new weak handle API
erikcorry [Fri, 23 Jan 2015 11:28:35 +0000 (03:28 -0800)]
Support old and new weak handle API

R=dcarney@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26246}

9 years agoReland "Call directly to c callbacks in Invoke instead of transitioning to js and...
dcarney [Fri, 23 Jan 2015 11:22:05 +0000 (03:22 -0800)]
Reland "Call directly to c callbacks in Invoke instead of transitioning to js and back out"

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26245}

9 years agoRemove version generation approach.
machenbach [Fri, 23 Jan 2015 10:45:24 +0000 (02:45 -0800)]
Remove version generation approach.

Revert "Partially reland Auto-generate v8 version based on tags."

This reverts commit 0707afc863e14ad216fa2157f41fc35f86bd64b2.

Revert "Ensure tags are fetched when generating the V8 version."

This reverts commit ea6831e9de62ceade14b7baeb7d57c74a30a1f38.

Revert "Restrict tag-update for version generation to cached git repos."

This reverts commit c6641e138bb4a81b47f70e62bb9113c87b590a6f.

BUG=chromium:446166
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26244}

9 years agoCalculate new version based on latest tag when pushing.
machenbach [Fri, 23 Jan 2015 10:30:32 +0000 (02:30 -0800)]
Calculate new version based on latest tag when pushing.

BUG=chromium:451357
TBR=tandrii@chromium.org
LOG=n
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26243}

9 years agocleanup check for compatible receiver of api callback
dcarney [Fri, 23 Jan 2015 09:57:23 +0000 (01:57 -0800)]
cleanup check for compatible receiver of api callback

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26242}

9 years ago[turbofan] Move GetCommonDominator to BasicBlock.
bmeurer [Fri, 23 Jan 2015 09:55:33 +0000 (01:55 -0800)]
[turbofan] Move GetCommonDominator to BasicBlock.

Also add some unittests for the dominator stuff.

R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26241}

9 years ago[turbofan] Remove outdated forward declarations.
bmeurer [Fri, 23 Jan 2015 09:23:19 +0000 (01:23 -0800)]
[turbofan] Remove outdated forward declarations.

R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26240}

9 years ago[x86] Blacklist AVX for Windows versions before 6.1 (Windows 7).
bmeurer [Fri, 23 Jan 2015 09:16:32 +0000 (01:16 -0800)]
[x86] Blacklist AVX for Windows versions before 6.1 (Windows 7).

BUG=v8:3846
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#26239}

9 years agoUse more conservative average promotion ratio for initial heap size.
hpayer [Fri, 23 Jan 2015 09:15:24 +0000 (01:15 -0800)]
Use more conservative average promotion ratio for initial heap size.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26238}

9 years agoCHECK that FunctionTemplates are not modified after first instantiation
dcarney [Fri, 23 Jan 2015 09:07:11 +0000 (01:07 -0800)]
CHECK that FunctionTemplates are not modified after first instantiation

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26237}

9 years agoRevert of Call directly to c callbacks in Invoke instead of transitioning to js and...
dcarney [Fri, 23 Jan 2015 08:54:16 +0000 (00:54 -0800)]
Revert of Call directly to c callbacks in Invoke instead of transitioning to js and back out. (patchset #9 id:150001 of https://codereview.chromium.org/864273002/)

Reason for revert:
threading4 flakiness

Original issue's description:
> Call directly to c callbacks in Invoke instead of transitioning to js and back out.
>
> BUG=
>
> Committed: https://crrev.com/ce457e2b596c3ccf5bf454eeed0969f3f3efd174
> Cr-Commit-Position: refs/heads/master@{#26231}

TBR=verwaest@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26236}

9 years ago[x86] Use AVX in Crankshaft when available.
Benedikt Meurer [Fri, 23 Jan 2015 08:25:15 +0000 (09:25 +0100)]
[x86] Use AVX in Crankshaft when available.

R=verwaest@chromium.org

Committed: https://crrev.com/622be8f71e70b6ece4ea6a89bcfa1bc4be5e70c1
Cr-Commit-Position: refs/heads/master@{#26159}

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

Cr-Commit-Position: refs/heads/master@{#26235}

9 years agoFix run-time ARMv6 detection.
Ben Noordhuis [Fri, 23 Jan 2015 06:00:37 +0000 (07:00 +0100)]
Fix run-time ARMv6 detection.

BUG=v8:3844
LOG=y
R=bmeurer@chromium.org

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

Patch from Ben Noordhuis <info@bnoordhuis.nl>.

Cr-Commit-Position: refs/heads/master@{#26234}

9 years agoUpdate V8 DEPS.
v8-autoroll [Fri, 23 Jan 2015 05:47:14 +0000 (21:47 -0800)]
Update V8 DEPS.

Rolling v8/tools/clang to de83a52aa5c5578519e244099ee755726e430253

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26233}

9 years agoMIPS: new classes: change semantics of super(...) call and add new.target to construc...
akos.palfi [Fri, 23 Jan 2015 05:46:04 +0000 (21:46 -0800)]
MIPS: new classes: change semantics of super(...) call and add new.target to construct stub.

Port 22ce08ade63a9c4f28225db11a5b5d2726c5a8e7

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26232}

9 years agoCall directly to c callbacks in Invoke instead of transitioning to js and back out.
dcarney [Thu, 22 Jan 2015 21:37:06 +0000 (13:37 -0800)]
Call directly to c callbacks in Invoke instead of transitioning to js and back out.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26231}

9 years agoRevert of [x86] Use AVX in Crankshaft when available. (patchset #1 id:1 of https...
machenbach [Thu, 22 Jan 2015 21:27:35 +0000 (13:27 -0800)]
Revert of [x86] Use AVX in Crankshaft when available. (patchset #1 id:1 of https://codereview.chromium.org/860003002/)

Reason for revert:
Breaks chromium vista and XP browser tests:
http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_vista_rel_ng/builds/23

Original issue's description:
> [x86] Use AVX in Crankshaft when available.
>
> R=verwaest@chromium.org
>
> Committed: https://crrev.com/622be8f71e70b6ece4ea6a89bcfa1bc4be5e70c1
> Cr-Commit-Position: refs/heads/master@{#26159}

TBR=verwaest@chromium.org,bmeurer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26230}

9 years agoAvoid unintentional optimization of hot builtins by TurboFan.
mstarzinger [Thu, 22 Jan 2015 18:52:01 +0000 (10:52 -0800)]
Avoid unintentional optimization of hot builtins by TurboFan.

R=titzer@chromium.org
TEST=mjsunit/regress/regress-crbug-451016
BUG=chromium:451016
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26229}

9 years agoEnable inlining test that now works with control reducer.
mstarzinger [Thu, 22 Jan 2015 18:48:48 +0000 (10:48 -0800)]
Enable inlining test that now works with control reducer.

R=titzer@chromium.org
TEST=cctest/test-run-inlining/InlineLoopGuardedEmpty

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

Cr-Commit-Position: refs/heads/master@{#26228}

9 years agonew classes: change semantics of super(...) call and add new.target to construct...
dslomov [Thu, 22 Jan 2015 18:39:34 +0000 (10:39 -0800)]
new classes: change semantics of super(...) call and add new.target to construct stub.

R=arv@chromium.org,rossberg@chromium.org
BUG=v8:3834
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26227}

9 years agoImplement AggregatableHistogramTimer and use it to measure how much time
vogelheim [Thu, 22 Jan 2015 18:38:19 +0000 (10:38 -0800)]
Implement AggregatableHistogramTimer and use it to measure how much time
of running a script is really spent in compilation. That is, sum up the
total time spent compiling (parsing + compile proper) within a run call
as seen through the API.

@jochen: So many questions:
- Is it ok to re-use V8.CompileLazy?
  This measures something a little different.
- clang-format does funny things to the huge macro definitions.
  I accepted clang-format changes for all code, but reverted for
  the #define orgies in counters.h. ok?
- Am I measuring the right thing. That is, are Aggregat[ing|ed]TimerScope
  in the right place?

I'll fiddle a bit more with this to see if it does the right thing. Would
be happy if you could still review now-ish.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26226}

9 years agoTreat pointers in optimized code as strong before all weak dependencies are registered.
ulan [Thu, 22 Jan 2015 15:30:48 +0000 (07:30 -0800)]
Treat pointers in optimized code as strong before all weak dependencies are registered.

This prevents GC from observing code objects with out-of-sync weak dependencies.

BUG=v8:3823
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26225}

9 years agoMake version generation robust to other user-defined tags.
machenbach [Thu, 22 Jan 2015 15:06:50 +0000 (07:06 -0800)]
Make version generation robust to other user-defined tags.

BUG=chromium:446166
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26224}

9 years agoMIPS: Fix rare random crashes in keyed store if element transition is needed.
Dusan Milosavljevic [Thu, 22 Jan 2015 15:04:29 +0000 (16:04 +0100)]
MIPS: Fix rare random crashes in keyed store if element transition is needed.

TEST=mjsunit/sin-cos
BUG=
R=balazs.kilvady@imgtec.com

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

Cr-Commit-Position: refs/heads/master@{#26223}

9 years agoConvert compiler cctest to unit tests, part 1
danno [Thu, 22 Jan 2015 14:16:41 +0000 (06:16 -0800)]
Convert compiler cctest to unit tests, part 1

R=bmeurer@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26222}

9 years ago[turbofan] Add STYLE document.
Benedikt Meurer [Thu, 22 Jan 2015 13:47:03 +0000 (14:47 +0100)]
[turbofan] Add STYLE document.

R=titzer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26221}

9 years ago[turbofan] Cleanup Schedule and related classes.
bmeurer [Thu, 22 Jan 2015 13:01:02 +0000 (05:01 -0800)]
[turbofan] Cleanup Schedule and related classes.

- Move unit tests to schedule-unittests.cc.
- Remove pre-C++11 cruft.
- Fix some include weirdness.

R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26220}

9 years agoSupport concatenating with zero-size arrays with DICTIONARY_ELEMENTS in Runtime_Array...
ishell [Thu, 22 Jan 2015 11:15:15 +0000 (03:15 -0800)]
Support concatenating with zero-size arrays with DICTIONARY_ELEMENTS in Runtime_ArrayConcat.

BUG=chromium:450895
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#26219}

9 years agoAdd missing BailoutId and FrameState to with statements.
mstarzinger [Thu, 22 Jan 2015 10:57:30 +0000 (02:57 -0800)]
Add missing BailoutId and FrameState to with statements.

R=bmeurer@chromium.org
TEST=mjsunit/regress/regress-crbug-450642
BUG=chromium:450642
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26218}

9 years agoRemoved bogus threading test to make TSAN happy.
svenpanne [Thu, 22 Jan 2015 10:23:49 +0000 (02:23 -0800)]
Removed bogus threading test to make TSAN happy.

TSAN hits an internal assertion on a self-join, and the test is not
really that useful, so let's just remove it.

BUG=https://code.google.com/p/thread-sanitizer/issues/detail?id=88
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26217}

9 years agoRevert of Change test expectations for test-types/Maybe. (patchset #1 id:1 of https...
yangguo [Thu, 22 Jan 2015 09:43:41 +0000 (01:43 -0800)]
Revert of Change test expectations for test-types/Maybe. (patchset #1 id:1 of https://codereview.chromium.org/862353002/)

Reason for revert:
Patch causing the failure has been reverted.

Original issue's description:
> Change test expectations for test-types/Maybe.
>
> TBR=rossberg@chromium.org
> BUG=v8:3840
> LOG=N
>
> Committed: https://crrev.com/ebab2f12e9a4b421d8467bcf28280f8f64700cef
> Cr-Commit-Position: refs/heads/master@{#26212}

TBR=rossberg@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3840

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

Cr-Commit-Position: refs/heads/master@{#26216}

9 years agoTry to fix AOSP builder.
bmeurer [Thu, 22 Jan 2015 09:30:18 +0000 (01:30 -0800)]
Try to fix AOSP builder.

NOTREECHECKS=true

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

Cr-Commit-Position: refs/heads/master@{#26215}

9 years agoFix typo in build.gn.
machenbach [Thu, 22 Jan 2015 09:03:03 +0000 (01:03 -0800)]
Fix typo in build.gn.

TBR=jochen@chromium.org
NOTRY=true
NOTREECHECKS=true

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

Cr-Commit-Position: refs/heads/master@{#26214}

9 years agoDouble field values need sNaN -> qNaN canonicalization.
bmeurer [Thu, 22 Jan 2015 08:36:01 +0000 (00:36 -0800)]
Double field values need sNaN -> qNaN canonicalization.

Also fix mjsunit/regress/regress-undefined-nan to ensure that we are
testing transfer via xmm registers by forcing the transfer to be in an
optimized function.

BUG=v8:3839
LOG=n
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26213}

9 years agoChange test expectations for test-types/Maybe.
Yang Guo [Thu, 22 Jan 2015 08:23:05 +0000 (09:23 +0100)]
Change test expectations for test-types/Maybe.

TBR=rossberg@chromium.org
BUG=v8:3840
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26212}

9 years agoFix ninja build with clang=1.
bmeurer [Thu, 22 Jan 2015 07:21:35 +0000 (23:21 -0800)]
Fix ninja build with clang=1.

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

Cr-Commit-Position: refs/heads/master@{#26211}

9 years agoUse FunctionLiteral for class constructor
arv [Thu, 22 Jan 2015 06:17:11 +0000 (22:17 -0800)]
Use FunctionLiteral for class constructor

Motivation: Code cleanup

BUG=None
LOG=N
R=adamk

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

Cr-Commit-Position: refs/heads/master@{#26210}

9 years agoUpdate V8 DEPS.
v8-autoroll [Thu, 22 Jan 2015 06:16:03 +0000 (22:16 -0800)]
Update V8 DEPS.

Rolling v8/build/gyp to adb7d24b9fc166f01ab2da50478556b518a9218f

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26209}

9 years agoMIPS: Use signaling NaN for holes in fixed double arrays.
paul.lind [Thu, 22 Jan 2015 06:14:52 +0000 (22:14 -0800)]
MIPS: Use signaling NaN for holes in fixed double arrays.

Port 9eace97bbaab72962c0fda62e5f9011a10604d0d
Port 5d641ec969e376ee7fa258b41b2988c9e75c4bc8

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26208}

9 years agoRevert of Steps towards unification of number bitset and range types. (patchset ...
bmeurer [Thu, 22 Jan 2015 05:33:23 +0000 (21:33 -0800)]
Revert of Steps towards unification of number bitset and range types. (patchset #4 id:60001 of https://codereview.chromium.org/837723006/)

Reason for revert:
Breaks test-types/Maybe, i.e.

out/Release/cctest --random-seed=-707413401 test-types/Maybe

started failing afterwards

Original issue's description:
> Steps towards unification of number bitset and range types.
>
> - New invariant on union types: if the union has a range then the number
>   bits in the bitset must be cleared.
>
> - Various tweaks in intersection and union to satisfy the invariant.
>
> - Exposed and used representation bits in range types (and the Limits
>   helper class).
>
> - Implemented Glb for ranges so that the Is predicate handles
>   ranges correctly.
>
> - Change typer weakening so that it does not rely on GetRange.
>   However, the code still seems to be a bit fragile.
>
> - Removed the Smi types from the type system core, instead introduced
>   Signed31, Unsigned30 and created constructors for Small(Un)Signed
>   that point to the right type for the architecture.
>
> - Punched a hole in the config to be able to get to the isolate so
>   that it is possible to allocate heap numbers for newly created
>   ranges.
>
> Patch by jarin@chromium.prg, original review here:
> https://codereview.chromium.org/795713003/
>
> TBR=jarin@chromium.org
> BUG=
>
> Committed: https://crrev.com/2764fd8d1a266a9136c987c2483492113b0c8d80
> Cr-Commit-Position: refs/heads/master@{#26197}

TBR=jkummerow@chromium.org,rossberg@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26207}

9 years agoReland Make clang the default on linux.
machenbach [Wed, 21 Jan 2015 22:24:53 +0000 (14:24 -0800)]
Reland Make clang the default on linux.

TBR=jochen@chromium.org,jkummerow@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26206}

9 years agoRevert of Reland Make clang the default on linux. (patchset #3 id:40001 of https...
machenbach [Wed, 21 Jan 2015 20:38:20 +0000 (12:38 -0800)]
Revert of Reland Make clang the default on linux. (patchset #3 id:40001 of https://codereview.chromium.org/861223002/)

Reason for revert:
Still missing these builders:
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm%20-%20sim
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm%20-%20sim%20-%20debug
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20full%20debug

Original issue's description:
> Reland Make clang the default on linux.
>
> BUG=
>
> Committed: https://crrev.com/72ef6843b0aff68e519a8f26e7d2f7dd87b4712c
> Cr-Commit-Position: refs/heads/master@{#26204}

TBR=jochen@chromium.org,jkummerow@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26205}

9 years agoReland Make clang the default on linux.
machenbach [Wed, 21 Jan 2015 19:32:04 +0000 (11:32 -0800)]
Reland Make clang the default on linux.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26204}

9 years ago[arm] Skip mozilla/js1_5/extensions/regress-355497 in simulator.
bmeurer [Wed, 21 Jan 2015 19:11:34 +0000 (11:11 -0800)]
[arm] Skip mozilla/js1_5/extensions/regress-355497 in simulator.

TBR=machenbach@chromium.org
BUG=v8:3837
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26203}

9 years agoAdd missing FrameState to harmony class literals.
mstarzinger [Wed, 21 Jan 2015 18:46:47 +0000 (10:46 -0800)]
Add missing FrameState to harmony class literals.

R=bmeurer@chromium.org
TEST=mjsunit/harmony/classes

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

Cr-Commit-Position: refs/heads/master@{#26202}

9 years agoWhitespace change to test slave shuffle.
Michael Achenbach [Wed, 21 Jan 2015 18:40:32 +0000 (19:40 +0100)]
Whitespace change to test slave shuffle.

Cr-Commit-Position: refs/heads/master@{#26201}

9 years agoAdd missing FrameState for Runtime_GetPrototype.
mstarzinger [Wed, 21 Jan 2015 17:17:39 +0000 (09:17 -0800)]
Add missing FrameState for Runtime_GetPrototype.

R=titzer@chromium.org
TEST=cctest/test-api

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

Cr-Commit-Position: refs/heads/master@{#26200}

9 years agoAdd missing FrameState for Runtime_DeliverObservationChangeRecords.
mstarzinger [Wed, 21 Jan 2015 16:07:52 +0000 (08:07 -0800)]
Add missing FrameState for Runtime_DeliverObservationChangeRecords.

R=bmeurer@chromium.org
TEST=cctest,mjsunit/es7/object-observe-debug-event

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

Cr-Commit-Position: refs/heads/master@{#26199}

9 years agoProperly configure goma.
machenbach [Wed, 21 Jan 2015 15:30:18 +0000 (07:30 -0800)]
Properly configure goma.

Everything is c/p from common.gypi.

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

Cr-Commit-Position: refs/heads/master@{#26198}

9 years agoSteps towards unification of number bitset and range types.
rossberg [Wed, 21 Jan 2015 15:29:10 +0000 (07:29 -0800)]
Steps towards unification of number bitset and range types.

- New invariant on union types: if the union has a range then the number
  bits in the bitset must be cleared.

- Various tweaks in intersection and union to satisfy the invariant.

- Exposed and used representation bits in range types (and the Limits
  helper class).

- Implemented Glb for ranges so that the Is predicate handles
  ranges correctly.

- Change typer weakening so that it does not rely on GetRange.
  However, the code still seems to be a bit fragile.

- Removed the Smi types from the type system core, instead introduced
  Signed31, Unsigned30 and created constructors for Small(Un)Signed
  that point to the right type for the architecture.

- Punched a hole in the config to be able to get to the isolate so
  that it is possible to allocate heap numbers for newly created
  ranges.

Patch by jarin@chromium.prg, original review here:
https://codereview.chromium.org/795713003/

TBR=jarin@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26197}

9 years ago[arm] Fix simulator stack size for mozilla/js1_5/extensions/regress-355497.
Benedikt Meurer [Wed, 21 Jan 2015 15:25:55 +0000 (16:25 +0100)]
[arm] Fix simulator stack size for mozilla/js1_5/extensions/regress-355497.

TBR=yangguo@chromium.org
BUG=v8:3837
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26196}

9 years agoRemove deprecated v8::base::OS::nan_value().
bmeurer [Wed, 21 Jan 2015 14:38:49 +0000 (06:38 -0800)]
Remove deprecated v8::base::OS::nan_value().

Use std::numeric_limits<double>::quiet_NaN() and
std::numeric_limits<float>::quiet_NaN() instead.

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

Cr-Commit-Position: refs/heads/master@{#26195}

9 years agoAdd missing FrameState to JSTypedLoweringTester.
mstarzinger [Wed, 21 Jan 2015 14:33:44 +0000 (06:33 -0800)]
Add missing FrameState to JSTypedLoweringTester.

R=titzer@chromium.org
TEST=cctest/test-js-typed-lowering/JSToNumberOfNumberOrOtherPrimitive

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

Cr-Commit-Position: refs/heads/master@{#26194}

9 years agoDrop TODO that no longer applies after refactoring.
mstarzinger [Wed, 21 Jan 2015 14:24:06 +0000 (06:24 -0800)]
Drop TODO that no longer applies after refactoring.

R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26193}

9 years agoEnable test coverage for test coverage.
mstarzinger [Wed, 21 Jan 2015 14:07:07 +0000 (06:07 -0800)]
Enable test coverage for test coverage.

R=titzer@chromium.org
TEST=mjsunit/compiler/opt-next-call-turbo

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

Cr-Commit-Position: refs/heads/master@{#26192}

9 years ago[turbofan] Fix register allocator verifier to allow 1-input phis.
titzer [Wed, 21 Jan 2015 13:50:24 +0000 (05:50 -0800)]
[turbofan] Fix register allocator verifier to allow 1-input phis.

R=dcarney@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26191}

9 years agoadd some tests for HandleApiCall builtin
dcarney [Wed, 21 Jan 2015 13:42:35 +0000 (05:42 -0800)]
add some tests for HandleApiCall builtin

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26190}

9 years agoAdd a pretty printer to improve the error message non-function calls
verwaest [Wed, 21 Jan 2015 13:40:32 +0000 (05:40 -0800)]
Add a pretty printer to improve the error message non-function calls

BUG=259443
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#26189}

9 years agoKeyedStoreIC: support non-generic handling of Symbol keys
jkummerow [Wed, 21 Jan 2015 13:39:14 +0000 (05:39 -0800)]
KeyedStoreIC: support non-generic handling of Symbol keys

BUG=chromium:450475
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26188}

9 years agoconvert compile-time checkable DCHECKs to STATIC_ASSERTs
mostynb [Wed, 21 Jan 2015 13:38:06 +0000 (05:38 -0800)]
convert compile-time checkable DCHECKs to STATIC_ASSERTs

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

Cr-Commit-Position: refs/heads/master@{#26187}

9 years agoRestrict tag-update for version generation to cached git repos.
machenbach [Wed, 21 Jan 2015 13:02:23 +0000 (05:02 -0800)]
Restrict tag-update for version generation to cached git repos.

Otherwise it's impossible to compile v8 without internet
connection.

BUG=chromium:446166
LOG=n
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26186}

9 years ago[arm] Fix sNaN quietening in the ARM simulator on IA-32.
Benedikt Meurer [Wed, 21 Jan 2015 13:00:57 +0000 (14:00 +0100)]
[arm] Fix sNaN quietening in the ARM simulator on IA-32.

TEST=msjunit/regress/regress-undefined-nan2
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26185}

9 years ago[arm] Work-around sNaN issue in ARM simulator builds on IA-32.
Benedikt Meurer [Wed, 21 Jan 2015 10:28:58 +0000 (11:28 +0100)]
[arm] Work-around sNaN issue in ARM simulator builds on IA-32.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26184}

9 years agoWhitespace CL to trigger bots.
Michael Achenbach [Wed, 21 Jan 2015 10:08:38 +0000 (11:08 +0100)]
Whitespace CL to trigger bots.

Cr-Commit-Position: refs/heads/master@{#26183}

9 years agoRemove presubmit bot from 'git cl try'.
machenbach [Wed, 21 Jan 2015 08:56:11 +0000 (00:56 -0800)]
Remove presubmit bot from 'git cl try'.

'git cl try' is often executed before an lgtm was given - in
this case the bot always fails.

TBR=jochen@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26182}

9 years agoRemove implicit uint8_t to char cast in string replace.
yangguo [Wed, 21 Jan 2015 08:55:05 +0000 (00:55 -0800)]
Remove implicit uint8_t to char cast in string replace.

R=jkummerow@chromium.org
BUG=446196
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#26181}

9 years agoUse signaling NaN for holes in fixed double arrays.
Benedikt Meurer [Wed, 21 Jan 2015 08:52:00 +0000 (09:52 +0100)]
Use signaling NaN for holes in fixed double arrays.

TEST=mjsunit,cctest,unittests
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26180}

9 years agoX87: Fix issue with __proto__ when using ES6 object literals.
cdai2 [Wed, 21 Jan 2015 08:30:14 +0000 (16:30 +0800)]
X87: Fix issue with __proto__ when using ES6 object literals.

port bc3b2960e3b7abc16440717f289a430aef904cb1 (r26172).

original commit message:
  Fix issue with __proto__ when using ES6 object literals

  It should be possible to create a concise method with the name
  __proto__ without setting the [[Prototype]]. Similarly, property
  name shorthands with the name __proto__ should define an own
  property.

BUG=
R=weiliang.lin@intel.com

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

Cr-Commit-Position: refs/heads/master@{#26179}

9 years agoX87: move CallApiFunctionAndReturn to code-stubs-*
cdai2 [Wed, 21 Jan 2015 08:29:16 +0000 (16:29 +0800)]
X87: move CallApiFunctionAndReturn to code-stubs-*

port e62d974ba155e862c29f80667bcb7b4008549d51 (r26167)

original commit message:

   move CallApiFunctionAndReturn to code-stubs-*

BUG=
R=weiliang.lin@intel.com

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

Cr-Commit-Position: refs/heads/master@{#26178}

9 years agoEnsure tags are fetched when generating the V8 version.
machenbach [Wed, 21 Jan 2015 07:59:47 +0000 (23:59 -0800)]
Ensure tags are fetched when generating the V8 version.

This is needed so that version generation works after
bot_update fetched v8 in a chromium checkout.

TBR=tandrii@chromium.org
BUG=chromium:446166
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26177}

9 years agoX87: fix debug checks for api callbacks returning symbols
cdai2 [Wed, 21 Jan 2015 05:25:05 +0000 (13:25 +0800)]
X87: fix debug checks for api callbacks returning symbols

port 3eb589976a979fa80f0934a3754ebc79d289b713.

original commit message:

  fix debug checks for api callbacks returning symbols

BUG=
R=weiliang.lin@intel.com

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

Cr-Commit-Position: refs/heads/master@{#26176}

9 years ago[turbofan] Pull ResizeMergeOrPhi into CommonOperatorBuilder and use in ControlReducer.
titzer [Tue, 20 Jan 2015 18:23:27 +0000 (10:23 -0800)]
[turbofan] Pull ResizeMergeOrPhi into CommonOperatorBuilder and use in ControlReducer.

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26175}

9 years agoComputed property names for object literals in TurboFan.
mstarzinger [Tue, 20 Jan 2015 16:52:52 +0000 (08:52 -0800)]
Computed property names for object literals in TurboFan.

R=dslomov@chromium.org
TEST=mjsunit/harmony/computed-property-names

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

Cr-Commit-Position: refs/heads/master@{#26174}

9 years agoPerform access checks on the prototype chain when setting an element through a setter
verwaest [Tue, 20 Jan 2015 16:50:48 +0000 (08:50 -0800)]
Perform access checks on the prototype chain when setting an element through a setter

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26173}

9 years agoFix issue with __proto__ when using ES6 object literals
arv [Tue, 20 Jan 2015 16:31:27 +0000 (08:31 -0800)]
Fix issue with __proto__ when using ES6 object literals

It should be possible to create a concise method with the name
__proto__ without setting the [[Prototype]]. Similarly, property
name shorthands with the name __proto__ should define an own
property.

BUG=v8:3818
LOG=Y
R=adamk, dslomov@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26172}

9 years agoKeep trybot definitions in sync with CQ.
machenbach [Tue, 20 Jan 2015 16:09:29 +0000 (08:09 -0800)]
Keep trybot definitions in sync with CQ.

"git cl try" should execute the same set of trybots as the
CQ.

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

Cr-Commit-Position: refs/heads/master@{#26171}

9 years agoUse RETURN_ON_EXCEPTION rather than .Assert when setting .length, which may fail...
verwaest [Tue, 20 Jan 2015 16:08:17 +0000 (08:08 -0800)]
Use RETURN_ON_EXCEPTION rather than .Assert when setting .length, which may fail due to stack overflow.

BUG=449447
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26170}

9 years agoDon't use -O3 with sanitizers.
machenbach [Tue, 20 Jan 2015 16:07:11 +0000 (08:07 -0800)]
Don't use -O3 with sanitizers.

BUG=chromium:430614
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26169}

9 years agoProfiler improvements
jkummerow [Tue, 20 Jan 2015 16:06:03 +0000 (08:06 -0800)]
Profiler improvements

(1) --prof-cpp: Collects ticks like --prof, but ignores code creation events to reduce distortion (so all JS ticks will be "unaccounted"). Useful for profiling C++ code.
(2) --timed-range flag for tick processor: Ignores ticks before the first and after the last call to Date.now(). Useful for focusing on the timed section of a test.

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

Cr-Commit-Position: refs/heads/master@{#26168}

9 years agomove CallApiFunctionAndReturn to code-stubs-*
dcarney [Tue, 20 Jan 2015 16:04:51 +0000 (08:04 -0800)]
move CallApiFunctionAndReturn to code-stubs-*

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26167}