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
mstarzinger@chromium.org [Tue, 12 Aug 2014 13:33:35 +0000 (13:33 +0000)]
Fix newly discovered presubmit errors.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
462033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23081
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 12 Aug 2014 13:09:09 +0000 (13:09 +0000)]
Add print-to-file for turbofan tracing.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
460723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23080
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 12 Aug 2014 12:53:14 +0000 (12:53 +0000)]
Revert 23077 - "Use CommonNodeCache for heap constants in ChangeLowering."
Breaks compilation on Mac64
| TEST=compiler-unittests
| R=jarin@chromium.org
|
| Committed: https://code.google.com/p/v8/source/detail?r=23077
TBR=bmeurer@chromium.org,jarin@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
456843004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23079
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 12 Aug 2014 12:41:50 +0000 (12:41 +0000)]
Fix presubmit error with explicit constructor in test.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
462813003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23078
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 12 Aug 2014 12:37:50 +0000 (12:37 +0000)]
Use CommonNodeCache for heap constants in ChangeLowering.
TEST=compiler-unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
466673004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23077
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Tue, 12 Aug 2014 12:30:45 +0000 (12:30 +0000)]
ARM64: Enable TF tests.
Updated the test status file accordingly.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
459093002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23076
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 12 Aug 2014 12:30:22 +0000 (12:30 +0000)]
Reduce redundant phi nodes after graph building.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
461003002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23075
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Tue, 12 Aug 2014 12:20:39 +0000 (12:20 +0000)]
Provide mutators in NodeProperties instead of exposing indicies.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
462633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23074
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 12 Aug 2014 11:46:46 +0000 (11:46 +0000)]
Whitespace change to trigger bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23073
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 12 Aug 2014 10:48:37 +0000 (10:48 +0000)]
Whitespace change to trigger bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23072
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 12 Aug 2014 09:52:39 +0000 (09:52 +0000)]
Tests for ChangeLowering are target tests since they use the Linkage.
This fixes MIPS.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
463803003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23071
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 12 Aug 2014 09:48:52 +0000 (09:48 +0000)]
Rename COMPILER_TEST to TARGET_TARGET.
The name COMPILER_TEST is misleading here.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
465913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23070
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 12 Aug 2014 08:30:13 +0000 (08:30 +0000)]
Fix windows build.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
464773002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23069
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 12 Aug 2014 08:24:20 +0000 (08:24 +0000)]
Initial import of ChangeLowering.
ChangeLowering is a Reducer to lower simplified change operators
to machine subgraphs. This initial version supports ChangeBitToBool,
ChangeBoolToBit, ChangeTaggedToFloat64 and ChangeInt32ToTagged.
TEST=compiler-unittests/change-lowering-unittest
BUG=v8:3489
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
460593003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23068
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 12 Aug 2014 08:09:24 +0000 (08:09 +0000)]
Assume signed for converting to word32/float64 unless use or output is explicitly unsigned.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
461653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23067
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 12 Aug 2014 08:06:02 +0000 (08:06 +0000)]
Disable code generation in tests that use GraphBuilderTester on platforms that have no TF backend.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
457343003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23066
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 12 Aug 2014 02:04:25 +0000 (02:04 +0000)]
[Auto-roll] Bump up version to 3.28.70.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
466603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23062
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 11 Aug 2014 22:17:19 +0000 (22:17 +0000)]
Fix presubmit error.
No idea why they suddenly started to appear.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
458743005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23061
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 11 Aug 2014 21:44:08 +0000 (21:44 +0000)]
Revert "Add "own" symbols support."
This reverts commit r23056 for breaking Mac x64 test.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
460803003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23060
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 19:44:33 +0000 (19:44 +0000)]
Skip test with TF on GC stress.
BUG=
Review URL: https://codereview.chromium.org/
465643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23059
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 11 Aug 2014 19:38:01 +0000 (19:38 +0000)]
Allow externalizing cons and sliced string.
Fulfill overdue TODO.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
460643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23058
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 11 Aug 2014 19:24:05 +0000 (19:24 +0000)]
ToNumber(Symbol) should throw TypeError
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tonumber
Based on patch from caitp <caitpotter88@gmail.com>
https://codereview.chromium.org/
454233002/
BUG=v8:3499
LOG=Y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
458753004
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23057
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 11 Aug 2014 18:59:38 +0000 (18:59 +0000)]
Add "own" symbols support.
"Own" symbols are symbols that can only denote own properties of
objects.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
464473002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23056
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
paul.lind@imgtec.com [Mon, 11 Aug 2014 18:54:40 +0000 (18:54 +0000)]
MIPS: Fix test-simplified-lowering to pass without tf implemention.
GenerateCode() only for SupportedTarget() in 3 places, as in the
other tests here.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
459913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23055
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 18:28:54 +0000 (18:28 +0000)]
Revert "Enable C++11 tests on windows."
This reverts commit r23052. This sets a new landmine.
TBR=jochen@chromium.org
BUG=400033
LOG=n
Review URL: https://codereview.chromium.org/
465583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23054
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 16:18:49 +0000 (16:18 +0000)]
Revert "Reland "MIPS: Add support for arch. revision 6 to mips32 port.""
This reverts commit r23050 for breaking runhooks on chromium.
See e.g.:
http://build.chromium.org/p/client.v8/builders/Chrome%20Linux%20Perf/builds/1438/steps/runhooks/logs/stdio
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/
458983003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23053
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 16:10:29 +0000 (16:10 +0000)]
Enable C++11 tests on windows.
This also adds a landmine as windows bots need a clobber.
BUG=400033
LOG=n
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
457413003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23052
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 11 Aug 2014 15:55:28 +0000 (15:55 +0000)]
Move MachineRepresentation to machine-type.h and rename to MachineType in preparation for merging it with RepType.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
456333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23051
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Mon, 11 Aug 2014 15:46:32 +0000 (15:46 +0000)]
Reland "MIPS: Add support for arch. revision 6 to mips32 port."
Original commit r23028 breaks ARM64 build due to conflicting FP64 symbolic constant definition in src/globals.h and src/arm64/constants-arm64.h.
TEST=
BUG=
R=jkummerow@chromium.org, paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
457313003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23050
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Mon, 11 Aug 2014 15:40:11 +0000 (15:40 +0000)]
ARM64: minor corrections for TF.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
462573002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23049
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 11 Aug 2014 14:54:15 +0000 (14:54 +0000)]
Change the type of the cache so we can check whether it is there
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
457333003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23048
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 11 Aug 2014 14:22:24 +0000 (14:22 +0000)]
Move store-buffer to heap and remove some unnecessary includes.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
463523002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23046
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 11 Aug 2014 14:16:43 +0000 (14:16 +0000)]
When dumping the stack, try to print contents as ASCII
This makes it easier to find strings that are on the stack for debugging
BUG=none
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
132503005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23045
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 14:07:08 +0000 (14:07 +0000)]
Skip gmock and gtest in presubmit.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
454693004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23044
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 11 Aug 2014 14:04:37 +0000 (14:04 +0000)]
Small clean up of externalizing strings.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
462643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23043
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 11 Aug 2014 14:00:58 +0000 (14:00 +0000)]
Tag all prototypes as proto, except those set using __proto__
BUG=
R=ishell@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
450303003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23042
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 11 Aug 2014 13:45:00 +0000 (13:45 +0000)]
Fix precisely sweeping asserts.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
463503002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23041
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 11 Aug 2014 13:10:54 +0000 (13:10 +0000)]
Fix clang build; remove dead private field.
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
460683003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23040
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 11 Aug 2014 13:07:32 +0000 (13:07 +0000)]
Remove duplication in Scheduler and simplify interface. Make ComputeSchedule() and ComputeSpecialRPO() the only interface used by clients.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
460633002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23039
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 11 Aug 2014 12:57:25 +0000 (12:57 +0000)]
Replace Strings with Names in load and store ICs.
Mostly mechanical, the only interesting change is in KeyedLoadIC::Load, where we now handle x[symbol] in the same way we handle x['string']
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
461603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23038
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 11 Aug 2014 12:46:03 +0000 (12:46 +0000)]
Measure incremental marking speed in bytes per millisecond based on pure incremental marking steps.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
463453002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23035
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 12:34:12 +0000 (12:34 +0000)]
[Auto-roll] Bump up version to 3.28.68.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
456343003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23034
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 11 Aug 2014 12:26:17 +0000 (12:26 +0000)]
Reland "More lazy deoptimization in Turbofan (binops, loads/stores)"
This relands commit r23029 + adds missing lazy deopts for JSAdd operator inside VisitForInStatement. The added lazy deopt still refers to a bogus bailout id, but at least the graphs can be scheduled.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
450103004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23033
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 12:14:45 +0000 (12:14 +0000)]
Whitespace change to trigger bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23032
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 11 Aug 2014 11:21:51 +0000 (11:21 +0000)]
Revert "More lazy deoptimization in Turbofan (binops, loads/stores)"
This reverts commit r23029.
BUG=
TBR=eisinger@chromium.org
Review URL: https://codereview.chromium.org/
460623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23031
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 11 Aug 2014 11:01:06 +0000 (11:01 +0000)]
Revert 23028 - "MIPS: Add support for arch. revision 6 to mips32 port."
Breaks compilation of ARM64.
| Additional summary:
| - Introduce fp64 fpu mode into mips32 port required for r6.
| - Implement runtime detections for fpu mode and arch. revision to preserve
| compatibility with previous architecture revisions.
|
| TEST=
| BUG=
| R=jkummerow@chromium.org, paul.lind@imgtec.com
|
| Review URL: https://codereview.chromium.org/
453043002
BUG=none
LOG=n
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
458193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23030
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 11 Aug 2014 10:42:01 +0000 (10:42 +0000)]
More lazy deoptimization in Turbofan (binops, loads/stores)
Deoptimizing binory operations, (Load|Store)(Property|Named),
constructors.
This also fixes safepoint lookup to account for lazily deoptimized code.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
453383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23029
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Mon, 11 Aug 2014 10:40:25 +0000 (10:40 +0000)]
MIPS: Add support for arch. revision 6 to mips32 port.
Additional summary:
- Introduce fp64 fpu mode into mips32 port required for r6.
- Implement runtime detections for fpu mode and arch. revision to preserve
compatibility with previous architecture revisions.
TEST=
BUG=
R=jkummerow@chromium.org, paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
453043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23028
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 11 Aug 2014 10:06:36 +0000 (10:06 +0000)]
Fix size_t/int conversions for Win64.
TBR=jochen@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
459763002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23027
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 11 Aug 2014 09:40:02 +0000 (09:40 +0000)]
Implement representation selection as part of SimplifiedLowering. Representation selection also
requires inserting explicit representation change nodes to be inserted in the graph. Such nodes
are pure, but also need to be lowered to machine operators. They need to be scheduled first, to
determine the control input for any branches inside.
This CL requires extensive testing. More tests to follow.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
425003004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23026
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 09:16:14 +0000 (09:16 +0000)]
Skip test that times out.
BUG=v8:3503
LOG=n
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/
458133002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23025
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 11 Aug 2014 07:59:10 +0000 (07:59 +0000)]
Make %DebugPushPromise more robust wrt fuzzing.
If %DebugPushPromise and throwing is called outside its intended context,
we may encounter assertion failures.
R=hpayer@chromium.org
BUG=401915
LOG=N
Review URL: https://codereview.chromium.org/
453933002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23023
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 11 Aug 2014 07:33:58 +0000 (07:33 +0000)]
Revert "Initial shot at deoptimizing JSCallFunction in Turbofan."
This reverts commit r23020.
BUG=
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
453363003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23022
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 07:04:14 +0000 (07:04 +0000)]
[Auto-roll] Bump up version to 3.28.67.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
458583003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23021
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 11 Aug 2014 06:55:16 +0000 (06:55 +0000)]
Initial shot at deoptimizing JSCallFunction in Turbofan.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
444883006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23020
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 11 Aug 2014 06:44:17 +0000 (06:44 +0000)]
Whitespace change to trigger bots.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23019
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 11 Aug 2014 04:04:39 +0000 (04:04 +0000)]
Android fix for gtest.gyp.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
453363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23018
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Sat, 9 Aug 2014 14:04:12 +0000 (14:04 +0000)]
[Auto-roll] Bump up version to 3.28.66.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
451273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23016
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Sat, 9 Aug 2014 10:02:42 +0000 (10:02 +0000)]
Fix GN build.
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
459623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23013
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00