danno@chromium.org [Tue, 10 Jun 2014 09:00:10 +0000 (09:00 +0000)]
Revert 21720: "Introduce FieldIndex to unify and abstract property/field offset"
Due to assorted failures
R=mstarzinger@chromium.org
TBR=mstarzginer@chromium.org
Review URL: https://codereview.chromium.org/
329463005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21732
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 10 Jun 2014 08:51:12 +0000 (08:51 +0000)]
Whitespace change to trigger bots.
BUG=
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
324893003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21731
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Tue, 10 Jun 2014 08:09:56 +0000 (08:09 +0000)]
X87: Preliminary support for block contexts in hydrogen.
Port r21684.
Origin message:
Preliminary support for block contexts in hydrogen.
Patch from Steven Keuchel <keuchel@chromium.org>;
BUG=v8:2198
LOG=N
TEST=mjsunit/harmony/block-let-crankshaft.js
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
315233002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21730
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 10 Jun 2014 07:13:36 +0000 (07:13 +0000)]
Add whitespace file to allow no-op changelists for bot maintenance.
BUG=
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
323033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21729
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 10 Jun 2014 04:47:06 +0000 (04:47 +0000)]
Ensure that constant-capacity elements are initialized on copy
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
308003015
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21728
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 10 Jun 2014 04:26:15 +0000 (04:26 +0000)]
Fix missing smi check in inlined indexOf/lastIndexOf.
BUG=382513
LOG=y
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
313233005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21727
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 10 Jun 2014 04:08:48 +0000 (04:08 +0000)]
Update DoNumberTagI to support x32 port.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
263123002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21726
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 10 Jun 2014 04:03:51 +0000 (04:03 +0000)]
Update SmiShiftLeft, SmiShiftLogicalRight, SmiShiftArithmeticRight and SmiDiv to support x32 port.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
264973011
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21725
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Tue, 10 Jun 2014 03:43:48 +0000 (03:43 +0000)]
X87: Introduce FieldIndex to unify and abstract property/field offset
port r21720.
Original commit message:
Introduce FieldIndex to unify and abstract property/field offset.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
326563002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21724
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Mon, 9 Jun 2014 14:23:46 +0000 (14:23 +0000)]
ARM64: Clean up support for explicit literal load.
This is the first patch to improve literal pool handling in arm64. Cleans up
assembler/macro-assembler access to literal pools.
BUG=
R=rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/
318773009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21723
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Fri, 6 Jun 2014 15:43:19 +0000 (15:43 +0000)]
MIPS: Introduce FieldIndex to unify and abstract property/field offset.
Port r21720 (
aeb7bef)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
314333003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21722
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vogelheim@chromium.org [Fri, 6 Jun 2014 14:30:33 +0000 (14:30 +0000)]
Port 'external startup data' flag from gyp to gn.
R=jochen@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
316363004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21721
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 6 Jun 2014 14:05:10 +0000 (14:05 +0000)]
Introduce FieldIndex to unify and abstract property/field offset
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
300283002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21720
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 6 Jun 2014 13:54:08 +0000 (13:54 +0000)]
Drop unused Object::GetMarkerMap method
R=verwaest@chromium.org
BUG=none
LOG=n
Review URL: https://codereview.chromium.org/
317373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21719
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 6 Jun 2014 13:33:27 +0000 (13:33 +0000)]
Simplify prototype chain walk in hydrogen
Since we know that we're only encountering JSObjects, we can use the
faster GetPrototype() method to walk up the chain
BUG=none
R=verwaest@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
321543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21718
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 6 Jun 2014 13:16:24 +0000 (13:16 +0000)]
Revert "Re-land Clusterfuzz identified overflow check needed in dehoisting."
This reverts commit r21712
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
315843005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21715
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 6 Jun 2014 13:00:07 +0000 (13:00 +0000)]
Re-land Clusterfuzz identified overflow check needed in dehoisting.
Overflow check needs to be smarter.
BUG=380092
R=danno@google.com, danno@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
317963004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21712
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 6 Jun 2014 09:57:08 +0000 (09:57 +0000)]
Field layout in class Arguments is incompatible w\ 64-bit archs.
The length_ field must be defined as intptr_t rather than int. This is
due to the fact that we place native argc/argv values into stack slots
(via SetFrameSlot) and then interpret the slots as a an instance of
Arguments class.
Little endian architectures get 'lucky' that the layout happens to work
with implicit padding. Big endian is not as lucky.
See Runtime_ArrayConstructor for an example.
Based on
https://github.com/andrewlow/v8/commit/
d8c3570f71c0be9914e79139740124bd1ca711a7
BUG=v8:3366
LOG=N
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
314123003
Patch from Andrew Low <andrew_low@ca.ibm.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21711
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 6 Jun 2014 09:50:33 +0000 (09:50 +0000)]
Do not overwrite event logger when we explicitly have --log-timer-events.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
318063002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21710
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 6 Jun 2014 09:47:14 +0000 (09:47 +0000)]
Revert "Clusterfuzz identified overflow check needed in dehoisting."
This reverts commit r21708, due to ASAN-reported issue.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
318073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21709
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 6 Jun 2014 09:12:16 +0000 (09:12 +0000)]
Clusterfuzz identified overflow check needed in dehoisting.
BUG=380092
R=danno@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
315593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21708
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 6 Jun 2014 08:15:05 +0000 (08:15 +0000)]
Fix bug in tools/plot-timer-events
Bug was introduced in r21338.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
314143004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21707
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 6 Jun 2014 07:26:23 +0000 (07:26 +0000)]
Fix gn build
BUG=none
TBR=brettw@chromium.org,vogelheim@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
318043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21706
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Thu, 5 Jun 2014 18:16:06 +0000 (18:16 +0000)]
Turn on harmony_collections for es_staging
BUG=v8:1622
LOG=Y
R=arv@chromium.org, rossberg@chromium.org
Review URL: https://codereview.chromium.org/
313153002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21703
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 5 Jun 2014 17:08:21 +0000 (17:08 +0000)]
Revert "Grow big old generation slower."
This reverts commit r21700 due to Windows compile warnings.
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
318763007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21702
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Thu, 5 Jun 2014 16:47:02 +0000 (16:47 +0000)]
MIPS: Preliminary support for block contexts in hydrogen.
Port r21684 (
ea35030)
Original commit message:
Patch from Steven Keuchel <keuchel@chromium.org>
BUG=v8:2198
LOG=N
TEST=mjsunit/harmony/block-let-crankshaft.js
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
313183007
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21701
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 5 Jun 2014 15:00:02 +0000 (15:00 +0000)]
Grow big old generation slower.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
305413002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21700
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vogelheim@chromium.org [Thu, 5 Jun 2014 14:04:12 +0000 (14:04 +0000)]
Fix presubmit warning.
(http://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/8147/steps/Presubmit/logs/stdio)
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
319563003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21699
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 5 Jun 2014 13:58:57 +0000 (13:58 +0000)]
Revert "V8 can clear exception pending message, when should not do this."
This reverts commit
2c6665a7a21bd38f3dea28eb9b303f913c69be8d. Broke too many tests.
TBR=yangguo@chromium.org
BUG=None
LOG=N
Review URL: https://codereview.chromium.org/
318773006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21698
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 5 Jun 2014 13:07:53 +0000 (13:07 +0000)]
V8 can clear exception pending message, when should not do this.
The case:
v8::TryCatch try_catch;
CompileRun(try { CEvaluate('throw 1;'); } finally {});
CHECK(try_catch.HasCaught());
CHECK(!try_catch.Message().IsEmpty());
CEvaluate is native call. Last check is not passed without patch. Patch contains test TryCatchFinallyStoresMessageUsingTryCatchHandler with more details.
R=mstarzinger@chromium.org, vsevik@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
306463002
Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21697
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vogelheim@chromium.org [Thu, 5 Jun 2014 13:06:21 +0000 (13:06 +0000)]
Support external startup data in V8.
[Retry of crrev.com/
293993021, which caused problems with 'ninja all' in Chromium. First patch set if a clean apply
of crrev.com/
293993021. Subsequent sets are the actual fix
for that issue.]
If the embedder chooses, the 'natives' (library sources) and the
precompiled startup blob can be written to files during the build
process and handed over to V8 at startup. The main purpose would be
to reduce the size of the compiled binary for space constrained
platforms.
The build-time option is off by default. Nothing should change if
it's not enabled.
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
315033002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21696
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Thu, 5 Jun 2014 13:02:18 +0000 (13:02 +0000)]
Compilation API: next step of deprecations.
Remove deprecated functions and deprecated Script::GetId (which was supposed to
be deprecated, but Chrome was using it).
R=dcarney@chromium.org, svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
315003003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21695
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 5 Jun 2014 12:53:36 +0000 (12:53 +0000)]
Mark arm div tests as PASS/FAIL.
R=machenbach@chromium.org
BUG=v8:3259
LOG=N
Review URL: https://codereview.chromium.org/
318943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21694
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 5 Jun 2014 12:14:47 +0000 (12:14 +0000)]
Move atomic ops and related files to base library
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
316133002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21693
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 5 Jun 2014 10:26:09 +0000 (10:26 +0000)]
Enable concurrent OSR.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
258953010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21692
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 5 Jun 2014 08:56:38 +0000 (08:56 +0000)]
Do not make heap iterable eagerly.
R=jarin@chromium.org
BUG=379740
LOG=Y
Review URL: https://codereview.chromium.org/
318863004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21691
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Thu, 5 Jun 2014 08:55:46 +0000 (08:55 +0000)]
ARM64: Add and use SmiTagAndPush.
In some cases, this allows SmiTag and Push to be combined into a single
operation.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
311133003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21690
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 5 Jun 2014 08:45:24 +0000 (08:45 +0000)]
Address a few TODOs in the gn config
- add direct dependant settings
- only compile mksnapshot on the host toolset
BUG=none
LOG=n
R=machenbach@chromium.org, brettw@chromium.org
Review URL: https://codereview.chromium.org/
314073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21689
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 5 Jun 2014 08:44:42 +0000 (08:44 +0000)]
Move most of the implementation of AdjustAmountOfExternalMemory to v8.h
This reduces the overhead of reporting allocations to v8 to an
acceptable level.
BUG=none
LOG=n
R=dcarney@chromium.org, hpayer@chromium.org
Review URL: https://codereview.chromium.org/
310393003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21688
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 5 Jun 2014 08:44:00 +0000 (08:44 +0000)]
Fix another presubmit error in heap.cc
TBR=ulan@chromium.org
BUG=none
LOG=n
Review URL: https://codereview.chromium.org/
319473004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21687
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 5 Jun 2014 08:41:29 +0000 (08:41 +0000)]
Fix presubmit style error in parser.cc
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
315003007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21686
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 5 Jun 2014 08:33:42 +0000 (08:33 +0000)]
Documentation: fix comments for CommuteCondition.
R=jkummerow@google.com, jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
313283003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21685
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 5 Jun 2014 07:33:01 +0000 (07:33 +0000)]
Preliminary support for block contexts in hydrogen.
Patch from Steven Keuchel <keuchel@chromium.org>
BUG=v8:2198
LOG=N
TEST=mjsunit/harmony/block-let-crankshaft.js
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
307593002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21684
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Wed, 4 Jun 2014 15:21:35 +0000 (15:21 +0000)]
Revert "Folding of bounded dynamic size allocations with const size allocations."
This reverts r21675.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
311173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21679
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 4 Jun 2014 15:21:26 +0000 (15:21 +0000)]
Fix building android gn
BUG=none
TBR=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
313923002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21678
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 4 Jun 2014 14:57:51 +0000 (14:57 +0000)]
Rename ReverseCondition to CommuteCondition, a more standard term.
R=dcarney@chromium.org, dcarney
BUG=
Review URL: https://codereview.chromium.org/
313083006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21677
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 4 Jun 2014 13:40:52 +0000 (13:40 +0000)]
Rename InvertCondition and ReverseConditionForCmp on arm64 to be consistent with the other ports.
R=dcarney@chromium.org, dcarney
BUG=
Review URL: https://codereview.chromium.org/
317663002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21676
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Wed, 4 Jun 2014 13:39:02 +0000 (13:39 +0000)]
Folding of bounded dynamic size allocations with const size allocations.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
301973014
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21675
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 4 Jun 2014 12:09:10 +0000 (12:09 +0000)]
Flag --pretenure-call-new broken on MIPS.
A label in JSConstructStubHelper was in the wrong place.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
315963002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21674
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 4 Jun 2014 11:56:29 +0000 (11:56 +0000)]
Fix regexp=interpreted build.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
318603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21673
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 4 Jun 2014 11:52:17 +0000 (11:52 +0000)]
Extend bounds check elimination to constant keys.
R=jkummerow@chromium.org
BUG=v8:3367
LOG=N
Review URL: https://codereview.chromium.org/
310333004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21672
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Wed, 4 Jun 2014 09:35:41 +0000 (09:35 +0000)]
Implemented folding of constant size allocation followed by dynamic size allocation.
Manually folded allocations (JSArray, JSRegExpResult) are split into two separate allocations.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
304153009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21671
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 4 Jun 2014 09:27:16 +0000 (09:27 +0000)]
X87: Improve write barriers in optimized code.
Port r21630 (
a21ff10)
Original commit message:
Use a cheaper RecordWriteForMap() to update the
write barrier for maps. And skip the value check
in RecordWriteField() when we statically know that
the value is in new space (and therefore has "pointers
to here are interesting" flag set).
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
314983002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21668
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 4 Jun 2014 08:52:00 +0000 (08:52 +0000)]
Revert "Enable pretenure call new."
This reverts commit r21664 due to interesting failures.
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
316823002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21667
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 4 Jun 2014 08:35:42 +0000 (08:35 +0000)]
Revert "Support external startup data in V8."
This reverts commit r21646, as it blocks pushing to chromium.
TBR=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
317633003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21666
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 4 Jun 2014 08:21:39 +0000 (08:21 +0000)]
Fix invalid loop condition for Array.lastIndexOf().
BUG=380512
LOG=y
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
313073003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21665
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 4 Jun 2014 07:46:41 +0000 (07:46 +0000)]
Enable pretenure call new.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
312723004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21664
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 4 Jun 2014 06:08:35 +0000 (06:08 +0000)]
Introduce MakeSureDoubleAlignedHelper for x64 port.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
261233002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21662
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 4 Jun 2014 01:40:07 +0000 (01:40 +0000)]
X87: Temporarily skip cctest/test-serialize tests in debug mode
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
307373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21661
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Tue, 3 Jun 2014 20:12:19 +0000 (20:12 +0000)]
Add API support for passing a C++ function as a microtask callback
This allows embedders to enqueue microtasks without having any v8::Context
handy, as happens in Blink in some cases (such as DOM mutations due to editing
triggering MutationObservers).
LOG=Y
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
306053003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21658
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 3 Jun 2014 19:23:10 +0000 (19:23 +0000)]
MIPS: Improve write barriers in optimized code.
Port r21630 (
a21ff10)
Original commit message:
Use a cheaper RecordWriteForMap() to update the
write barrier for maps. And skip the value check
in RecordWriteField() when we statically know that
the value is in new space (and therefore has "pointers
to here are interesting" flag set).
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
315653002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21657
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 18:10:10 +0000 (18:10 +0000)]
Roll buildtools to
5d89977ce55240995d1596fe420b818468f5ec37
TBR=machenbach@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
307403004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21656
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 3 Jun 2014 17:37:33 +0000 (17:37 +0000)]
Visit encountered JSWeakCollection list during scavenging.
R=hpayer@chromium.org
BUG=chromium:380068
LOG=N
Review URL: https://codereview.chromium.org/
310783003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21655
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Tue, 3 Jun 2014 16:41:48 +0000 (16:41 +0000)]
Fix Arm release build after r21653
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/
311903003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21654
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rmcilroy@chromium.org [Tue, 3 Jun 2014 16:22:10 +0000 (16:22 +0000)]
Add support for extended constant pool arrays.
This CL adds support for ConstantPoolArrays which contain an extended section.
This will be used to enable larger constant pools than can be addressed by a
single ldr with immediate offset instruction (which has a limit of a 4KB range).
Extended constant pools will have a small section, which is addressable via a
single ldr instruction, and an extended section, which will require a multi-
instruction sequence to load from.
Currently, no code uses the extended ConstantPoolArray's - this change will
be made in a followup CL.
A number of changes are made to the ConstantPoolArray object in order to
support this:
- Small section layout is now entirely defined by the small layout bitmaps.
- The ConstantPoolArray no longer extends FixedArrayBase since the length
field is not useful for extended layouts.
- Enums are used to represent the type of an entry and the layout section.
- An iterator can be used to iterate through all elements of a given type.
- A number of tests were added for these features.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
304143002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21653
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Tue, 3 Jun 2014 16:12:48 +0000 (16:12 +0000)]
Misc cleanup (split from the "delay string / value internalization" CL).
- Missing includes / forward declaration
- Parser: Simplifying calling error reporting funcs.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
307393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21652
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 3 Jun 2014 15:45:38 +0000 (15:45 +0000)]
Fixed lint errors caused by "runtime/references" rule (Is this a non-const reference?) and the rule itself is restored.
BUG=v8:3326
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
314723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21651
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Tue, 3 Jun 2014 15:39:47 +0000 (15:39 +0000)]
Fix leaky tests added by r21649.
TBR=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
313653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21650
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Tue, 3 Jun 2014 15:02:16 +0000 (15:02 +0000)]
Add tests for FuncNameInferrer.
There were no explicit tests for FuncNameInferrer (though, some tests might
implicitly rely on it working properly in the common cases). Afaics, there were
no tests which would exercise inferring two byte function names or escaped
function names.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
310063002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21649
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 3 Jun 2014 14:58:52 +0000 (14:58 +0000)]
Let benchmark runner exit with proper return codes.
BUG=374740
LOG=n
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
313603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21648
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 3 Jun 2014 14:39:55 +0000 (14:39 +0000)]
Rename EnterDebugger to DebugScope.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
300683005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21647
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vogelheim@chromium.org [Tue, 3 Jun 2014 14:38:35 +0000 (14:38 +0000)]
Support external startup data in V8.
If the embedder chooses, the 'natives' (library sources) and the
precompiled startup blob can be written to files during the build
process and handed over to V8 at startup. The main purpose would be
to reduce the size of the compiled binary for space constrained
platforms.
The build-time option is off by default. Nothing should change if
it's not enabled.
BUG=
R=bmeurer@chromium.org, jochen@chromium.org
Review URL: https://codereview.chromium.org/
293993021
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21646
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 3 Jun 2014 14:33:07 +0000 (14:33 +0000)]
Entering debugger scope should not make debugger active.
The motivation is that by only entering the debugger scope to call into
the debug context should not cause code to be compiled for debugging.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
306563002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21645
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 3 Jun 2014 14:27:19 +0000 (14:27 +0000)]
Add option to disable MirrorCache.
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/
307383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21644
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 3 Jun 2014 13:45:13 +0000 (13:45 +0000)]
Add buildtools to svn:ignore.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21643
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 13:39:42 +0000 (13:39 +0000)]
Add DEPS files and run checkdeps in presubmit check
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
312763002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21642
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 13:38:35 +0000 (13:38 +0000)]
Ignore buildtools directory in presubmit.py checks
BUG=none
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
314573004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21641
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 13:35:42 +0000 (13:35 +0000)]
Correct include paths in checks.h
BUG=none
R=mvstanton@chromium.org
TBR=mvstanton@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
314703002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21640
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 13:34:36 +0000 (13:34 +0000)]
Make dependencies target less noisy when run repeatedly
BUG=none
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
309933005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21639
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 13:30:22 +0000 (13:30 +0000)]
Add buildtools/ to .gitignore
BUG=none
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
312643004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21638
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 3 Jun 2014 13:18:16 +0000 (13:18 +0000)]
Adjust cctest.status for Cpu profiler tests which are flaky.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
307383003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21637
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 12:01:50 +0000 (12:01 +0000)]
Add dependency on buildtools repo
Currently, this adds checkdeps, in the future, this will be the place
where clang-format and gn lives.
BUG=none
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
308353002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21636
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 3 Jun 2014 11:59:47 +0000 (11:59 +0000)]
Deopt maybe tenure allocation sites when semi-space is maximum size.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
307363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21635
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 3 Jun 2014 11:52:07 +0000 (11:52 +0000)]
Revert "Reland "Make 'name' property on functions configurable.""
This reverts commit r21609 due to browser test failures.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
313583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21632
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 11:01:35 +0000 (11:01 +0000)]
Update include paths for gcmole
TBR=mvstanton@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
310733005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21631
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 3 Jun 2014 10:59:11 +0000 (10:59 +0000)]
Improve write barriers in optimized code.
Use a cheaper RecordWriteForMap() to update the
write barrier for maps. And skip the value check
in RecordWriteField() when we statically know that
the value is in new space (and therefore has "pointers
to here are interesting" flag set).
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
297763006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21630
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 3 Jun 2014 10:40:36 +0000 (10:40 +0000)]
Rename new_space_dominator to dominator since dominators can also be in old space.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
312713002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21629
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 3 Jun 2014 09:34:29 +0000 (09:34 +0000)]
Fix test
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
306353002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21628
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 08:29:03 +0000 (08:29 +0000)]
Fix compilation on win shared and mips
TBR=mvstanton@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
309983002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21627
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 3 Jun 2014 08:28:38 +0000 (08:28 +0000)]
Fix PathTracer.
When tracing, we abuse the map for marking, thereby mutating it.
HeapObject::map() takes care of recovering unabused value.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
316533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21626
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 08:12:43 +0000 (08:12 +0000)]
Use full include paths everywhere
- this avoids using relative include paths which are forbidden by the style guide
- makes the code more readable since it's clear which header is meant
- allows for starting to use checkdeps
BUG=none
R=jkummerow@chromium.org, danno@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
304153016
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 3 Jun 2014 07:59:36 +0000 (07:59 +0000)]
%ObjectFreeze needs to exclude non-fast-path objects.
ClusterFuzz will call it with sloppy arguments and similar cases.
BUG=380049
LOG=N
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
315533002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21624
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 3 Jun 2014 07:55:38 +0000 (07:55 +0000)]
Tenure allocation sites only when semi-space is maximum size.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
309623007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21623
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 3 Jun 2014 07:45:40 +0000 (07:45 +0000)]
When flag --nouse-osr is set, don't allow osr from hidden runtime calls.
BUG=379770
R=yangguo@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
310773003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21622
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Tue, 3 Jun 2014 07:40:43 +0000 (07:40 +0000)]
Minor cleanups & trivial refactoring related to Ast.
1) Literal::IsNull, IsTrue and IsFalse were dead code, and not needed.
2) No need to use the node type constants outside the Ast; there is IsSomeNodeType().
3) AsSomeNodeType() != NULL -> IsSomeNodeType().
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
298143004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21621
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Tue, 3 Jun 2014 07:37:16 +0000 (07:37 +0000)]
ARM64: Fix ASM_LOCATION and the like.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
308023007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21620
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 07:26:07 +0000 (07:26 +0000)]
Add collection-iterator.js to BUILD.gn after r21615
LOG=n
BUG=none
TBR=adamk@chromium.org
Review URL: https://codereview.chromium.org/
314623002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21619
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Jun 2014 06:50:46 +0000 (06:50 +0000)]
First cut at run_mksnapshot action for gn
BUG=none
R=brettw@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
293363009
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21618
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 3 Jun 2014 04:01:34 +0000 (04:01 +0000)]
Inline fast path for Array.indexOf() and Array.lastIndexOf().
TEST=mjsunit/array-indexing
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
308793012
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21617
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Tue, 3 Jun 2014 00:53:16 +0000 (00:53 +0000)]
Split Put into Put and Remove
No longer treat the hole as a removal. This removes one branch in
Put and cleans up the API.
BUG=None
LOG=Y
R=adamk@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
309663005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21616
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00