yangguo@chromium.org [Wed, 20 Aug 2014 09:43:00 +0000 (09:43 +0000)]
Remove RegExp.$input.
R=arv@chromium.org, mathiasb@opera.com
BUG=v8:3486
LOG=Y
Review URL: https://codereview.chromium.org/
465273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23223
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 20 Aug 2014 09:39:37 +0000 (09:39 +0000)]
Check in "cpu.sh" script to control CPU governor/cores on Linux
This can help with reproducing stability bugs or performance issues.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
485763003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23222
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 09:38:53 +0000 (09:38 +0000)]
Fix windows test runner.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
494603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23221
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Wed, 20 Aug 2014 09:25:30 +0000 (09:25 +0000)]
[turbofan] Add ARM64 tests and fix shift bug
Add more tests for logical immediate and shift instruction selection, and fix bug in range for supported shifts.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
487163004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23220
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 09:16:30 +0000 (09:16 +0000)]
[turbofan] Add support for Finish to the InstructionSelector.
Also fix an off-by-one bug in the handling of Parameter nodes, and
improve test coverage for pointer map computation.
TEST=compiler-unittest
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
490673006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23219
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 20 Aug 2014 08:56:57 +0000 (08:56 +0000)]
Refactor Scheduler to simplify construction of CFG from sea of nodes. Use PreEdge/Post as part of the graph tarversal, and make finding of successor projections more robust.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
490483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23217
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 08:13:00 +0000 (08:13 +0000)]
[turbofan] Add support for ChangeTaggedToUint32 in ChangeLowering.
Also refactor some common code in ChangeLowering.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
488043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23216
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 04:01:36 +0000 (04:01 +0000)]
[turbofan] Add support for ChangeUint32ToTagged in ChangeLowering.
TEST=compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
491433002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23215
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 20 Aug 2014 04:01:00 +0000 (04:01 +0000)]
[turbofan] Add TruncateFloat64ToInt32 machine operator.
Fix ChangeLowering to use TruncateFloat64ToInt32.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
484103002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23214
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 17:04:23 +0000 (17:04 +0000)]
Get rid of last non-storeic use of JSReceiver::Lookup
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
487333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23211
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 17:02:04 +0000 (17:02 +0000)]
Use LookupIterator to transition to accessors
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
490533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23210
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 16:07:15 +0000 (16:07 +0000)]
Revert "Load global object and builtins from activation."
This reverts commit r23205.
Setting string-type flags in unit tests is not a good idea.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
489543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23208
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 16:07:05 +0000 (16:07 +0000)]
Remove unnecessary LookupIterator instantiation
BUG=
R=aandrey@chromium.org
Review URL: https://codereview.chromium.org/
485113003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23207
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 19 Aug 2014 15:42:47 +0000 (15:42 +0000)]
Pass allow_classes to reusable_preparser
R=arv@chromium.org, marja@chromium.org
Review URL: https://codereview.chromium.org/
471603004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23206
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 15:16:23 +0000 (15:16 +0000)]
Load global object and builtins from activation.
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
474633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23205
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 19 Aug 2014 15:15:41 +0000 (15:15 +0000)]
ES6: Make sure we do not store -0 as the key in Map/Set
BUG=v8:3515
LOG=Y
R=adamk@chromium.org, dslomov@chromium.org
Review URL: https://codereview.chromium.org/
478683002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23204
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 19 Aug 2014 15:09:38 +0000 (15:09 +0000)]
Remove removed flags from tests
BUG=None
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
454003002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23203
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 14:58:41 +0000 (14:58 +0000)]
Get rid of LookupRealNamedProperty and LookupRealNamedPropertyInPrototypes and update clients
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
481043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23202
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 14:55:47 +0000 (14:55 +0000)]
Use LookupIterator (and rewrite) DebugLookupResultValue and clients
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
468943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23201
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 19 Aug 2014 14:34:12 +0000 (14:34 +0000)]
[Auto-roll] Bump up version to 3.29.8.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
488543004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Tue, 19 Aug 2014 13:32:24 +0000 (13:32 +0000)]
ARM64: Remove ToOperand32I and ToOperand32U.
These were front-ends to ToOperand32, to specify sign-extension.
However, since r22148, bits 63-32 are ignored for 32-bit operations
anyway, so there's no need for the caller to be explicit.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
483263003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23199
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 12:48:44 +0000 (12:48 +0000)]
Revert "Add initial support for inlining."
This reverts commit r23197.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
481413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23198
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 12:23:19 +0000 (12:23 +0000)]
Add initial support for inlining.
* Add stack depth checking to function tester.
* Make context specialization clean up after itself.
* Add UpdateToAndIncrement to Inputs::iterator.
Uses:iterator already provides this member function.
* Allow next node id in graph to be set.
R=mstarzinger@chromium.org, titzer@chromium.org
Review URL: https://codereview.chromium.org/
453833003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23197
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 19 Aug 2014 12:08:46 +0000 (12:08 +0000)]
Expose well-known Symbols to C++ API.
BUG=341423
LOG=Y
R=arv@chromium.org, dcarney@chromium.org, rossberg@chromium.org
Review URL: https://codereview.chromium.org/
483173002
Patch from Yutaka Hirano <yhirano@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23196
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 19 Aug 2014 12:07:59 +0000 (12:07 +0000)]
Trace scavenger throughput.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
487753003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23195
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 19 Aug 2014 11:38:38 +0000 (11:38 +0000)]
Implement ES6 Array.of()
BUG=v8:3427
LOG=N
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
364853009
Patch from Diego Pino <dpino@igalia.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 19 Aug 2014 11:24:24 +0000 (11:24 +0000)]
Set ScopeInfo when compiling for unit tests.
This is required to correctly treat eval in unit tests.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
453953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 19 Aug 2014 11:20:42 +0000 (11:20 +0000)]
Update toolchain for Android mipsel, ia32, x87.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
486173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23192
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Tue, 19 Aug 2014 10:56:49 +0000 (10:56 +0000)]
When marking dependent code for deoptimization print the group that is being deoptimized.
Otherwise it is impossible to figure out from the --trace-deoptimization output what is going on.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
467183002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23191
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 10:54:54 +0000 (10:54 +0000)]
Setup heap-unittests and runtime-unittests.
Initial import of empty unit test suites for Toon and Hannes.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
475233005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Tue, 19 Aug 2014 10:14:29 +0000 (10:14 +0000)]
ARM64: Refactor instruction selection unit tests.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
475823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 09:20:51 +0000 (09:20 +0000)]
Fix NaCl build.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
472823003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 09:17:00 +0000 (09:17 +0000)]
Fix types for SimplifiedLowering.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
484603003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23186
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 19 Aug 2014 08:53:38 +0000 (08:53 +0000)]
Make internalized string parser in JSON.parse GC-safe
SubStringKey::AsHandle is not GC-safe because the string backing store
may move.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
484703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23185
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 08:48:41 +0000 (08:48 +0000)]
[turbofan] Add proper conversion operators for int32<->int64.
This affects arm64 and x64. Note that we do not yet optimize
these conversions. Later we will add support for merging these
conversion operators into other operations during instruction
selection.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
487723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23184
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 19 Aug 2014 08:35:39 +0000 (08:35 +0000)]
Do not install fillers when right trimming large objects.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
487703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23183
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 19 Aug 2014 08:29:48 +0000 (08:29 +0000)]
Reorder native javascript files.
R=verwaest@chromium.org
BUG=403717
LOG=N
Review URL: https://codereview.chromium.org/
470083003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23182
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 19 Aug 2014 08:27:33 +0000 (08:27 +0000)]
Fix Android build.
BUG=v8:3506
LOG=N
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
486123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23181
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 08:14:01 +0000 (08:14 +0000)]
Revert "Get rid of dead version of GetNormalizedProperty"
(Doh, landed too early)
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
487163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23180
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 19 Aug 2014 07:34:18 +0000 (07:34 +0000)]
[Auto-roll] Bump up version to 3.29.7.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
483223003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23179
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 19 Aug 2014 07:09:41 +0000 (07:09 +0000)]
Get rid of dead version of GetNormalizedProperty
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
481073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23178
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 05:24:32 +0000 (05:24 +0000)]
Revert "[arm] Shorter test names for parameterized tests."
This reverts commit r23142 because GoogleTest is very picky about the
parameterized test case names, so not even using an anonymous namespace
can please GTest. Also reverts the renaming applied to in the
ChangeLowering unit test.
TBR=jarin@chromium.org
BUG=v8:3489
LOG=n
Review URL: https://codereview.chromium.org/
484953003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23177
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Tue, 19 Aug 2014 04:56:54 +0000 (04:56 +0000)]
X87: Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup
port r23168.
original commit message:
Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
481323002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23176
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 19 Aug 2014 04:54:06 +0000 (04:54 +0000)]
[turbofan] Support lowering of ChangeFloat64ToTagged/ChangeTaggedToInt32.
Adds new ValueEffect operator to ensure proper scheduling of
AllocateHeapNumber call nodes.
Also includes some refactoring to reduce code duplication.
TEST=compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
481903002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23175
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
akos.palfi@imgtec.com [Mon, 18 Aug 2014 19:37:49 +0000 (19:37 +0000)]
MIPS: Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup.
Port r23168 (
d860963)
BUG=
R=akos.palfi@imgtec.com
Review URL: https://codereview.chromium.org/
473243003
Patch from Balazs Kilvady <balazs.kilvady@imgtec.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23173
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 18 Aug 2014 17:34:11 +0000 (17:34 +0000)]
[Auto-roll] Bump up version to 3.29.6.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
478373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 16:52:23 +0000 (16:52 +0000)]
Add temporary hack compatible with old delete behavior so we can roll into blink. We'll need to update the broken test.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
483753003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 15:08:14 +0000 (15:08 +0000)]
Use LookupIterator in SetAccessor / DefineAccessor and remove "search_hidden_prototypes" from LookupOwn
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
468163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23169
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 15:03:13 +0000 (15:03 +0000)]
Use LookupIterator for CompileLoadInterceptor and delete Object::Lookup
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
466283003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23168
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:59:04 +0000 (14:59 +0000)]
Rename the configuration flags of the LookupIterator
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
469733002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23167
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:46:38 +0000 (14:46 +0000)]
Rewrite DeleteProperty using the LookupIterator
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
468073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23166
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:38:44 +0000 (14:38 +0000)]
Always assume SetOwnPropertyIgnoreAttributes to be CERTAINLY_NOT_FROM_KEYED
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
463963002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23165
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:27:24 +0000 (14:27 +0000)]
Remove the extensibility flag. Instead just rely on hidden_string as indication.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
466033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23164
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 18 Aug 2014 14:26:30 +0000 (14:26 +0000)]
Rewriting SetOwnPropertyIgnoreAttributes using the LookupIterator
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
468493002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23163
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 18 Aug 2014 14:04:11 +0000 (14:04 +0000)]
[Auto-roll] Bump up version to 3.29.5.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
480993002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23162
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 18 Aug 2014 13:28:10 +0000 (13:28 +0000)]
Finish TODO in Schedule. s/entry/start/g and s/exit/end/g to be more regular.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
484653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23161
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 18 Aug 2014 13:09:06 +0000 (13:09 +0000)]
Move some methods from OperatorProperties into Scheduler that are only related to scheduling. Now these methods take a Node* parameter, as decisions relating floating control need distinguish not just operators but nodes.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
474983003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23160
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 18 Aug 2014 12:35:34 +0000 (12:35 +0000)]
Parse 'super' keyword.
BUG=v8:3330
LOG=N
R=arv@chromium.org, marja@chromium.org
Review URL: https://codereview.chromium.org/
480543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23157
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 18 Aug 2014 11:36:06 +0000 (11:36 +0000)]
[turbofan] Add new ControlEffect and Finish operators.
Fix the ChangeLowering to properly use ControlEffect nodes
to turn the control output of IfTrue nodes into an effect
input for the Load nodes, and to properly use Finish nodes
to ensure that allocation and store were both performed
prior to actually using the allocated heap number.
TEST=compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
479163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23149
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 18 Aug 2014 11:10:01 +0000 (11:10 +0000)]
[arm] Recognize comparisons of shifts with zero.
For example, recognize
0 == r1 << r2
and generate a single
MOVS rt, r1, lsl r2
instruction.
TEST=cctest,compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
478233002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23148
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 18 Aug 2014 09:34:17 +0000 (09:34 +0000)]
[Auto-roll] Bump up version to 3.29.4.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
482693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23147
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 18 Aug 2014 09:12:12 +0000 (09:12 +0000)]
Work-around weird GCC 4.6 linker issue with SmiTagging template.
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
485653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23146
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 18 Aug 2014 08:59:55 +0000 (08:59 +0000)]
Remove dead data structure in Scheduler.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
478253002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23145
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 18 Aug 2014 08:51:35 +0000 (08:51 +0000)]
Correctly handle holes when concat()ing double arrays
BUG=chromium:403409
LOG=y
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
468863003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23144
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 18 Aug 2014 08:43:11 +0000 (08:43 +0000)]
Fix PromiseHasRejectHandler.
The odd-numbered items in the queue are deferred objects, not promises.
R=aandrey@chromium.org
Review URL: https://codereview.chromium.org/
473803003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23143
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 18 Aug 2014 07:56:14 +0000 (07:56 +0000)]
[arm] Shorter test names for parameterized tests.
See https://codereview.chromium.org/
475823002 for the discussion.
TEST=compiler-unittests
R=jarin@chromium.org
BUG=v8:3489
LOG=n
Review URL: https://codereview.chromium.org/
483643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23142
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 18 Aug 2014 07:54:19 +0000 (07:54 +0000)]
Purge unused internalized string accessors.
R=marja@chromium.org
Review URL: https://codereview.chromium.org/
471923002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23141
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 18 Aug 2014 06:54:07 +0000 (06:54 +0000)]
Refactor ChangeLowering class to avoid template specialization.
Also refactor the unit tests and add support to easily
match DAGs using CaptureEq() matcher.
TEST=compiler-unittests
BUG=v8:3489
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
480863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23140
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Sat, 16 Aug 2014 21:34:13 +0000 (21:34 +0000)]
[Auto-roll] Bump up version to 3.29.3.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
482523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23138
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Sat, 16 Aug 2014 18:58:13 +0000 (18:58 +0000)]
During graph scheduling, traverse the roots in one go.
This makes the scheduler more than 30x faster on zlib.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
474963002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23137
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 15 Aug 2014 17:04:18 +0000 (17:04 +0000)]
[Auto-roll] Bump up version to 3.29.2.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
479563004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23135
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Fri, 15 Aug 2014 14:35:00 +0000 (14:35 +0000)]
[turbofan]: Fix TurboFan for out-of-line constant pool on Arm.
Use LeaveFrame so that the constant pool pointer register is correctly restored
when using the out-of-line constant pool. Also clean up duplicate code in
builtins-arm.cc.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
469283002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23134
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 14 Aug 2014 15:34:12 +0000 (15:34 +0000)]
[Auto-roll] Bump up version to 3.29.1.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
473943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23132
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Thu, 14 Aug 2014 15:23:01 +0000 (15:23 +0000)]
MIPS: Fix deoptimization entry table when branch cannot reach.
This fixes failures when table has more than 8192 entries, and preserves
optimization to have 2 instructions per entry.
TEST=mozilla/regress-398085-01
BUG=
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
477623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23131
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 14 Aug 2014 13:24:57 +0000 (13:24 +0000)]
Enable access check tests that no longer fail with TF.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
473873002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23130
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 14 Aug 2014 13:02:49 +0000 (13:02 +0000)]
Rewrite GetAccessor using the LookupIterator
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
467293003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23129
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 14 Aug 2014 12:24:37 +0000 (12:24 +0000)]
Deprecate LoweringBuilder in favor of Reducer.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
476733002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23128
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 14 Aug 2014 11:31:42 +0000 (11:31 +0000)]
Remove the flaky store buffer test for maps.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
471953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23127
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 14 Aug 2014 10:24:19 +0000 (10:24 +0000)]
Fix OrderedHashTabelIterator accessors.
They might be undefined for uninitialized iterators.
The rest of the code is ready for this eventuality.
R=arv@chromium.org, adamk@chromium.org
BUG=403292
LOG=N
Review URL: https://codereview.chromium.org/
468813003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23126
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 14 Aug 2014 09:52:21 +0000 (09:52 +0000)]
Enable more tests for simplified lowering after assuming signed for word32.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
461933002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23125
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 14 Aug 2014 09:31:52 +0000 (09:31 +0000)]
Really fix windows now.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
472783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23124
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 14 Aug 2014 09:24:40 +0000 (09:24 +0000)]
Fix MSVC build.
And while we are at it, use the stupid MSVC compiler intrinsics.
TEST=base-unittests/BitTest
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
473773003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23123
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 14 Aug 2014 09:19:54 +0000 (09:19 +0000)]
Unify MachineType and RepType.
MachineType now tracks both the representation and the value type of machine quantities and is used uniformly throughout TurboFan.
These types can now express uint8, int8, uint16, and int16, i.e. signed and unsigned smallish integers. Note that currently only uint8 and uint16 are implemented in the TF backends.
R=bmeurer@chromium.org, mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
470593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23122
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 14 Aug 2014 09:07:58 +0000 (09:07 +0000)]
[turbofan] Introduce WordRor machine operator.
Move recognition of rotate-right operations to the
MachineOperatorReducer, so we don't need to repeat that in the
InstructionSelector for every backend.
TEST=base-unittests,compiler-unittests,cctests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
469213002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23121
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 14 Aug 2014 09:05:28 +0000 (09:05 +0000)]
Fast-forward version number on bleeding_edge to 3.29.0
BUG=none
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
470083002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23120
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 14 Aug 2014 08:40:11 +0000 (08:40 +0000)]
Revert 23058 - "Allow externalizing cons and sliced string."
Reason for revert: broke inspector
| Fulfill overdue TODO.
|
| R=mstarzinger@chromium.org
|
| Review URL: https://codereview.chromium.org/
460643002
TBR=yangguo@chromium.org,mstarzinger@chromium.org
BUG=403521
LOG=n
Review URL: https://codereview.chromium.org/
470913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23115
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 14 Aug 2014 07:41:33 +0000 (07:41 +0000)]
Fix pointer iteration for maps.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
475463003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23114
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 14 Aug 2014 07:11:44 +0000 (07:11 +0000)]
Fix test expectations.
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/
461233003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23113
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 14 Aug 2014 06:57:48 +0000 (06:57 +0000)]
Ignore default reject handler when looking for reject handlers.
LOG=N
BUG=v8:3093
R=aandrey@chromium.org
Review URL: https://codereview.chromium.org/
461023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23112
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 14 Aug 2014 06:33:50 +0000 (06:33 +0000)]
[turbofan] Refactor the InstructionSelector tests.
Also fix some issues and improve test coverage.
TEST=compiler-unittests
BUG=v8:3489
LOG=y
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
469743002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23111
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 13 Aug 2014 14:47:32 +0000 (14:47 +0000)]
Fix non-TF target build after r23107.
TBR=jarin@chromium.org
TEST=cctest/test-run-deopt
Review URL: https://codereview.chromium.org/
473453002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23110
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Wed, 13 Aug 2014 14:43:22 +0000 (14:43 +0000)]
MIPS: Fix DCHECK failure in simulator for fp32 mode.
TEST=mjsunit tests in debug
BUG=
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
467203002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23109
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Wed, 13 Aug 2014 14:34:15 +0000 (14:34 +0000)]
ES6: Make Map/Set constructors support iterable values
Same for WeakMap/WeakSet
https://bugs.ecmascript.org/show_bug.cgi?id=3111
The change from the reverted version is that LoadIC_Miss now uses Name
instead of String.
BUG=v8:3508
LOG=Y
R=adamk@chromium.org, dslomov@chromium.org
Review URL: https://codereview.chromium.org/
464093002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23108
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 13 Aug 2014 14:09:50 +0000 (14:09 +0000)]
Move %IsOptimized runtime helper into test case.
R=jarin@chromium.org
TEST=cctest/test-run-deopt
Review URL: https://codereview.chromium.org/
468153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23107
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 13 Aug 2014 14:05:37 +0000 (14:05 +0000)]
Simplify public pipeline interface.
R=sigurds@chromium.org
Review URL: https://codereview.chromium.org/
471563002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23106
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
aandrey@chromium.org [Wed, 13 Aug 2014 13:06:30 +0000 (13:06 +0000)]
Expose Value::IsArgumentsObject in V8 API.
R=yangguo@chromium.org, svenpanne@chromium.org, yangguo
Review URL: https://codereview.chromium.org/
460333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23105
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 13 Aug 2014 12:38:22 +0000 (12:38 +0000)]
Temporary workaround for scheduler running OOM.
R=titzer@chromium.org
TEST=benchmarks/octane/zlib
Review URL: https://codereview.chromium.org/
468863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23104
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 13 Aug 2014 12:36:09 +0000 (12:36 +0000)]
Allow use of phase-local zone in GenericGraphVisit.
R=titzer@chromium.org, bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
467103003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23103
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 13 Aug 2014 11:46:05 +0000 (11:46 +0000)]
Remove a brittle assertion from Turbofan lazy deoptimization handling.
As discussed in person with Benedikt, it is better to remove the assertion because it is too brittle. The assertion says that the continuation block should immediately follow the call. However, there are exceptions - such as nop or constant pool in-between being fine - that make the assertion brittle.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
471523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23102
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 13 Aug 2014 11:14:35 +0000 (11:14 +0000)]
Move Promise tracking from debug to isolate.
This prepares for tracking promise rejections when debugger is off.
R=aandrey@chromium.org
Review URL: https://codereview.chromium.org/
462413003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23101
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00