wingo@igalia.com
093492f01c
Don't fuzz _GeneratorNext
...
The previous patch that renamed _GeneratorSend to _GeneratorNext missed
the blacklist in fuzz-natives-part4.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16339008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 12:06:13 +00:00
svenpanne@chromium.org
66bb4c5b8d
Improve code for integral modulus calculation.
...
Depending on what we know about the right operand, we basically do 3
different things (and the code is actually structured this way):
* If we statically know that the right operand is a power of 2, we do
some bit fiddling instead of doing a "real" modulus calculation.
This should actually be done on the Hydrogen level, not on the
Lithium level, but this will be a separate CL.
* If type feedback tells us that the right operand is a power of 2, we
do the same as above, but guarded by conditional deoptimization to
make sure that the assumption is still valid. In the long run, we
should make this guard visible on the Hydrogen level to make it
visible for GVN and other optimizations.
* In the general case we only do the minimum steps necessary and don't
try to be too clever, because cleverness actually slows us down on
real-world code.
If we look at the code gerators for LModI, we actually see that we
basically have 3 (4 on ARM) fundamentally different translations. I
don't really like lumping them together, they should probably be
different Lithium instructions. For the time being, I restructured the
generators to make this crystal-clear, at the cost of some duplication
regarding the power-of-2 cases. This will go away when we do the
strength reduction on the Hydrogen level, so I'd like to keep it as it
is for now.
Note that the MIPS part was only slightly restructured, there is still
some work to do there.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/15769010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 12:05:54 +00:00
mstarzinger@chromium.org
ecc41e30c0
Fix re-initialization of existing double field.
...
R=verwaest@chromium.org
BUG=v8:2717
TEST=mjsunit/regress/regress-2717
Review URL: https://codereview.chromium.org/16735003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 11:55:47 +00:00
yangguo@chromium.org
b0afb77731
Fix parallel recompilation wrt transition maps dependency.
...
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/15896038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 11:33:23 +00:00
verwaest@chromium.org
dbb16eaec3
Lookup transition again after migrating a transition target.
...
R=ulan@chromium.org
BUG=chromium:242332
Review URL: https://chromiumcodereview.appspot.com/16347005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 11:27:09 +00:00
yangguo@chromium.org
1594eca8ed
Fix parallel recompilation wrt initial object/array map dependency.
...
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/16641002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 11:17:48 +00:00
dcarney@chromium.org
b12e6a9c1e
adjust assertions for addition of default value
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16136012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 09:35:47 +00:00
wingo@igalia.com
f88bca9576
Generator object "next" method takes optional send value
...
Update the generators implementation to make "next" also do the job of
what was previously called "send" by taking an optional argument.
Remove send, and do a bunch of renamings.
R=rossberg@chromium.org
BUG=v8:2355, v8:2715
Review URL: https://codereview.chromium.org/16136011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 09:26:18 +00:00
wingo@igalia.com
601e1cf0d5
Fix LoadIC calling convention on ARM
...
The comments in ic-arm.cc::LoadIC indicated that the receiver should be
both in a register and on the stack. This isn't true in fact: the code
is careful to spill the receiver if needed.
This CL also fixes up a mistaken use of this convention in in
VisitYield.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16203004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 09:12:57 +00:00
dcarney@chromium.org
e13aac5fcc
build fix for 15025
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16561011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 08:19:03 +00:00
dcarney@chromium.org
7df1f40b0b
build fix for 15023
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16729002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 07:56:17 +00:00
dcarney@chromium.org
a9ce5bb5ea
add a default value for return value
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16642003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 07:41:16 +00:00
dcarney@chromium.org
8c892ea2a8
do aligned reads in ContainsOnlyOneByte
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16147004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 07:34:58 +00:00
svenpanne@chromium.org
5b514e89ff
Make GCMole happy
...
TBR=yangguo@google.com
Review URL: https://codereview.chromium.org/16544009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 06:37:30 +00:00
peter.rybin@gmail.com
e79ba28aa8
Find breakpoint by PC rather than source position when clearing breakpoint
...
Current approach is to find breakpoint by the statement position that was used when setting breakpoint. This doesn't work when setting breakpoint by anything else but statement position.
(Question: could PC of existing breakpoint change, for example because of recompilation, or this approach is safe)
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/15685010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-09 20:10:29 +00:00
machenbach@chromium.org
1bf85abffc
Fixed typo in test expectations SKIP -> Skip
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 18:34:24 +00:00
verwaest@chromium.org
3588aa45cd
Take all uses into account to clear int32 truncation.
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16656002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 17:28:46 +00:00
yurys@chromium.org
e3dbf202c8
Try to deflake cctest/test-cpu-profiler/NativeAccessorNameInProfile1 on Windows
...
Make native accessors sleep for 1ms before measuring elapsed time. This is to check the theory that we cannot pause profiled thread on Win64 for some reason and miss many samples.
BUG=None
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/16656003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 17:25:47 +00:00
plind44@gmail.com
659e0b46f5
MIPS: Baseline for-of implementation.
...
Port r15002 (d2f0fac)
Original commit message:
Add full-codegen support for the ES6 for-of iteration statement.
TEST=mjsunit/harmony/iteration-semantics
BUG=v8:2214
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/15995040
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 16:59:34 +00:00
peter.rybin@gmail.com
5dde44e431
Fix very strange bug in FindBreakLocationFromAddress algorithm
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/15737023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 16:48:22 +00:00
plind44@gmail.com
d7431f2c6e
MIPS: Fill more branch delay slots.
...
TEST=
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/15967006
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 16:00:19 +00:00
machenbach@chromium.org
5160d982ac
Lists tests to skip. The test expectations file will be assigned to the run_webkit_tests script using the additional expectations flag.
...
The tests listed in this file will be maintained manually. The list contains tests that typically fail on the V8 waterfall.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/16634005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 15:59:10 +00:00
danno@chromium.org
82a73a0676
Prepare push to trunk. Now working on version 3.19.12.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/16234008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 15:58:51 +00:00
danno@chromium.org
b634fdd7b0
Fix presubmit errors
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/16017008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15008 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 15:43:56 +00:00
mstarzinger@chromium.org
eb6efbc53a
Add missing AllowHandleDereference to LAllocator::BuildLiveRanges.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/16509004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 15:18:49 +00:00
dslomov@chromium.org
cbb11dbe6c
Neutering API for v8::ArrayBuffer
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16562005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 15:02:20 +00:00
yangguo@chromium.org
17cfe68015
Enable map dependency to in-flight compilation info.
...
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/16542003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 13:27:03 +00:00
mvstanton@chromium.org
1fc6065b38
CallNewArray sites need the original feedback cell at crankshaft time.
...
This CL addresses a TODO in the hydrogen-based array constructor code,
to pass through the actual type feedback cell, rather than the contents
of the cell.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/16408005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15004 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 13:21:20 +00:00
olivf@chromium.org
9595a691b0
Fix InlineCacheState for ToBoolean and CompareIC
...
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/16613003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15003 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 13:11:17 +00:00
wingo@igalia.com
b29a78fb02
Baseline for-of implementation
...
Add full-codegen support for the ES6 for-of iteration statement.
R=mstarzinger@chromium.org , rossberg@chromium.org
TEST=mjsunit/harmony/iteration-semantics
BUG=v8:2214
Review URL: https://codereview.chromium.org/15288011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 11:12:21 +00:00
verwaest@chromium.org
8afeaabe57
Allow boundscheck elimination to work on Smi keys.
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16035016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 11:00:39 +00:00
dslomov@chromium.org
b3282c290e
Recording array buffer views.
...
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/15562008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 10:52:11 +00:00
dcarney@chromium.org
a0f786f022
Make ReturnValue a friend of Persistent, so it can use operator*.
...
BUG=
R=dcarney@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/15848010
Patch from Marja Hölttä <marja@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 10:46:51 +00:00
ulan@chromium.org
7556e52aba
ARM: Fix build flags for snapshot generation.
...
The existing code ignores armv7 and arm_fpu flags since r14288.
R=jkummerow@chromium.org , rodolph.perfetta@gmail.com
Review URL: https://chromiumcodereview.appspot.com/16313003
Patch from Jakob Kummerow <jkummerow@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 10:02:42 +00:00
verwaest@chromium.org
a3dccd15b0
Don't ignore the actual input representation in UnaryMathOperations
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16035014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14997 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 09:11:33 +00:00
verwaest@chromium.org
cb3645fee9
Infer the range of Math.abs
...
R=jkummerow@chromium.org , svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16268009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 09:07:53 +00:00
dcarney@chromium.org
72098711b7
Add Value::Cast.
...
It's needed for upcasting Persistent<Object> to Persistent<Value> after
handlepocalypse (with Persistent::As or Persistent::Cast).
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16206014
Patch from Marja Hölttä <marja@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 08:46:39 +00:00
yangguo@chromium.org
987080415e
Remove use of Isolate::Current in regexp macro assemblers.
...
BUG=
R=hpayer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16026020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 08:38:05 +00:00
dcarney@chromium.org
94d6a13682
build fix for build fix for 14990
...
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16409011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 08:15:00 +00:00
dcarney@chromium.org
6ee35b3ed9
lint failure with latest depot_tools
...
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/15795006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 07:56:49 +00:00
dcarney@chromium.org
2149ac97ee
build fix for 14990
...
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16180011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 07:54:39 +00:00
dcarney@chromium.org
3c8a79caba
ReturnValue::Set(uint32_t) is wrong
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16365008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 07:34:25 +00:00
adamk@chromium.org
0df3857005
Remove redudant deleted_count argument from EnqueueSpliceRecord
...
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16438010
Patch from Rafael Weinstein <rafaelw@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14989 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 19:15:40 +00:00
palfia@homejinni.com
72f7abb4c9
MIPS: Assign less environments.
...
Port r14983 (960d6de)
BUG=
Review URL: https://codereview.chromium.org/16567002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 18:59:11 +00:00
rossberg@chromium.org
372457a793
Allow smis for singleton types
...
To that end, introduce a generic Box struct.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16562003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 15:40:28 +00:00
yangguo@chromium.org
8165d49173
Do not GC prior to every parallel recompile.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/16410005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 15:32:39 +00:00
yangguo@chromium.org
82c0ea4b04
Fix bogus assertions for tracing and verify.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/15778012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 15:30:46 +00:00
wingo@igalia.com
cb0d146862
Add initial parser support for harmony iteration
...
This commit adds initial parser support for harmony iteration.
Specifically, it will parse:
for (x of y) {}
for (let x of y) {}
for (var x of y) {}
The semantics are still unimplemented.
TEST=mjsunit/harmony/for-of-syntax
BUG=v8:2214
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/15300018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 14:38:26 +00:00
verwaest@chromium.org
1b4cb2aac4
Assign less environments
...
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16556002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 14:31:44 +00:00
verwaest@chromium.org
16199c63d8
Initialized representations of computed values to None.
...
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/14721009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 14:21:35 +00:00