mvstanton@chromium.org [Tue, 28 Oct 2014 14:50:18 +0000 (14:50 +0000)]
Introduce FeedbackNexus for vector-based ics.
A FeedbackNexus is the combination of a feedback vector, a slot(s) in
the vector, along with methods to query and manipulate that information
in a type-correct way.
A CallIC will have a CallICNexus, a LoadIC a LoadICNexus, etc.,
reflecting the fact that different types of ICs configure their data
in unique ways.
This CL limits itself to introducing and using the nexus type only for
CallICs. A follow-up will use them for Load and KeyedLoadICs for the
case when the --vector-ics flag is turned on.
The notion of a Nexus is also embedded at the lowest level of the IC
class. This makes sense because more ICs should become vector-based
in the future.
This CL is based on https://codereview.chromium.org/
679073002/ which
should land first.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
680883004
Cr-Commit-Position: refs/heads/master@{#24945}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24945
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 28 Oct 2014 14:47:32 +0000 (14:47 +0000)]
[Sheriff] Skip tests that fail with TF on arm64.
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
687653002
Cr-Commit-Position: refs/heads/master@{#24944}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24944
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 28 Oct 2014 14:12:18 +0000 (14:12 +0000)]
Classes: Add more tests for prototype edge cases
BUG=3655
LOG=Y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
687453004
Cr-Commit-Position: refs/heads/master@{#24943}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24943
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 28 Oct 2014 13:56:26 +0000 (13:56 +0000)]
[turbofan] Complete support for integer division/modulus in simplified lowering.
Also add backend flags that tell whether integer division/modulus is
generally safe, i.e. does not trap on overflow or divide by zero.
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
681133004
Cr-Commit-Position: refs/heads/master@{#24942}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24942
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 28 Oct 2014 13:53:53 +0000 (13:53 +0000)]
Use a simpler KeyedStoreGeneric stub
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
674913002
Cr-Commit-Position: refs/heads/master@{#24941}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24941
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 28 Oct 2014 13:42:58 +0000 (13:42 +0000)]
Improve branch creation in release scripts.
Use 'git new-branch' for creating new branches.
BUG=410721
LOG=n
TEST=script_test.py
R=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
680173003
Cr-Commit-Position: refs/heads/master@{#24940}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24940
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 28 Oct 2014 13:39:41 +0000 (13:39 +0000)]
Classes: Add test for method prototype
Methods should not have a prototype property
BUG=v8:3330
LOG=y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
678103004
Cr-Commit-Position: refs/heads/master@{#24939}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24939
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
aandrey@chromium.org [Tue, 28 Oct 2014 13:24:36 +0000 (13:24 +0000)]
Get stack trace for uncaught exceptions/promise rejections from the simple stack when available.
We can convert simple stack trace of an Error object to the detailed stack that
is used for debugging. Do so when available, and only then fall back to
reporting stack trace at throw site.
R=yangguo@chromium.org, Yang
LOG=Y
Review URL: https://codereview.chromium.org/
674423002
Cr-Commit-Position: refs/heads/master@{#24938}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24938
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Tue, 28 Oct 2014 13:23:54 +0000 (13:23 +0000)]
Move AST node counting to post-pass
R=mstarzinger@chromium.org, svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
683023002
Cr-Commit-Position: refs/heads/master@{#24937}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24937
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 28 Oct 2014 13:14:53 +0000 (13:14 +0000)]
Silence control reducer tracing a bit.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
687553002
Cr-Commit-Position: refs/heads/master@{#24936}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24936
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 28 Oct 2014 13:00:11 +0000 (13:00 +0000)]
[turbofan] LoadElement should not have a control input.
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
685723002
Cr-Commit-Position: refs/heads/master@{#24935}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24935
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 28 Oct 2014 12:43:05 +0000 (12:43 +0000)]
Classes: Add basic support for properties
This adds the properties to the prototype and the constructor.
BUG=v8:3330
LOG=Y
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
680993003
Cr-Commit-Position: refs/heads/master@{#24934}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24934
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
arv@chromium.org [Tue, 28 Oct 2014 12:23:26 +0000 (12:23 +0000)]
Allow duplicate property names in classes
ES6 no longer makes duplicate properties an error. However, we
continue to treat duplicate properties in strict mode object
literals as errors. With this change we allow duplicate properties
in class bodies. We continue to flag duplicate constructors as an
error as required by ES6.
BUG=v8:3570
LOG=Y
R=marja@chromium.org
Review URL: https://codereview.chromium.org/
677953004
Cr-Commit-Position: refs/heads/master@{#24933}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24933
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 28 Oct 2014 12:09:48 +0000 (12:09 +0000)]
Removed non-existent files from gyp and GN builds.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
682793005
Cr-Commit-Position: refs/heads/master@{#24932}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24932
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 28 Oct 2014 11:57:20 +0000 (11:57 +0000)]
[turbofan] Reduce (x & K) & K to x & K.
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
685713002
Cr-Commit-Position: refs/heads/master@{#24931}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24931
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 28 Oct 2014 11:38:22 +0000 (11:38 +0000)]
Make floating merges respected minimum RPO of coupled phis.
R=bmeurer@chromium.org, jarin@chromium.org
TEST=cctest/test-scheduler/LoopedFloatingDiamond
Review URL: https://codereview.chromium.org/
682983003
Cr-Commit-Position: refs/heads/master@{#24930}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24930
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 28 Oct 2014 10:00:37 +0000 (10:00 +0000)]
Use shared function info for eval cache key.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
678843004
Cr-Commit-Position: refs/heads/master@{#24927}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24927
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 28 Oct 2014 09:54:00 +0000 (09:54 +0000)]
[turbofan] Work-around stack overflow in zlib.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
678323002
Cr-Commit-Position: refs/heads/master@{#24926}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24926
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 28 Oct 2014 09:44:16 +0000 (09:44 +0000)]
Prevent recursion in the debug event listener.
R=ulan@chromium.org
BUG=chromium:409614
LOG=N
Review URL: https://codereview.chromium.org/
684573005
Cr-Commit-Position: refs/heads/master@{#24924}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24924
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 28 Oct 2014 09:34:35 +0000 (09:34 +0000)]
Switch schedule early phase to use forward propagation.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
655833005
Cr-Commit-Position: refs/heads/master@{#24923}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24923
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 28 Oct 2014 08:55:28 +0000 (08:55 +0000)]
Windows: use SystemTimeToTzSpecificLocalTime instead of localtime_s.
The localtime_s function produces incorrect results for russian time zone.
BUG=chromium:417640
LOG=Y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
654843012
Cr-Commit-Position: refs/heads/master@{#24922}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24922
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 28 Oct 2014 08:43:15 +0000 (08:43 +0000)]
move functions in v8::V8 that should be on v8::Isolate
R=marja@chromium.org, svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
652193006
Cr-Commit-Position: refs/heads/master@{#24921}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24921
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 28 Oct 2014 08:34:11 +0000 (08:34 +0000)]
Fix ASAN warning.
BUG=
TBR=ishell@chromium.org
Review URL: https://codereview.chromium.org/
683033002
Cr-Commit-Position: refs/heads/master@{#24920}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24920
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 28 Oct 2014 08:33:52 +0000 (08:33 +0000)]
[turbofan] Improve typed lowering for JSToBoolean.
- JSToBoolean(x:string) => BooleanNot(NumberEqual(x.length, #0))
- JSToBoolean(phi(x1,...,xn):primitive) => phi(JSToBoolean(x1),...,JSToBoolean(xn))
TEST=cctest,mjsunit/asm/do-while,mjsunit/boolean,unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
681223002
Cr-Commit-Position: refs/heads/master@{#24919}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24919
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 28 Oct 2014 08:33:03 +0000 (08:33 +0000)]
[turbofan] Turn slow case for stack check into deferred code.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
687473002
Cr-Commit-Position: refs/heads/master@{#24918}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24918
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 28 Oct 2014 08:28:36 +0000 (08:28 +0000)]
[turbofan] Minor cleanups to lowering of typed array loads/stores.
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
680063004
Cr-Commit-Position: refs/heads/master@{#24917}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24917
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 27 Oct 2014 22:33:52 +0000 (22:33 +0000)]
Revert "[turbofan] Merge GenericNode with Node."
This reverts commit
a238443c00ebbd8afb48ee7ad336e0ff163c84b5 (r24915)
for tanking benchmarks.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
684693002
Cr-Commit-Position: refs/heads/master@{#24916}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24916
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 27 Oct 2014 20:36:56 +0000 (20:36 +0000)]
[turbofan] Merge GenericNode with Node.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
676353002
Cr-Commit-Position: refs/heads/master@{#24915}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24915
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dusan.milosavljevic@imgtec.com [Mon, 27 Oct 2014 18:24:05 +0000 (18:24 +0000)]
Make NextCodeLink pointer 8-byte aligned after GC pointer updating uses atomics.
After r24737 pointer updating is done by atomic operations which strictly
require target address to be 8-byte alignment on MIPS64.
The alignment is broken on 64-bit arches because InstructionSize is first field
and has Int size.
Order of fields in object layout are changed to make kNextCodeLinkOffset
divisible by 8. The size of code object header remains the same.
TEST=cctest/test-debug/* on MIPS64
BUG=
R=jkummerow@chromium.org, paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
682673002
Cr-Commit-Position: refs/heads/master@{#24914}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24914
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 27 Oct 2014 16:58:38 +0000 (16:58 +0000)]
Fix for the cctest compilation issue on Mac after r24911.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
667153005
Cr-Commit-Position: refs/heads/master@{#24913}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24913
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 27 Oct 2014 16:40:04 +0000 (16:40 +0000)]
Add serializer test case to bug fix in r24871.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
680883003
Cr-Commit-Position: refs/heads/master@{#24912}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24912
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 27 Oct 2014 16:34:28 +0000 (16:34 +0000)]
A type vector with multiple IC types needs metadata.
This CL adds a bitset to describe the type of IC in each IC slot.
This is necessary for clearing ICs of different types.
With FLAG_vector_ics off (the current state), it's not required because
CALL_IC is the only type of IC in the vector.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
679073002
Cr-Commit-Position: refs/heads/master@{#24911}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24911
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Mon, 27 Oct 2014 16:25:11 +0000 (16:25 +0000)]
Revert "Move AST node counting to post-pass"
This reverts commit
698356720824559a6bd81c24be707b44ac277526 for
breaking regress-96526-002 among other things.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
678033002
Cr-Commit-Position: refs/heads/master@{#24910}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24910
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Mon, 27 Oct 2014 15:00:09 +0000 (15:00 +0000)]
Move AST node counting to post-pass
R=mstarzinger@chromium.org, svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
675493002
Cr-Commit-Position: refs/heads/master@{#24909}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24909
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 27 Oct 2014 14:36:36 +0000 (14:36 +0000)]
Revert "Enable turbofan deoptimization by default."
This reverts commit
866032692ff59ac4282e6d1a483cbb52870cc784 for breaking
tests.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
681713004
Cr-Commit-Position: refs/heads/master@{#24908}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24908
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Mon, 27 Oct 2014 13:04:46 +0000 (13:04 +0000)]
SimpleMove now calls [[Has]] before [[Get]] when moving elements
BUG=v8:3643
LOG=n
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
678753002
Cr-Commit-Position: refs/heads/master@{#24907}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24907
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 27 Oct 2014 12:57:50 +0000 (12:57 +0000)]
Remove unused return values from PreEdge visitor.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
679093002
Cr-Commit-Position: refs/heads/master@{#24906}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24906
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 27 Oct 2014 12:46:44 +0000 (12:46 +0000)]
Enable turbofan deoptimization by default.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
638833004
Cr-Commit-Position: refs/heads/master@{#24905}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24905
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 27 Oct 2014 12:39:20 +0000 (12:39 +0000)]
[turbofan] reduce allocations outside of pipeline
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
679793003
Cr-Commit-Position: refs/heads/master@{#24904}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24904
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 27 Oct 2014 12:37:40 +0000 (12:37 +0000)]
Revert "Make all references from root shortcuts (except one to GC roots)"
This reverts commit
940418d2e1150499a28cca60b5dd138d351ec652. It resulted in orphan (Document DOM trees) and (Detached DOM trees) nodes.
BUG=chromium:414190
LOG=N
TBR=loislo@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
639753007
Cr-Commit-Position: refs/heads/master@{#24903}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24903
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 27 Oct 2014 12:10:19 +0000 (12:10 +0000)]
Make all references from root shortcuts (except one to GC roots)
Eventually we are going to nuke this shortcuts from root entry altogether. This fix makes (GC roots) retained size equal to the snapshot's total size.
BUG=chromium:414190
LOG=N
R=loislo@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
681743002
Cr-Commit-Position: refs/heads/master@{#24902}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24902
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erikcorry@chromium.org [Mon, 27 Oct 2014 12:03:25 +0000 (12:03 +0000)]
Revert 'Introduce phantom weak handles in the API and use them internally for debug info'
Revert of https://codereview.chromium.org/
649563006/ due to layout test
failures.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
677403002
Cr-Commit-Position: refs/heads/master@{#24901}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24901
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 27 Oct 2014 11:57:58 +0000 (11:57 +0000)]
Revert "Limit the number of transitions allowed per hidden class." Due to crashes in ClearMapTransitions
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
661583004
Cr-Commit-Position: refs/heads/master@{#24900}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24900
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erikcorry@chromium.org [Mon, 27 Oct 2014 11:04:33 +0000 (11:04 +0000)]
Introduce phantom weak handles in the API and use them internally for debug info
R=jochen@chromium.org, ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
649563006
Cr-Commit-Position: refs/heads/master@{#24899}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24899
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 27 Oct 2014 10:29:52 +0000 (10:29 +0000)]
Fix Win64 build after r24896
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
646943007
Cr-Commit-Position: refs/heads/master@{#24898}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24898
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
akos.palfi@imgtec.com [Mon, 27 Oct 2014 10:29:20 +0000 (10:29 +0000)]
Fix non-TF targets after r24874.
Fix mips64 and presumably x87.
BUG=
R=mstarzinger@chromium.org, sigurds@chromium.org
Review URL: https://codereview.chromium.org/
679433004
Patch from Paul Lind <paul.lind@imgtec.com>.
Cr-Commit-Position: refs/heads/master@{#24897}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24897
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 27 Oct 2014 10:12:16 +0000 (10:12 +0000)]
[turbofan] Reduce memory consumption of graph building
Allow reservation of additional input capacity when creating nodes to prevent switching to deque representation when adding well-known additional inputs.
Also ensure that only a single temporary buffer is used to create temporary input arrays before allocating nodes.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
644083003
Cr-Commit-Position: refs/heads/master@{#24896}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24896
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 27 Oct 2014 09:36:51 +0000 (09:36 +0000)]
[turbofan] delete graph and schedule before register allocation.
R=mstarzinger@chromium.org, titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
662513005
Cr-Commit-Position: refs/heads/master@{#24894}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24894
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 27 Oct 2014 09:02:49 +0000 (09:02 +0000)]
pass isolate to Value::To* functions
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
669373002
Cr-Commit-Position: refs/heads/master@{#24893}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24893
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 27 Oct 2014 08:58:55 +0000 (08:58 +0000)]
[turbofan] add absolute peak to stats
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
676693002
Cr-Commit-Position: refs/heads/master@{#24892}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24892
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 27 Oct 2014 08:41:32 +0000 (08:41 +0000)]
Implement control reducer, which reduces branches and phis together in a single fixpoint.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
665223006
Cr-Commit-Position: refs/heads/master@{#24891}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24891
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
paul.lind@imgtec.com [Sun, 26 Oct 2014 22:43:17 +0000 (22:43 +0000)]
MIPS64: Fix bug in super assignment from r24570.
TEST=mjsunit/harmony/super.js
BUG=
R=akos.palfi@imgtec.com
Review URL: https://codereview.chromium.org/
677813002
Cr-Commit-Position: refs/heads/master@{#24889}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24889
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Sun, 26 Oct 2014 12:49:56 +0000 (12:49 +0000)]
[turbofan] Implement the correct semantics for integer division/modulus.
Also fix the sdiv/udiv instructions on ARM as a nice side effect.
TEST=cctest,unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
677483005
Cr-Commit-Position: refs/heads/master@{#24888}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24888
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Sun, 26 Oct 2014 10:44:57 +0000 (10:44 +0000)]
Handle noi18n in deopt.
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
670023003
Cr-Commit-Position: refs/heads/master@{#24887}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24887
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Sun, 26 Oct 2014 10:24:49 +0000 (10:24 +0000)]
Add more missing deopts
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
639883002
Cr-Commit-Position: refs/heads/master@{#24886}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24886
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 24 Oct 2014 19:28:23 +0000 (19:28 +0000)]
Add remaining @@toStringTag symbols to builtins
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
664333003
Patch from Caitlin Potter <caitpotter88@gmail.com>.
Cr-Commit-Position: refs/heads/master@{#24885}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24885
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Fri, 24 Oct 2014 18:07:59 +0000 (18:07 +0000)]
SimpleSlice now calls [[Get]] before [[Has]] when generating copy
SparseSlice does not need this (non-optimal) reordering since its
callers guarantee that [[Get]] has no side effects on the passed-in array.
BUG=v8:3643
LOG=n
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
674003002
Cr-Commit-Position: refs/heads/master@{#24884}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24884
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Fri, 24 Oct 2014 18:04:03 +0000 (18:04 +0000)]
Widen definition of %HasComplexElements() to include non-enumerability
This avoids using the Sparse methods on objects with non-enumerable elements,
which can cause the 'enumerable: false' bit to get lost in the operation.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
672323003
Cr-Commit-Position: refs/heads/master@{#24883}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24883
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Fri, 24 Oct 2014 15:29:19 +0000 (15:29 +0000)]
[arm64] Use logical immediates when matching tst instructions.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
668633003
Cr-Commit-Position: refs/heads/master@{#24882}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24882
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 24 Oct 2014 15:04:02 +0000 (15:04 +0000)]
Fix "jst" GDB macro
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
669383002
Cr-Commit-Position: refs/heads/master@{#24881}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24881
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 24 Oct 2014 15:02:29 +0000 (15:02 +0000)]
Check string literals with escapes in PreParserTraits::GetSymbol()
LOG=Y
BUG=v8:3606
R=arv@chromium.org, marja@chromium.org
Review URL: https://codereview.chromium.org/
615813004
Patch from Caitlin Potter <caitpotter88@gmail.com>.
Cr-Commit-Position: refs/heads/master@{#24880}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24880
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 24 Oct 2014 14:40:43 +0000 (14:40 +0000)]
Whitespace change for testing gnumbd.
Cr-Commit-Position: refs/heads/master@{#24878}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24878
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Fri, 24 Oct 2014 13:57:32 +0000 (13:57 +0000)]
Fix bugs in Scheduler hoisting and RPO loop bounds computations.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
677683002
Cr-Commit-Position: refs/heads/master@{#24877}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24877
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 24 Oct 2014 13:48:02 +0000 (13:48 +0000)]
Add Schedule::InsertBranch to fuse control flow graphs.
R=jarin@chromium.org
TEST=cctest/test-schedule/TestScheduleInsertBranch
Review URL: https://codereview.chromium.org/
675983002
Cr-Commit-Position: refs/heads/master@{#24876}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24876
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 24 Oct 2014 13:21:17 +0000 (13:21 +0000)]
only define ARRAYSIZE_UNSAFE for NaCl builds
Now that C++11 is allowed, we can use arraysize instead of
ARRAYSIZE_UNSAFE, except in NaCl builds. So let's move this
macro inside an NaCl ifdef.
BUG=chromium:405225
LOG=y
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
668303002
Patch from Mostyn Bramley-Moore <mostynb@opera.com>.
Cr-Commit-Position: refs/heads/master@{#24875}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24875
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Fri, 24 Oct 2014 13:06:48 +0000 (13:06 +0000)]
Add Float64Floor, Float64Ceil, Float64RoundTruncate, Float64RoundTiesAway operators.
These operators are not supported by any backends yet, and a backend is free to not support them.
R=bmeurer@chromium.org
TEST=unittest/machine-operator
Review URL: https://codereview.chromium.org/
668173002
Cr-Commit-Position: refs/heads/master@{#24874}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24874
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 24 Oct 2014 13:02:23 +0000 (13:02 +0000)]
AstValueFactory: make true, false, null, undefined and "the hole" unique values.
They were not, so we were creating several instances of them, one for each time
they occurred in the source code.
It's not known to have caused efficiency problems though, so this is a sanity
fix more than an efficiency fix.
Note that numbers are still not unique.
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
657893003
Cr-Commit-Position: refs/heads/master@{#24873}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24873
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 24 Oct 2014 12:41:52 +0000 (12:41 +0000)]
Enable --serialize-toplevel by default.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
661343003
Cr-Commit-Position: refs/heads/master@{#24872}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24872
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 24 Oct 2014 12:40:05 +0000 (12:40 +0000)]
Tweaks to the code serializer.
- consider the source string as a special sort of back reference.
- use repeat op code for more root members.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
674883002
Cr-Commit-Position: refs/heads/master@{#24871}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24871
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 24 Oct 2014 12:39:49 +0000 (12:39 +0000)]
TurboFan calls to vector-based ics need to resolve a slot to an index.
This is to cope with the recent division of the TypeFeedbackVector into
Slots and ICSlots.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
673203002
Cr-Commit-Position: refs/heads/master@{#24870}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24870
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 24 Oct 2014 12:36:45 +0000 (12:36 +0000)]
Improve printing for Symbols.
Private symbols we create in the heap don't have names, but we can
resolve them to a constant string.
This gives handy debugger output like:
(gdb) job 0x2020c67d
0x2020c67d: [Symbol]
- hash:
547385396
- name: 0x20208091 <undefined> (uninitialized_symbol)
- private: 1
- own: 1
$7 = void
(gdb)
or with ShortPrint() in an array:
...
[5]: 0x2020c67d <Symbol:
547385396 (uninitialized_symbol)>
...
Printing help for internal symbols
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
677633003
Cr-Commit-Position: refs/heads/master@{#24869}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24869
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 24 Oct 2014 12:33:58 +0000 (12:33 +0000)]
Use memcpy in List::AddAll for fundamental types.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
663893004
Cr-Commit-Position: refs/heads/master@{#24868}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24868
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 24 Oct 2014 12:32:42 +0000 (12:32 +0000)]
Generate fake basic block for Terminate node.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
650633003
Cr-Commit-Position: refs/heads/master@{#24867}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24867
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 24 Oct 2014 12:28:22 +0000 (12:28 +0000)]
PropertyICCompiler: expose monomorphic keyed load handler creation.
Simple refactoring that is useful for upcoming --vector-ic changes.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
673933005
Cr-Commit-Position: refs/heads/master@{#24866}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24866
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 24 Oct 2014 12:17:17 +0000 (12:17 +0000)]
Whitespace change.
Cr-Commit-Position: refs/heads/master@{#24865}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24865
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 24 Oct 2014 11:58:27 +0000 (11:58 +0000)]
Whitespace change.
Cr-Commit-Position: refs/heads/master@{#24864}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24864
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 24 Oct 2014 09:48:58 +0000 (09:48 +0000)]
Whitespace change to test gnumbd.
TBR=agable@chromium.org
Review URL: https://codereview.chromium.org/
672293006
Cr-Commit-Position: refs/heads/master@{#24863}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24863
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 24 Oct 2014 09:36:40 +0000 (09:36 +0000)]
[x86] Fix register constraints for multiply-high.
TEST=mjsunit/compiler,unittests
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
671393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24862
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 24 Oct 2014 08:37:03 +0000 (08:37 +0000)]
Log code event for deserialized code.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
663453005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24861
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 24 Oct 2014 08:25:00 +0000 (08:25 +0000)]
Unbreak c1visualizer.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
673873004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24860
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 24 Oct 2014 07:34:20 +0000 (07:34 +0000)]
X87: Classes: implement 'new super'.
port r24825.
original commit message:
Classes: implement 'new super'.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
663233003
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24859
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 24 Oct 2014 07:29:39 +0000 (07:29 +0000)]
Make block writes in the serializer more efficient.
And also fix a OOB read in SerializeExternalString.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
671633004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24858
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 24 Oct 2014 05:29:54 +0000 (05:29 +0000)]
Limit the number of transitions allowed per hidden class.
Each time a transition is added to a hidden class, the whole
transitions array must be copied, which causes poor performance
in some circumstances. This change limits the maximum size of
the transition array, avoiding this behavior in the pathological
case. For example, this improves the performance of the EtchMark
benchmark by nearly 60%.
BUG=v8:3616
LOG=
R=verwaest@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
635883003
Patch from Kevin M. McCormick <mckev@amazon.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24857
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Thu, 23 Oct 2014 21:13:29 +0000 (21:13 +0000)]
Fix sparse versions of Array slice/splice to use [[DefineOwnProperty]] to generate return value
BUG=chromium:423633
LOG=n
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
673893002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24856
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Thu, 23 Oct 2014 18:21:50 +0000 (18:21 +0000)]
Narrow cases where Sparse/Smart versions of Array methods are used
Added a new %HasComplexElements runtime function (meaning elements that are
non-writable, non-configurable, or have getters and setters) and use it
in UseSparseVariant to filter out cases where the sparse optimizations
can cause V8 to fall out of spec compliance.
Renamed SmartMove/SmartSlice to SparseMove/SparseSlice and guarded them
with the new and improved UseSparseVariant.
These two changes combine let us pass nearly every test in bug-2615.js,
as well as fixing reverse and join on sparse arrays.
Note that there are various test changes in this patch that correct existing
tests to match the correct-by-spec behavior.
This patch depends on https://codereview.chromium.org/
666883009, which
better-aligns the behavior of SmartMove with SimpleMove.
BUG=v8:2615,v8:3612,v8:3621
LOG=y
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
656423004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24855
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Thu, 23 Oct 2014 17:46:34 +0000 (17:46 +0000)]
Change SmartMove no-op behavior to match SimpleMove (and ES6 spec)
The previous behavior, which caused Array.prototype.unshift() (with no args)
to have side-effects, no longer matches the spec (ES6 changed the no-arg behavior
in April 2014). The new SmartMove behavior is also compatible with current
versions of Firefox.
This is a baby step towards getting rid of SmartMove; it isolates the test
change in this patch, instead of lumping it in confusingly with all the
other test updates necessary for moving away from SmartMove.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
666883009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24854
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 23 Oct 2014 16:29:43 +0000 (16:29 +0000)]
Move special RPO computation into separate class.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
673753003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24853
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 23 Oct 2014 16:11:56 +0000 (16:11 +0000)]
Make GIT ignore all turbo.cfg files.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
667553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24852
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 23 Oct 2014 15:16:27 +0000 (15:16 +0000)]
Shrink new space in idle notification.
BUG=chromium:424423
LOG=Y
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
662543008
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24851
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 23 Oct 2014 15:09:38 +0000 (15:09 +0000)]
Disambiguate pow
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
673793002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24850
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Thu, 23 Oct 2014 14:41:39 +0000 (14:41 +0000)]
Fixed mutable heap numbers leak in JSON parser.
BUG=chromium:423687
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
669403002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24849
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 23 Oct 2014 14:40:43 +0000 (14:40 +0000)]
[turbofan] Use range types to type and lower arithmetic ops.
This is based on Georg's work on typing arithmetic operations (https://codereview.chromium.org/
658743002/).
Instead of weakening to bitset types, we weaken to the closest 2^n
limit if we see that we are re-typing a node with a range type (which
means that the node can be part of a cycle, so we might need
to speed up the fixpoint there).
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
636283009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24848
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 23 Oct 2014 14:38:25 +0000 (14:38 +0000)]
Whitespace change to trigger bots.
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
667213006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24847
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 23 Oct 2014 14:27:15 +0000 (14:27 +0000)]
Switch release scripts to new git workflow.
BUG=410721
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
676713003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24846
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 23 Oct 2014 12:59:48 +0000 (12:59 +0000)]
fix another static initializer
TBR=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
666333004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24843
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 23 Oct 2014 12:30:20 +0000 (12:30 +0000)]
harmony-scoping: Allow 'const' iteration variables in strict mode.
R=rossberg@chromium.org
BUG=v8:2506
LOG=N
Committed: https://code.google.com/p/v8/source/detail?r=24834
Review URL: https://codereview.chromium.org/
671913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24842
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
akos.palfi@imgtec.com [Thu, 23 Oct 2014 12:05:46 +0000 (12:05 +0000)]
MIPS: Classes: implement 'new super'.
Port r24825 (
b26f0181)
BUG=
R=dslomov@chromium.org, dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/
676703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24841
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 23 Oct 2014 11:56:26 +0000 (11:56 +0000)]
Reland 'Simplify TurboFan's c1visualizer file handling.'
This is r24819 plus some tiny fixes to make the Mac toolchain happy.
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
676673002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24840
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 23 Oct 2014 11:55:19 +0000 (11:55 +0000)]
Revert "harmony-scoping: Allow 'const' iteration variables in strict mode."
This reverts commit r24834 for breaking debug tests.
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
672193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24839
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 23 Oct 2014 11:42:30 +0000 (11:42 +0000)]
Remove deprecated lexer-shell.
R=marja@chromium.org
Review URL: https://codereview.chromium.org/
658633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24838
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00