mvstanton@chromium.org
2714fd2399
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
2014-06-06 13:16:24 +00:00
mvstanton@chromium.org
c0cb82274c
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
2014-06-06 13:00:07 +00:00
danno@chromium.org
88cb8fb248
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
d8c3570f71
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
2014-06-06 09:57:08 +00:00
yangguo@chromium.org
59f8b6a9ce
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
2014-06-06 09:50:33 +00:00
mvstanton@chromium.org
35933119fe
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
2014-06-06 09:47:14 +00:00
mvstanton@chromium.org
7d2d0839ad
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
2014-06-06 09:12:16 +00:00
yangguo@chromium.org
47e96513af
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
2014-06-06 08:15:05 +00:00
jochen@chromium.org
3086f3735a
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
2014-06-06 07:26:23 +00:00
adamk@chromium.org
6176cd2912
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
2014-06-05 18:16:06 +00:00
mvstanton@chromium.org
d398c7c473
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
2014-06-05 17:08:21 +00:00
plind44@gmail.com
293428ee23
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
2014-06-05 16:47:02 +00:00
hpayer@chromium.org
335a3a534e
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
2014-06-05 15:00:02 +00:00
vogelheim@chromium.org
ba8bbcdb5d
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
2014-06-05 14:04:12 +00:00
yurys@chromium.org
5586f1f309
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
2014-06-05 13:58:57 +00:00
yurys@chromium.org
6c57157587
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
2014-06-05 13:07:53 +00:00
vogelheim@chromium.org
ba9f391bc0
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
2014-06-05 13:06:21 +00:00
marja@chromium.org
16be5bb377
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
2014-06-05 13:02:18 +00:00
yangguo@chromium.org
eb1f184386
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
2014-06-05 12:53:36 +00:00
jochen@chromium.org
799fc835f8
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
2014-06-05 12:14:47 +00:00
yangguo@chromium.org
9f6294010a
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
2014-06-05 10:26:09 +00:00
yangguo@chromium.org
3888b2fe0c
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
2014-06-05 08:56:38 +00:00
Jacob.Bramley@arm.com
22af061a83
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
2014-06-05 08:55:46 +00:00
jochen@chromium.org
d208d2f661
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
2014-06-05 08:45:24 +00:00
jochen@chromium.org
a83b1b9cb3
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
2014-06-05 08:44:42 +00:00
jochen@chromium.org
c0daaf1c60
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
2014-06-05 08:44:00 +00:00
ulan@chromium.org
fa75ec55cc
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
2014-06-05 08:41:29 +00:00
titzer@chromium.org
812edcdedc
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
2014-06-05 08:33:42 +00:00
ulan@chromium.org
c8b2fa454a
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
2014-06-05 07:33:01 +00:00
ishell@chromium.org
13918334f8
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
2014-06-04 15:21:35 +00:00
jochen@chromium.org
f136e8fcb7
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
2014-06-04 15:21:26 +00:00
titzer@chromium.org
3c501d3a4b
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
2014-06-04 14:57:51 +00:00
titzer@chromium.org
bd857a7d10
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
2014-06-04 13:40:52 +00:00
ishell@chromium.org
d0cd026821
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
2014-06-04 13:39:02 +00:00
mvstanton@chromium.org
90a5b1414d
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
2014-06-04 12:09:10 +00:00
yangguo@chromium.org
991827c4c8
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
2014-06-04 11:56:29 +00:00
yangguo@chromium.org
61a5a413d7
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
2014-06-04 11:52:17 +00:00
ishell@chromium.org
4473edd7f1
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
2014-06-04 09:35:41 +00:00
weiliang.lin@intel.com
eac091277f
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
2014-06-04 09:27:16 +00:00
mvstanton@chromium.org
a75a788928
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
2014-06-04 08:52:00 +00:00
mvstanton@chromium.org
e039477000
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
2014-06-04 08:35:42 +00:00
bmeurer@chromium.org
9244429707
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
2014-06-04 08:21:39 +00:00
hpayer@chromium.org
b87cac0e0f
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
2014-06-04 07:46:41 +00:00
haitao.feng@intel.com
86dcdf3d91
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
2014-06-04 06:08:35 +00:00
weiliang.lin@intel.com
ba38bb579b
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
2014-06-04 01:40:07 +00:00
adamk@chromium.org
13d2f365cc
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
2014-06-03 20:12:19 +00:00
plind44@gmail.com
bd99223cad
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
2014-06-03 19:23:10 +00:00
jochen@chromium.org
4aa31e0744
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
2014-06-03 18:10:10 +00:00
mstarzinger@chromium.org
ed51f6f22f
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
2014-06-03 17:37:33 +00:00
rmcilroy@chromium.org
083419a36f
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
2014-06-03 16:41:48 +00:00
rmcilroy@chromium.org
97c962c255
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
2014-06-03 16:22:10 +00:00