dslomov@chromium.org
9278a4b7b1
Change ArrayBuffer API and implementation to use embedder-provided allocator.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/15855012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 10:41:14 +00:00
yurys@chromium.org
b90bd6987b
Make sure CallIC is in monomorphic state when starting profiling in NativeAccessorNameInProfile2
...
Changed cctest/test-cpu-profiler/NativeAccessorNameInProfile2 to make a few warm-up cycles before starting profiler so that accessor invocations performed via monomorphic inline caches and slow paths traces do not distort the profile.
Drive-by: removed logging code that was used to diagnose NativeAccessorNameInProfile2 failures on Windows.
BUG=None
R=jkummerow@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/16758007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 08:32:48 +00:00
dcarney@chromium.org
c90e697a30
make empty string returnable by ReturnValue
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16621004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 07:42:12 +00:00
palfia@homejinni.com
1d4c64591b
MIPS: Fix abs_d instruction in the simulator.
...
The abs_d instruction was implemented wrongly in the simulator,
it doesn't reverse the sign of the -0 number.
This commit fixes the abs_d instruction implementation.
TEST=msjunit/math-abs
BUG=
Review URL: https://codereview.chromium.org/15906014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 21:54:07 +00:00
palfia@homejinni.com
88021e64b1
MIPS: Use compare nil ic only for non-strict equality.
...
Port r15045 (cce366f)
Original commit message:
Strict-equality only has one check and cannot deopt. Should therefore not be part of the stub.
BUG=
Review URL: https://codereview.chromium.org/16690008
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 18:16:27 +00:00
palfia@homejinni.com
eb7e2771a9
MIPS: Generator object "next" method takes optional send value.
...
Port r15028 (258a047)
Original commit message:
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.
BUG=v8:2355, v8:2715
Review URL: https://codereview.chromium.org/16735005
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 18:14:15 +00:00
palfia@homejinni.com
2ebb95071a
MIPS: Fix LoadIC calling convention.
...
Port r15027 (3ffb343)
Original commit message:
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 VisitYield.
BUG=
Review URL: https://codereview.chromium.org/16131004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 18:10:58 +00:00
palfia@homejinni.com
b7e06629f3
MIPS: add a default value for return value
...
Port r15024 (1a76177)
BUG=
Review URL: https://codereview.chromium.org/16005015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 18:07:28 +00:00
yangguo@chromium.org
5cf0cba71a
Fix compilation with gdbjit=on.
...
r14919 forgot three AssertNoAllocation -> DisallowHeapAllocation replacements.
BUG=v8:2719
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16093041
Patch from Kang-Hao (Kenny) Lu <kennyluck@csail.mit.edu>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 16:31:55 +00:00
olivf@chromium.org
946ea53264
use compare nil ic only for non-strict equality. strict-equality only has one check and cannot deopt. should therefore not be part of the stub.
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/16732002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:47:23 +00:00
olivf@chromium.org
3a26dda780
revert accidental dcommit
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:43:40 +00:00
olivf@chromium.org
23691cf023
also remove the constant
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:30:17 +00:00
olivf@chromium.org
73b7ab9ae6
remove equality kind from compare nil ic
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:30:02 +00:00
verwaest@chromium.org
b51c0295cc
Prepare push to trunk. Now working on version 3.19.13.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/16730004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:10:44 +00:00
mvstanton@chromium.org
4d7e939ed6
Array access fix: g++ darwin 4.2.1 compiler clamped array index to 0 when confronted with negative indices.
...
BUG=247303
R=jkummerow@chromium.org , ulan@chromium.org
Review URL: https://codereview.chromium.org/15855015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 14:44:05 +00:00
hpayer@chromium.org
09495dfea2
Fix store buffer ensure space heuristics.
...
This change results in less scan on scavenge memory chunks.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/15896037
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 14:22:41 +00:00
wingo@igalia.com
29a1044409
Keep native fuzzing blacklists in sync
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16436005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 12:25:31 +00:00
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