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
titzer@chromium.org [Wed, 13 Aug 2014 10:30:00 +0000 (10:30 +0000)]
Add FOR_INT32_SHIFTS to value-helper.h
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
470533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23100
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Wed, 13 Aug 2014 10:29:22 +0000 (10:29 +0000)]
ARM64: unit tests for instruction selection.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
464773004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23099
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 13 Aug 2014 10:23:17 +0000 (10:23 +0000)]
Disable some deoptimization tests on ARM64 no-snap.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
471483002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23098
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 13 Aug 2014 10:22:53 +0000 (10:22 +0000)]
Revert "Refactor building of lazy bailouts in AstGraphBuilder."
This reverts commit r23096.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
470573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23097
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 13 Aug 2014 09:23:35 +0000 (09:23 +0000)]
Refactor building of lazy bailouts in AstGraphBuilder.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
464033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23096
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 12 Aug 2014 21:42:27 +0000 (21:42 +0000)]
Revert "ES6: Make Map/Set constructors support iterable values"
Reason for revert:
TestSetConstructorIterableValue(WeakSet) fails on x64.debug
TBR=adamk@chromium.org,dslomov@chromium.org
LOG=Y
BUG=
Review URL: https://codereview.chromium.org/
461193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23093
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 12 Aug 2014 20:09:40 +0000 (20:09 +0000)]
ES6: Make Map/Set constructors support iterable values
Same for WeakMap/WeakSet
https://bugs.ecmascript.org/show_bug.cgi?id=3111
BUG=v8:3508
LOG=Y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
466003002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23091
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 12 Aug 2014 19:54:52 +0000 (19:54 +0000)]
WeakMap/WeakSet: Add test for non object keys
Add test for non object keys in the iterable passed to the constructor.
BUG=v8:3399
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
451033003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23090
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 12 Aug 2014 19:34:16 +0000 (19:34 +0000)]
[Auto-roll] Bump up version to 3.28.72.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
466863002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23089
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Tue, 12 Aug 2014 19:04:15 +0000 (19:04 +0000)]
Reland "MIPS: Add support for arch. revision 6 to mips32 port."
Fixing gclient runhooks failure caused by reverted commit r23050.
TEST=
BUG=
R=jkummerow@chromium.org, paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
467583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23088
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 12 Aug 2014 17:54:41 +0000 (17:54 +0000)]
Fix predictable mode to make time pass faster.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
460413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23087
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 12 Aug 2014 15:29:03 +0000 (15:29 +0000)]
Old space cannot be assumed to be iterable between GCs, even if swept precisely.
This is because allocation folding can cause uninitialized and hence uniterable fragments. Trying to inspect them causes SizeFromMap() crashes.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
467693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23084
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 12 Aug 2014 15:28:20 +0000 (15:28 +0000)]
Add "own" symbols support.
"Own" symbols are symbols that can only denote own properties of
objects.
R=hpayer@chromium.org, verwaest@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=23056
Review URL: https://codereview.chromium.org/
464473002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23083
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 12 Aug 2014 13:36:33 +0000 (13:36 +0000)]
Implement Math.log1p using port from fdlibm.
Port contributed by Raymond Toy <rtoy@google.com>.
R=rtoy@chromium.org
LOG=N
BUG=v8:3481
Review URL: https://codereview.chromium.org/
457643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23082
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00