paul.lind [Wed, 3 Dec 2014 00:28:07 +0000 (16:28 -0800)]
MIPS: [turbofan] Add checked load/store operators.
Port
c516d4f09408879602520748333754d3866224fb
Partial port to un-break the build. There are a few failing
tests, and the code is suboptimal for smaller offsets.
Fixes and mips64 port will come in another CL.
BUG=
Review URL: https://codereview.chromium.org/
762853004
Cr-Commit-Position: refs/heads/master@{#25626}
adamk [Tue, 2 Dec 2014 23:06:44 +0000 (15:06 -0800)]
Optimize non-mutation Map and Set operations for String keys
Review URL: https://codereview.chromium.org/
757143002
Cr-Commit-Position: refs/heads/master@{#25625}
vogelheim [Tue, 2 Dec 2014 18:53:27 +0000 (10:53 -0800)]
Fix NativesCollection<.>::GetScriptName in natives-external.cc
As there's no associated bug, here's the issue:
- Some ES6 functionality in Chrome is presently broken; this fixes it.
- The natives (built-in libraries) can be accessed by their 'name'.
This is used to active ES6 flags.
- Strangely enough, there's an id and a name, where the name is derived
from the id as "native %s.js", with %s for the id.
- NativesCollection<.>::GetScriptName uses the name.
- NativesCollection<.>::GetIndex uses the id.
- Example:
NativesCollection<EXPERIMENTAL>::GetIndex("harmony-string") -> 3
NativesCollection<EXPERIMENTAL>::GetScriptName(3) -> "native harmony-string.js"
- Nobody knows why; it's quite mysterious.
- When introducing the "external startup data", I didn't fully understand this
and used the id in both places.
- When the "external startup data" was turned on in Chrome, ES6 features broke
in Chrome since the libraries could no longer be found.
- This CL fixes this and makes the external startup data behave just like the
built-in version.
R=dslomov
BUG=
Review URL: https://codereview.chromium.org/
774613003
Cr-Commit-Position: refs/heads/master@{#25624}
baptiste.afsa [Tue, 2 Dec 2014 18:45:30 +0000 (10:45 -0800)]
[turbofan] Enable DivIsSafe flag for arm64.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
773803003
Cr-Commit-Position: refs/heads/master@{#25623}
mstarzinger [Tue, 2 Dec 2014 16:51:48 +0000 (08:51 -0800)]
Switch CFGBuilder to use NodeMarker.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
753063004
Cr-Commit-Position: refs/heads/master@{#25622}
mstarzinger [Tue, 2 Dec 2014 15:56:22 +0000 (07:56 -0800)]
Restrict floating control to minimal control-connected component.
R=jarin@chromium.org
TEST=cctest/test-scheduler/NestedFloatingDiamondWithChain
Review URL: https://codereview.chromium.org/
738613005
Cr-Commit-Position: refs/heads/master@{#25621}
mstarzinger [Tue, 2 Dec 2014 15:37:52 +0000 (07:37 -0800)]
Make generic algorithm a little less generic.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
760493003
Cr-Commit-Position: refs/heads/master@{#25620}
weiliang.lin [Tue, 2 Dec 2014 15:30:03 +0000 (07:30 -0800)]
[ia32] Introduce FMA3 instructions on scalar data elements.
port
83a635e0d70f144300ea83be0d7effc1eb1bf6ef
BUG=
Review URL: https://codereview.chromium.org/
773783002
Cr-Commit-Position: refs/heads/master@{#25619}
jochen [Tue, 2 Dec 2014 15:09:19 +0000 (07:09 -0800)]
Trace how long it takes to compute the weak closure during mark-compact
BUG=none
R=hpayer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
769253002
Cr-Commit-Position: refs/heads/master@{#25618}
dslomov [Tue, 2 Dec 2014 14:54:31 +0000 (06:54 -0800)]
Stage ES6 classes and object literal extensions.
R=arv@chromium.org,rossberg@chromium.org
BUG=v8:3330
LOG=Y
Review URL: https://codereview.chromium.org/
774653002
Cr-Commit-Position: refs/heads/master@{#25617}
danno [Tue, 2 Dec 2014 14:38:55 +0000 (06:38 -0800)]
Clean up node iteration
- Create a first-class Edge type.
- Separate node and edge iterators
- Make iterators only responsible for iteration
- Make it possible to modify the use edge iterator while iterating.
- Add the ability to update inputs to Edges directly.
Review URL: https://codereview.chromium.org/
765983002
Cr-Commit-Position: refs/heads/master@{#25616}
ulan [Tue, 2 Dec 2014 14:25:17 +0000 (06:25 -0800)]
Reland parts of 'Use weak cells in map checks in polymorphic ICs'
This relands macroassembler instructions and weak cell caching and
does not include parts that caused "Linux ASan LSan" test failures.
BUG=v8:3663
LOG=N
Review URL: https://codereview.chromium.org/
764003003
Cr-Commit-Position: refs/heads/master@{#25615}
machenbach [Tue, 2 Dec 2014 14:23:51 +0000 (06:23 -0800)]
Add Android platform to performance runner.
BUG=chromium:374740
LOG=n
TEST=python -m unittest run_perf_test
NOTRY=true
Review URL: https://codereview.chromium.org/
768143002
Cr-Commit-Position: refs/heads/master@{#25614}
svenpanne [Tue, 2 Dec 2014 13:47:10 +0000 (05:47 -0800)]
Fixed environment handling for LFlooringDivI on ARM.
Beautiful code... :-}
BUG=chromium:437765
LOG=y
Review URL: https://codereview.chromium.org/
775613002
Cr-Commit-Position: refs/heads/master@{#25613}
Marja Hölttä [Tue, 2 Dec 2014 13:23:30 +0000 (14:23 +0100)]
Make the ParserSync test faster (and re-enable it).
Most of the run time came from testing with all possible flag combinations. None
of the flags passed affect the test, and there are specialized tests for testing
the features behind the flags; no need to slow down the generic test.
With these changes, run time for debug build goes from 186 s to 0.5 s.
In addition, fixed some missing commas between the test cases.
R=svenpanne@chromium.org
BUG=v8:3707
LOG=N
Review URL: https://codereview.chromium.org/
766673003
Cr-Commit-Position: refs/heads/master@{#25612}
Benedikt Meurer [Tue, 2 Dec 2014 12:45:08 +0000 (13:45 +0100)]
[turbofan] Use the temporary zone for the VN cache.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
760403003
Cr-Commit-Position: refs/heads/master@{#25611}
Benedikt Meurer [Tue, 2 Dec 2014 12:41:31 +0000 (13:41 +0100)]
[turbofan] Cache the Branch operator(s).
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
771153002
Cr-Commit-Position: refs/heads/master@{#25610}
Benedikt Meurer [Tue, 2 Dec 2014 11:40:25 +0000 (12:40 +0100)]
[turbofan] Cache the JSStoreProperty operator(s).
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
769193003
Cr-Commit-Position: refs/heads/master@{#25609}
dslomov [Tue, 2 Dec 2014 11:34:29 +0000 (03:34 -0800)]
Restore correct logic in GC test.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
767453004
Cr-Commit-Position: refs/heads/master@{#25608}
hpayer [Tue, 2 Dec 2014 11:24:58 +0000 (03:24 -0800)]
Perform smaller marking steps incrementally in idle notification.
BUG=
Review URL: https://codereview.chromium.org/
767233003
Cr-Commit-Position: refs/heads/master@{#25607}
jochen [Tue, 2 Dec 2014 11:23:51 +0000 (03:23 -0800)]
After moving unreachable weak global handles only process harmony collections
Groups and implicit references are no longer relevant at this point.
Also add tests that fail if the first or second round of ephemeral
marking is omitted
BUG=none
R=mstarzinger@chromium.org,hpayer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
761343004
Cr-Commit-Position: refs/heads/master@{#25606}
Benedikt Meurer [Tue, 2 Dec 2014 11:10:46 +0000 (12:10 +0100)]
[turbofan] Add missing tests for SimplifiedOperatorBuilder.
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
772723003
Cr-Commit-Position: refs/heads/master@{#25605}
titzer [Tue, 2 Dec 2014 11:07:17 +0000 (03:07 -0800)]
[turbofan] Enable stage 1.
R=danno@chromium.org,bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
770203003
Cr-Commit-Position: refs/heads/master@{#25604}
marja [Tue, 2 Dec 2014 10:58:11 +0000 (02:58 -0800)]
ES6 unicode extensions, part 1.
Allows \u{xxxxx} in variable names and string literals (not yet in regexps).
Everything's behind the --harmony-unicode flag.
BUG=
Review URL: https://codereview.chromium.org/
716423002
Cr-Commit-Position: refs/heads/master@{#25603}
titzer [Tue, 2 Dec 2014 10:43:00 +0000 (02:43 -0800)]
[turbofan] Initialize less frequently used types in typer.cc lazily.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
771683002
Cr-Commit-Position: refs/heads/master@{#25602}
marja [Tue, 2 Dec 2014 10:31:40 +0000 (02:31 -0800)]
Parser: Removing debug code.
The mystery crash never reappeared once the debugging code was in place.
R=jochen@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
760863003
Cr-Commit-Position: refs/heads/master@{#25601}
titzer [Tue, 2 Dec 2014 10:02:38 +0000 (02:02 -0800)]
[turbofan] Make context specialization into a reducer.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
771713002
Cr-Commit-Position: refs/heads/master@{#25600}
Hannes Payer [Tue, 2 Dec 2014 09:27:41 +0000 (10:27 +0100)]
Fix idle time trace printing.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
771123002
Cr-Commit-Position: refs/heads/master@{#25599}
yurys [Tue, 2 Dec 2014 09:13:16 +0000 (01:13 -0800)]
Add GetIdentityHash to v8::Name object API
v8::Object already has GetIdentityHash on it. This change adds its counterpart to v8::Name.
BUG=chromium:437416
LOG=Y
Review URL: https://codereview.chromium.org/
753373003
Cr-Commit-Position: refs/heads/master@{#25598}
machenbach [Tue, 2 Dec 2014 08:16:43 +0000 (00:16 -0800)]
Revert of Use weak cells in map checks in polymorphic ICs. (patchset #8 id:140001 of https://codereview.chromium.org/
753993003/)
Reason for revert:
[Sheriff] Speculative revert for breaking chromium asan (roll blocker):
http://build.chromium.org/p/client.v8/builders/Linux%20ASan%20LSan%20Tests%20%281%29/builds/1683
Original issue's description:
> Use weak cells in map checks in polymorphic ICs.
>
> BUG=v8:3663
> LOG=N
TBR=mvstanton@chromium.org,akos.palfi@imgtec.com,weiliang.lin@intel.com,ulan@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=v8:3663
Review URL: https://codereview.chromium.org/
771033003
Cr-Commit-Position: refs/heads/master@{#25597}
machenbach [Tue, 2 Dec 2014 08:15:30 +0000 (00:15 -0800)]
Revert of MIPS: Use weak cells in map checks in polymorphic ICs. (patchset #1 id:1 of https://codereview.chromium.org/
767623003/)
Reason for revert:
Need to revert the ported CL:
https://codereview.chromium.org/
771033003/
Original issue's description:
> MIPS: Use weak cells in map checks in polymorphic ICs.
>
> Port
45a36948e1bb0f02d395ecbcfe6306553898268b
>
> Fix typo in the mips ports.
>
> BUG=
TBR=ulan@chromium.org,danno@chromium.org,akos.palfi@imgtec.com,balazs.kilvady@imgtec.com,gergely.kis@imgtec.com,dusan.milosavljevic@imgtec.com,paul.lind@imgtec.com
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/
768303002
Cr-Commit-Position: refs/heads/master@{#25596}
weiliang.lin [Tue, 2 Dec 2014 08:09:39 +0000 (00:09 -0800)]
[ia32] Introduce vex prefix version of float64 arithmetic binop
port
50c4d8826b838596cda892d76ec84eb7a0eab9c1
BUG=
Review URL: https://codereview.chromium.org/
770183002
Cr-Commit-Position: refs/heads/master@{#25595}
bmeurer [Tue, 2 Dec 2014 07:30:36 +0000 (23:30 -0800)]
[turbofan] Workaround inconsistency of the type system.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
770193002
Cr-Commit-Position: refs/heads/master@{#25594}
bmeurer [Tue, 2 Dec 2014 07:25:36 +0000 (23:25 -0800)]
Get rid of the unused __my_bool__ macro.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
770163002
Cr-Commit-Position: refs/heads/master@{#25593}
thakis [Tue, 2 Dec 2014 05:23:09 +0000 (21:23 -0800)]
Set V8_CC_GNU or V8_CC_MSVC for clang in gcc / cl mode.
Also, remove V8_CC_CLANG since it's not read anywhere (and ideally shouldn't
be).
Clang tries to be compatible with gcc in clang mode, and with msvc in clang-cl
mode. It wants to go down the same code paths that these compilers want to go
down in most cases.
For example, V8PRIxPTR was set incorrectly on Windows 64-bit before this change
since macros.h assumed that checking for V8_CC_MSVC is enough to find LLP64
systems, but V8_CC_MSVC wasn't set for clang. Most other existing checks for
V8_CC_MSVC should be taken for clang-cl too (and for the remaining ones,
clang-cl is happy with either code path).
Likewise, V8_IMMEDIATE_CRASH is currently set to a suboptimal value with clang
since __builtin_trap() is only used if V8_CC_GNU is set.
Including clang in the gcc and cl macros is also what chromium does.
BUG=chromium:82385
LOG=y
Review URL: https://codereview.chromium.org/
757553004
Cr-Commit-Position: refs/heads/master@{#25592}
Benedikt Meurer [Tue, 2 Dec 2014 04:48:57 +0000 (05:48 +0100)]
[turbofan] Add checked load/store operators.
TEST=mjsunit,cctest,unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
763963002
Cr-Commit-Position: refs/heads/master@{#25591}
paul.lind [Mon, 1 Dec 2014 22:26:37 +0000 (14:26 -0800)]
MIPS: Use weak cells in map checks in polymorphic ICs.
Port
45a36948e1bb0f02d395ecbcfe6306553898268b
Fix typo in the mips ports.
BUG=
Review URL: https://codereview.chromium.org/
767623003
Cr-Commit-Position: refs/heads/master@{#25590}
dslomov [Mon, 1 Dec 2014 20:13:44 +0000 (12:13 -0800)]
harmony-classes: Fix some issues with syntactic restriction on super(...).
R=arv@chromium.org
BUG=v8:3330
LOG=N
Review URL: https://codereview.chromium.org/
770843002
Cr-Commit-Position: refs/heads/master@{#25589}
hpayer [Mon, 1 Dec 2014 17:02:54 +0000 (09:02 -0800)]
Use just one marking deque.
BUG=
Review URL: https://codereview.chromium.org/
770453003
Cr-Commit-Position: refs/heads/master@{#25588}
titzer [Mon, 1 Dec 2014 16:15:36 +0000 (08:15 -0800)]
[turbofan] Add a PhaseScope for initialization.
R=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
773443002
Cr-Commit-Position: refs/heads/master@{#25587}
svenpanne [Mon, 1 Dec 2014 14:30:25 +0000 (06:30 -0800)]
Improved Makefile.android's readability a bit.
Review URL: https://codereview.chromium.org/
770783003
Cr-Commit-Position: refs/heads/master@{#25586}
ishell [Mon, 1 Dec 2014 14:19:11 +0000 (06:19 -0800)]
Do not call Heap::IterateAndMarkPointersToFromSpace() for unboxed double fields.
BUG=chromium:437143
LOG=N
Review URL: https://codereview.chromium.org/
768113002
Cr-Commit-Position: refs/heads/master@{#25585}
ulan [Mon, 1 Dec 2014 14:06:18 +0000 (06:06 -0800)]
Android ARM: enable PIE.
BUG=
Review URL: https://codereview.chromium.org/
757103003
Cr-Commit-Position: refs/heads/master@{#25584}
titzer [Mon, 1 Dec 2014 11:50:37 +0000 (03:50 -0800)]
[turbofan] NodeMarker in ControlReducer.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
767743003
Cr-Commit-Position: refs/heads/master@{#25583}
Weiliang Lin [Mon, 1 Dec 2014 10:45:02 +0000 (11:45 +0100)]
[x64] introduce vex prefix version of float64 arithmetic binop
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
764863002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
Cr-Commit-Position: refs/heads/master@{#25582}
ulan [Mon, 1 Dec 2014 10:41:01 +0000 (02:41 -0800)]
Use weak cells in map checks in polymorphic ICs.
BUG=v8:3663
LOG=N
Review URL: https://codereview.chromium.org/
753993003
Cr-Commit-Position: refs/heads/master@{#25581}
danno [Mon, 1 Dec 2014 10:04:32 +0000 (02:04 -0800)]
[turbofan]: Use "leal" more prevasively on x64
Only use "addl" and "subl" in cases that have been measured to be
faster (currently only immediate operations).
Review URL: https://codereview.chromium.org/
735293004
Cr-Commit-Position: refs/heads/master@{#25580}
halton.huo [Mon, 1 Dec 2014 09:17:24 +0000 (01:17 -0800)]
Fix clang++ warnings on -Wtautological-constant-out-of-range-compare
BUG=v8:3730
LOG=N
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
750093003
Cr-Commit-Position: refs/heads/master@{#25579}
jochen [Mon, 1 Dec 2014 09:15:03 +0000 (01:15 -0800)]
Make sure we have non-zero idle time even after rounding to size_t
BUG=v8:3728
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
764263002
Cr-Commit-Position: refs/heads/master@{#25578}
dslomov [Fri, 28 Nov 2014 20:07:11 +0000 (12:07 -0800)]
Introduce a kill-switch for shipping features.
R=rossberg@chromium.org
TBR=hpayer@chromium.org
Committed: https://chromium.googlesource.com/v8/v8/+/
d6285620868b15c84eb9affa59f6b4e869f074b8
Review URL: https://codereview.chromium.org/
763273002
Cr-Commit-Position: refs/heads/master@{#25577}
machenbach [Fri, 28 Nov 2014 18:39:41 +0000 (10:39 -0800)]
Abstract platform in perf runner.
This is basically a refactoring that extracts desktop
specific code into a separate class.
Also adds flags for android runs (not used yet).
BUG=chromium:374740
LOG=n
TEST=python -m unittest run_perf_test
NOTRY=true
Review URL: https://codereview.chromium.org/
762163002
Cr-Commit-Position: refs/heads/master@{#25576}
mstarzinger [Fri, 28 Nov 2014 18:38:31 +0000 (10:38 -0800)]
Remove deprecated NodeData class.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
768853002
Cr-Commit-Position: refs/heads/master@{#25575}
dslomov [Fri, 28 Nov 2014 18:27:45 +0000 (10:27 -0800)]
Revert of Introduce a kill-switch for shipping features. (patchset #2 id:20001 of https://codereview.chromium.org/
763273002/)
Reason for revert:
Reverted for breaking nosnap: http://chromegw.corp.google.com/i/client.v8/builders/V8%20Linux%20-%20nosnap/builds/1003/steps/Check/logs/Threading3
Original issue's description:
> Introduce a kill-switch for shipping features.
>
> R=rossberg@chromium.org
>
> Committed: https://chromium.googlesource.com/v8/v8/+/
d6285620868b15c84eb9affa59f6b4e869f074b8
TBR=rossberg@chromium.org
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
763353002
Cr-Commit-Position: refs/heads/master@{#25574}
dslomov [Fri, 28 Nov 2014 15:41:34 +0000 (07:41 -0800)]
Stage @@toStringTag (--harmony-tostring)
R=rossberg@chromium.org,caitpotter88@gmail.com
LOG=Y
Review URL: https://codereview.chromium.org/
768833002
Cr-Commit-Position: refs/heads/master@{#25573}
mstarzinger [Fri, 28 Nov 2014 15:21:33 +0000 (07:21 -0800)]
De-generify the GenericNode.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
756073004
Cr-Commit-Position: refs/heads/master@{#25572}
aandrey [Fri, 28 Nov 2014 14:48:58 +0000 (06:48 -0800)]
Expose generator object internal properties via mirrors.
BUG=v8:3292
R=yangguo@chromium.org, wingo@igalia.com
LOG=N
Review URL: https://codereview.chromium.org/
760303002
Cr-Commit-Position: refs/heads/master@{#25571}
Dmitry Lomov [Fri, 28 Nov 2014 14:32:07 +0000 (15:32 +0100)]
Introduce a kill-switch for shipping features.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
763273002
Cr-Commit-Position: refs/heads/master@{#25570}
mstarzinger [Fri, 28 Nov 2014 14:21:01 +0000 (06:21 -0800)]
De-generify the GenericGraph.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
767733002
Cr-Commit-Position: refs/heads/master@{#25569}
Dusan Milosavljevic [Fri, 28 Nov 2014 13:35:00 +0000 (14:35 +0100)]
MIPS64: Fix MULT in simulator to conform the spec.
TEST=mjsunit/numops-fuzz-part4
BUG=
R=balazs.kilvady@imgtec.com
Review URL: https://codereview.chromium.org/
756073003
Cr-Commit-Position: refs/heads/master@{#25568}
Ben L. Titzer [Fri, 28 Nov 2014 13:04:49 +0000 (14:04 +0100)]
[turbofan] Add NodeMarker and use it in the GraphReducer.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
768763002
Cr-Commit-Position: refs/heads/master@{#25567}
yangguo [Fri, 28 Nov 2014 12:07:40 +0000 (04:07 -0800)]
Serializer: use opcode to signal new chunk.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
757813003
Cr-Commit-Position: refs/heads/master@{#25566}
mstarzinger [Fri, 28 Nov 2014 11:57:08 +0000 (03:57 -0800)]
Remove deprecated pieces from generic algorithm.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
752263003
Cr-Commit-Position: refs/heads/master@{#25565}
hpayer [Fri, 28 Nov 2014 11:53:59 +0000 (03:53 -0800)]
Use incremental marking deque in idle notification.
BUG=
Review URL: https://codereview.chromium.org/
766663006
Cr-Commit-Position: refs/heads/master@{#25564}
machenbach [Fri, 28 Nov 2014 11:35:37 +0000 (03:35 -0800)]
Make resources config ready for android test runner.
This switches off the resources feature. It will be solely
used for configuring files to be copied to android devices
in a follow up CL.
TBR=svenpanne@chromium.org
NOTRY=true
Review URL: https://codereview.chromium.org/
764013002
Cr-Commit-Position: refs/heads/master@{#25563}
dcarney [Fri, 28 Nov 2014 11:07:34 +0000 (03:07 -0800)]
add fast path for hashing small cons strings
R=yangguo@chromium.org
LOG=N
BUG=437280
Review URL: https://codereview.chromium.org/
769453002
Cr-Commit-Position: refs/heads/master@{#25562}
mstarzinger [Fri, 28 Nov 2014 11:06:16 +0000 (03:06 -0800)]
Remove duplicate code for searching SharedFunctionInfo.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
762123002
Cr-Commit-Position: refs/heads/master@{#25561}
hpayer [Fri, 28 Nov 2014 10:59:18 +0000 (02:59 -0800)]
Use deadline in IdleNotification.
BUG=417668
LOG=n
Review URL: https://codereview.chromium.org/
750813003
Cr-Commit-Position: refs/heads/master@{#25560}
machenbach [Fri, 28 Nov 2014 10:34:28 +0000 (02:34 -0800)]
Add test flags feature to perf runner.
TBR=svenpanne@chromium.org
NOTRY=true
Review URL: https://codereview.chromium.org/
722023006
Cr-Commit-Position: refs/heads/master@{#25559}
machenbach [Fri, 28 Nov 2014 08:11:35 +0000 (00:11 -0800)]
Fix candidate lookup in auto push script.
NOTRY=true
BUG=chromium:431669
LOG=n
TBR=jkummerow@chromium.org
TEST=./script_test.py
Review URL: https://codereview.chromium.org/
765943002
Cr-Commit-Position: refs/heads/master@{#25558}
Dmitry Lomov [Fri, 28 Nov 2014 06:22:45 +0000 (07:22 +0100)]
Fix nosnap build
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
762083002
Cr-Commit-Position: refs/heads/master@{#25557}
chunyang.dai [Fri, 28 Nov 2014 04:18:03 +0000 (20:18 -0800)]
X87: Flesh out vector ic state query and set mechanisms.
port
c142994f742b52cd59aa15d0961d4b0034bcbf88
original commit message:
Flesh out vector ic state query and set mechanisms.
The IC system now fully integrates the vector concept and can
handle loads and keyed loads vector-based.
BUG=
Review URL: https://codereview.chromium.org/
763953002
Cr-Commit-Position: refs/heads/master@{#25556}
dslomov [Fri, 28 Nov 2014 04:08:48 +0000 (20:08 -0800)]
harmony-classes: Implement 'super(...)' call syntactic restriction.
R=rossberg@chromium.org,arv@chromium.org
BUG=v8:3330
LOG=N
Review URL: https://codereview.chromium.org/
766663003
Cr-Commit-Position: refs/heads/master@{#25555}
Balazs Kilvady [Thu, 27 Nov 2014 23:39:47 +0000 (00:39 +0100)]
MIPS: Flesh out vector ic state query and set mechanisms.
Port
c142994f742b52cd59aa15d0961d4b0034bcbf88
Original commit message:
The IC system now fully integrates the vector concept and can
handle loads and keyed loads vector-based.
BUG=
R=akos.palfi@imgtec.com
Review URL: https://codereview.chromium.org/
752553005
Patch from Balazs Kilvady <balazs.kilvady@imgtec.com>.
Cr-Commit-Position: refs/heads/master@{#25554}
machenbach [Thu, 27 Nov 2014 17:18:03 +0000 (09:18 -0800)]
Set clang directory in gyp.
BUG=
Review URL: https://codereview.chromium.org/
764803002
Cr-Commit-Position: refs/heads/master@{#25553}
Michael Stanton [Thu, 27 Nov 2014 16:36:18 +0000 (17:36 +0100)]
Flesh out vector ic state query and set mechanisms.
The IC system now fully integrates the vector concept and can
handle loads and keyed loads vector-based.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
754303003
Cr-Commit-Position: refs/heads/master@{#25552}
titzer [Thu, 27 Nov 2014 16:24:08 +0000 (08:24 -0800)]
[turbofan] Avoid repeatedly revisiting inputs in GraphReducer.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
753073009
Cr-Commit-Position: refs/heads/master@{#25551}
dslomov [Thu, 27 Nov 2014 16:09:31 +0000 (08:09 -0800)]
Set @@toStringTag on GeneratorFunction prototype.
R=caitpotter88@gmail.com
BUG=v8:3502
LOG=N
Review URL: https://codereview.chromium.org/
764823002
Cr-Commit-Position: refs/heads/master@{#25550}
caitpotter88 [Thu, 27 Nov 2014 15:47:42 +0000 (07:47 -0800)]
Make TemplateLiteral hashing algorithm more memory efficient
Previously, a separate string to be hashed (in order to help determine the need to
use a cached Template Call Site) was built up by joining UTF8 spans within a template.
Now, the hash key is generated from the original spans, removing the need to allocate a new
buffer and copy bytes into it.
BUG=
Review URL: https://codereview.chromium.org/
765473006
Cr-Commit-Position: refs/heads/master@{#25549}
mstarzinger [Thu, 27 Nov 2014 14:13:46 +0000 (06:13 -0800)]
Remove deprecated constant helpers from JSGenericLowering.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
761143002
Cr-Commit-Position: refs/heads/master@{#25548}
mstarzinger [Thu, 27 Nov 2014 13:44:27 +0000 (05:44 -0800)]
Fix reduction result for branches in generic lowering.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
750333003
Cr-Commit-Position: refs/heads/master@{#25547}
hpayer [Thu, 27 Nov 2014 13:10:52 +0000 (05:10 -0800)]
Just account for context disposal garbage collections in context disposal stats counters.
BUG=
Review URL: https://codereview.chromium.org/
765773002
Cr-Commit-Position: refs/heads/master@{#25546}
Hannes Payer [Thu, 27 Nov 2014 12:39:41 +0000 (13:39 +0100)]
Re-land: Distinguish beween final incremental mark-compact and full mark-compact event in IdleNotification.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
765743002
Cr-Commit-Position: refs/heads/master@{#25545}
hpayer [Thu, 27 Nov 2014 12:16:30 +0000 (04:16 -0800)]
Just finalize incremental marking when marking is done in idle notification.
BUG=
Review URL: https://codereview.chromium.org/
733893003
Cr-Commit-Position: refs/heads/master@{#25544}
mstarzinger [Thu, 27 Nov 2014 12:00:30 +0000 (04:00 -0800)]
Start immediate dominator propagation at entry to floating control.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
761673004
Cr-Commit-Position: refs/heads/master@{#25543}
mstarzinger [Thu, 27 Nov 2014 11:53:19 +0000 (03:53 -0800)]
Switch backedge table in scheduler to use ZoneVector.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
761733002
Cr-Commit-Position: refs/heads/master@{#25542}
balazs.kilvady [Thu, 27 Nov 2014 11:21:00 +0000 (03:21 -0800)]
MIPS: harmony-scoping: make assignment to 'const' a late error.
Port
6ac4de87a8b01500b066a3e401e921d2d84b42db
Original commit message:
Per TC39 Nov 2014 decision.
This patch also changes behavior for "legacy const": assignments to sloppy const in strict mode is now also a type error. This fixes v8:2243 and also brings us in compliance with other engines re assignment to function names (see updated webkit test), but might have bigger implications.
That change can easily be reverted by changing Variable::IsSignallingAssignmentToConst.
BUG=v8:3713,v8:2243
LOG=N
Review URL: https://codereview.chromium.org/
766703002
Cr-Commit-Position: refs/heads/master@{#25541}
jochen [Thu, 27 Nov 2014 10:52:47 +0000 (02:52 -0800)]
Introduce a new growth criterion for the new space behind a flag
With this flag, we grow if more than 10% survived the last scavenge.
BUG=none
R=hpayer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
753543002
Cr-Commit-Position: refs/heads/master@{#25540}
hpayer [Thu, 27 Nov 2014 10:50:40 +0000 (02:50 -0800)]
Just print interesting idle notification events in --trace-idle-notification.
BUG=
Review URL: https://codereview.chromium.org/
763063002
Cr-Commit-Position: refs/heads/master@{#25539}
jochen [Thu, 27 Nov 2014 10:29:41 +0000 (02:29 -0800)]
Add support for downloading clang
Still requires changes to gyp files to select the built-in clang as
compiler and make clang the default on the platforms we want it.
BUG=
R=dcarney@chromium.org,machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
745963005
Cr-Commit-Position: refs/heads/master@{#25538}
dcarney [Thu, 27 Nov 2014 10:21:32 +0000 (02:21 -0800)]
Add interceptor support for symbols
a revival of https://codereview.chromium.org/
467013003
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
760883002
Cr-Commit-Position: refs/heads/master@{#25537}
dslomov [Thu, 27 Nov 2014 10:17:07 +0000 (02:17 -0800)]
Ship harmony-strings
R=rossberg@chromium.org, yangguo@chromium.org
LOG=Y
Review URL: https://codereview.chromium.org/
761913002
Cr-Commit-Position: refs/heads/master@{#25536}
ishell [Thu, 27 Nov 2014 10:10:48 +0000 (02:10 -0800)]
Fast-to-slow migration should wipe out in-object space if it exists in the object after migration.
BUG=chromium:436816
LOG=N
Review URL: https://codereview.chromium.org/
765473004
Cr-Commit-Position: refs/heads/master@{#25535}
yangguo [Thu, 27 Nov 2014 09:22:10 +0000 (01:22 -0800)]
Ensure double alignment when deserializing.
R=rmcilroy@chromium.org
BUG=chromium:436510
LOG=N
TEST=compile with V8_OOL_CONSTANT_POOL=1, run d8 with --verify-heap --test
Review URL: https://codereview.chromium.org/
759823006
Cr-Commit-Position: refs/heads/master@{#25534}
dcarney [Thu, 27 Nov 2014 09:19:31 +0000 (01:19 -0800)]
[turbofan] add initial move optimizer
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
750813004
Cr-Commit-Position: refs/heads/master@{#25533}
Chunyang Dai [Thu, 27 Nov 2014 07:19:47 +0000 (15:19 +0800)]
X87: harmony-scoping: make assignment to 'const' a late error.
port
6ac4de87a8b01500b066a3e401e921d2d84b42db
original commit message:
harmony-scoping: make assignment to 'const' a late error.
Per TC39 Nov 2014 decision. This patch also changes behavior for "legacy const":
assignments to sloppy const in strict mode is now also a type error. This fixes
v8:2243 and also brings us in compliance with other engines re assignment to function
names (see updated webkit test), but might have bigger implications. That change can
easily be reverted by changing Variable::IsSignallingAssignmentToConst.
BUG=
R=dslomov@chromium.org, weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
763033002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
Cr-Commit-Position: refs/heads/master@{#25532}
mstarzinger [Wed, 26 Nov 2014 17:39:06 +0000 (09:39 -0800)]
Move linked list for RPO order into BasicBlock itself.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
762723004
Cr-Commit-Position: refs/heads/master@{#25531}
ishell [Wed, 26 Nov 2014 17:36:57 +0000 (09:36 -0800)]
Map::CopyGeneralizeAllRepresentations() left incorrect layout descriptor in a new map.
BUG=chromium:436820
LOG=N
Review URL: https://codereview.chromium.org/
759823004
Cr-Commit-Position: refs/heads/master@{#25530}
caitpotter88 [Wed, 26 Nov 2014 17:15:47 +0000 (09:15 -0800)]
Fix raw TemplateLiteral spans with non-ascii characters
BUG=v8:3710
Review URL: https://codereview.chromium.org/
745233002
Cr-Commit-Position: refs/heads/master@{#25529}
titzer [Wed, 26 Nov 2014 16:57:45 +0000 (08:57 -0800)]
Abort optimization in corner case.
The %OptimizeFunctionOnNextCall sledgehammer can cause a function to be
marked for optimization before it's ever been compiled by fullcode.
This can lead to the situation where a function doesn't have optimization
disabled until we try to compile it optimized.
Basically, the assert should just handle this case more gracefully.
R=yangguo@chromium.org
BUG=436893
LOG=Y
Review URL: https://codereview.chromium.org/
760063002
Cr-Commit-Position: refs/heads/master@{#25528}
jarin [Wed, 26 Nov 2014 16:32:37 +0000 (08:32 -0800)]
Do not try to inline if the function has an illegal redeclaration.
R=mvstanton@chromium.org
BUG=chromium:436896
LOG=n
Review URL: https://codereview.chromium.org/
755333003
Cr-Commit-Position: refs/heads/master@{#25527}