verwaest@chromium.org [Wed, 8 May 2013 14:40:36 +0000 (14:40 +0000)]
Support merging with distinct attributes.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
14756012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14595
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 8 May 2013 14:19:48 +0000 (14:19 +0000)]
Always generalize all representations when no transition is inserted.
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
14696016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14594
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 8 May 2013 14:18:30 +0000 (14:18 +0000)]
Turn off tracking of fields for the roll.
Revert polymorphic stores suspect of crashes.
Revert "Turn on tracking of fields."
Revert "Turn polymorphic stores monomorphic if store sequence matches."
Revert "Fix polymorphic store."
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
14812010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14593
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 8 May 2013 13:24:45 +0000 (13:24 +0000)]
Consistently start (almost) all AstPrinter::VisitFoo functions with IndentedScope.
This makes IndentedScope the single point where we can print additional info in
the future, like e.g. AST IDs (at least when the TODOs are fixed). Minor other
cleanups.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
15060005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14592
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 8 May 2013 11:06:46 +0000 (11:06 +0000)]
Refactoring only: Removed unused argument from IndentedScope constructor.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
14864008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14591
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 8 May 2013 10:34:51 +0000 (10:34 +0000)]
Fix polymorphic store.
Review URL: https://chromiumcodereview.appspot.com/
14696011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14590
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 8 May 2013 09:39:26 +0000 (09:39 +0000)]
Turn polymorphic stores monomorphic if store sequence matches.
Review URL: https://chromiumcodereview.appspot.com/
14796012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14589
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 8 May 2013 08:49:29 +0000 (08:49 +0000)]
Turn off optimize-constructed-arrays flag to investigate ARM perf issue
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
14753007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14588
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 8 May 2013 08:37:24 +0000 (08:37 +0000)]
Bias commutative single-use register inputs and support lea adds
This improves register allocation for many common add and multiply patterns on ia32 and x64 by reducing register pressure.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
14856015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14587
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Wed, 8 May 2013 08:08:23 +0000 (08:08 +0000)]
Generators save and restore stack handlers
This CL adds machinery to unwind stack handlers from the stack and store
them into a generator's operand array. It also includes routines to
reinstate them. Together this allows generators to yield within
try/catch and try/finally blocks.
BUG=v8:2355
R=mstarzinger@chromium.org
TEST=mjsunit/harmony/generators-iteration
Review URL: https://codereview.chromium.org/
14031028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14586
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Wed, 8 May 2013 07:45:16 +0000 (07:45 +0000)]
fix nosnapshot test failure in
14793004, do not deprecate function
BUG=
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14947005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14585
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 8 May 2013 07:40:28 +0000 (07:40 +0000)]
Do not change environment between simulate and scope with no observable side-effects in HandlePropertyAssignment.
LChunkBuilder reconstructs the environment by applying simulates. A scope with no observable side-effects has no simulates. If the scope deoptimizes, then LChunkBuilder would miss the changes to the environment between the last simulate and the scope.
R=danno@chromium.org
BUG=v8:2671
TEST=mjsunit/regress/regress-2671.js
Review URL: https://chromiumcodereview.appspot.com/
14793009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14584
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 7 May 2013 23:15:27 +0000 (23:15 +0000)]
MIPS: Becuase of cross-context calls, hydrogen-based Array constructor needs to ensure the array constructor pointer passed in matches that of the current context.
Port r14581 (
32067c11)
BUG=
Review URL: https://codereview.chromium.org/
14761004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14583
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 7 May 2013 23:14:36 +0000 (23:14 +0000)]
MIPS: Generators return boxed values
Port r14563 (
6d01adb8)
Original commit message:
Generators now box their return values in object literals of the form
{ value: VAL, done: DONE }
where DONE is false for yield expressions, and true for return
statements.
BUG=
Review URL: https://codereview.chromium.org/
15009008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14582
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 7 May 2013 21:01:53 +0000 (21:01 +0000)]
Becuase of cross-context calls, hydrogen-based Array constructor needs to ensure
the array constructor pointer passed in matches that of the current context.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
14846017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14581
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 7 May 2013 16:28:51 +0000 (16:28 +0000)]
Revert "deprecate Context::New which returns Persistent"
This reverts r14573 because of test failures in no-snapshot mode in the
cctest/test-debug/ScriptCollectedEventContext test case.
TBR=dcarney@chromium.org,svenpanne@chromium.org
TEST=cctest/test-debug/ScriptCollectedEventContext
Review URL: https://codereview.chromium.org/
15038002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14578
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 7 May 2013 15:18:01 +0000 (15:18 +0000)]
Disable code flushing for native SharedFunctionInfo.
R=hpayer@google.com
TEST=cctest/test-api/Threading4
Review URL: https://codereview.chromium.org/
15018012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14577
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 7 May 2013 14:42:17 +0000 (14:42 +0000)]
Implement TypedArray.set function.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14581005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14576
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 7 May 2013 14:03:50 +0000 (14:03 +0000)]
Update mjsunit tests to be complaian with ES6 implementation of typed arrays
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14580012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14575
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 7 May 2013 14:02:31 +0000 (14:02 +0000)]
Disable flaky CPU profiler test case.
R=svenpanne@chromium.org
BUG=v8:2628
TEST=cctest/test-cpu-profiler/CollectCpuProfile
Review URL: https://codereview.chromium.org/
14767021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14574
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 7 May 2013 13:29:24 +0000 (13:29 +0000)]
deprecate Context::New which returns Persistent
BUG=
TBR=marja@chromium.org
Review URL: https://codereview.chromium.org/
14793004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14573
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 7 May 2013 13:24:04 +0000 (13:24 +0000)]
Prevent grokdump from crying about invalid input.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
14660012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14572
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 7 May 2013 13:09:23 +0000 (13:09 +0000)]
Free up 11 bits in fast-mode PropertyDetails by removing the enumeration-index.
The descriptors are nowadays ordered in order of addition, so that info was
duplicated.
Review URL: https://chromiumcodereview.appspot.com/
14622005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14571
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 7 May 2013 12:37:22 +0000 (12:37 +0000)]
Add Persistent<T>::Reset which disposes the handle and redirects it to point to another object.
BUG=
R=dcarney@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14788013
Patch from Marja Hölttä <marja@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14570
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 7 May 2013 12:20:33 +0000 (12:20 +0000)]
Object.observe: disable freezing changeRecords until it can be made fast
R=rossberg,adamk
BUG=
Review URL: https://codereview.chromium.org/
15017003
Patch from Rafael Weinstein <rafaelw@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14569
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Tue, 7 May 2013 12:02:15 +0000 (12:02 +0000)]
Fix braindead Handle::is_identical_to
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14660008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14568
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 7 May 2013 11:43:43 +0000 (11:43 +0000)]
Fast-forward version number on bleeding_edge. Now working on version 3.19.0.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
14580009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14567
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 7 May 2013 10:44:30 +0000 (10:44 +0000)]
add weakcallback without persistent copying
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14908004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14566
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 7 May 2013 10:32:23 +0000 (10:32 +0000)]
Fix polymorphic to monomorphic load to take representation into account.
Review URL: https://chromiumcodereview.appspot.com/
14966005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14565
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 7 May 2013 09:48:42 +0000 (09:48 +0000)]
Perform incremental marking step after free-list allocation and clean-up incremental marking start condition.
BUG=
Review URL: https://codereview.chromium.org/
14634007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14564
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Tue, 7 May 2013 08:46:42 +0000 (08:46 +0000)]
Generators return boxed values
Generators now box their return values in object literals of the form
{ value: VAL, done: DONE }
where DONE is false for yield expressions, and true for return
statements.
BUG=v8:2355
TEST=mjsunit/harmony/generators-iteration
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
13870007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14563
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Tue, 7 May 2013 07:23:39 +0000 (07:23 +0000)]
remove use of WriteAscii for vtune
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14900003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14562
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 6 May 2013 16:19:27 +0000 (16:19 +0000)]
Added an extra flag that enables only ArrayBuffer.
This makes Blink experimentation easier.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14884012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14560
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 6 May 2013 16:17:49 +0000 (16:17 +0000)]
Fix incremental marking speed accelleration and start incremental marking when old space is almost full when pretenuring objects.
BUG=
Review URL: https://codereview.chromium.org/
14714004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14559
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 6 May 2013 13:39:54 +0000 (13:39 +0000)]
Revert fix incremental marking speed accelleration and start incremental marking when old space is almost full when pretenuring objects.
BUG=
Review URL: https://codereview.chromium.org/
14988004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14558
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 6 May 2013 13:07:10 +0000 (13:07 +0000)]
Fix incremental marking speed accelleration and start incremental marking when old space is almost full when pretenuring objects.
BUG=
Review URL: https://codereview.chromium.org/
14649014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14555
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 6 May 2013 13:01:03 +0000 (13:01 +0000)]
Make v8 compilable without V8_USE_UNSAFE_HANDLES.
Without this modification, we get this error: "dereferencing type-punned pointer
will break strict-aliasing rules" (GCC strict aliasing).
Also included small CcTest sanity fixes: isolate() cannot return anything else
than default_isolate().
BUG=
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
14894006
Patch from Marja Hölttä <marja@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14554
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 6 May 2013 10:59:17 +0000 (10:59 +0000)]
Parallel compilation fix: the optimizer thread shouldn't change the allow allocation state on AssertNoAllocation scopes.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
14796014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14551
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Mon, 6 May 2013 09:27:06 +0000 (09:27 +0000)]
Fix occasional crash when lithium goes out of vregs.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
14850013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14550
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 3 May 2013 23:55:08 +0000 (23:55 +0000)]
MIPS: Pretenure ASCII cons string in high promotion mode.
Port r14540 (
c6093a6e)
BUG=
Review URL: https://codereview.chromium.org/
14678006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14549
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 3 May 2013 23:51:25 +0000 (23:51 +0000)]
MIPS: Before comparing input with a constant smi in GenerateRecordCallTarget(), make sure the input register is actually a smi.
Port r14547 (
a2e764c7)
BUG=
Review URL: https://codereview.chromium.org/
14597006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14548
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 3 May 2013 15:18:31 +0000 (15:18 +0000)]
Before comparing input with a constant smi in GenerateRecordCallTarget(), make sure the input register is actually a smi.
BUG=
Review URL: https://codereview.chromium.org/
14803005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14547
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 3 May 2013 14:58:06 +0000 (14:58 +0000)]
Cache first hint operand while building live ranges.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14771015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14546
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 3 May 2013 13:39:11 +0000 (13:39 +0000)]
Don't double unlink in DCE.
Review URL: https://chromiumcodereview.appspot.com/
14914004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14545
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
wingo@igalia.com [Fri, 3 May 2013 13:01:28 +0000 (13:01 +0000)]
toString() on generator functions prints with function*
This CL adds a %FunctionIsGenerator runtime function, and uses it in the
function toString() implementation.
R=mstarzinger@chromium.org
BUG=v8:2355
TEST=mjsunit/harmony/generators-runtime
Review URL: https://codereview.chromium.org/
14912002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14544
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 3 May 2013 12:49:48 +0000 (12:49 +0000)]
Remove obsolete LiveRange::FirstPosWithHint helper.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14650016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14543
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Fri, 3 May 2013 12:21:16 +0000 (12:21 +0000)]
Remove HLoadElements instruction and replace with use of more general HLoadNamedField. This removes the need for both the hydrogen and lithium instructions and allows both kinds of loads to be GVN'd.
Review URL: https://codereview.chromium.org/
14556020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14542
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 3 May 2013 11:05:54 +0000 (11:05 +0000)]
Turn on tracking of fields.
Review URL: https://chromiumcodereview.appspot.com/
14771014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14541
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Fri, 3 May 2013 10:36:16 +0000 (10:36 +0000)]
Pretenure ASCII cons string in high promotion mode.
BUG=
Review URL: https://codereview.chromium.org/
14451003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14540
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Fri, 3 May 2013 10:36:13 +0000 (10:36 +0000)]
d8 shell fix for r14530
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14907004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14539
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 3 May 2013 09:59:50 +0000 (09:59 +0000)]
Add type checks to typed array property getters.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14650014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14538
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Fri, 3 May 2013 09:43:44 +0000 (09:43 +0000)]
Implement TypedArray.subarray method.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14740017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14537
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 3 May 2013 08:50:48 +0000 (08:50 +0000)]
Remove 'unanimous use observations' rule from Phi representation inference
Review URL: https://codereview.chromium.org/
14840014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14536
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 3 May 2013 08:48:53 +0000 (08:48 +0000)]
Overwrite the handler using Set.
InsertAt apparently inserts by moving the other elements... that does not work.
Review URL: https://chromiumcodereview.appspot.com/
14566007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14535
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 3 May 2013 08:09:37 +0000 (08:09 +0000)]
Use first position in LAllocator ordering heuristic.
This changes the tiebreaker for LAllocator's ordering heuristic of
live ranges to use the first use position instead of the first hinted
use position. Searching for the first hinted position introduces
unnecessary overhead.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
14855010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14534
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Fri, 3 May 2013 06:47:24 +0000 (06:47 +0000)]
deprecate WriteAscii and MayContainNonAscii
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14638003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14533
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 2 May 2013 22:00:39 +0000 (22:00 +0000)]
build fix for 14530
TBR=svenpanne@chromium.org
BUG=
TEST=
Review URL: https://codereview.chromium.org/
14881002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14532
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 2 May 2013 20:28:02 +0000 (20:28 +0000)]
expose AssertNoAllocation to api
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14625003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14531
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 2 May 2013 20:18:42 +0000 (20:18 +0000)]
first step to remove unsafe handles
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
12729023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14530
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 2 May 2013 18:25:16 +0000 (18:25 +0000)]
MIPS: Turn the load field code stub into a hydrogen code stub.
Port r14526 (
7c581932)
BUG=
Review URL: https://codereview.chromium.org/
14855008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14529
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 2 May 2013 17:00:53 +0000 (17:00 +0000)]
Use worklist to find out Phis that could not be truncated to int32
Review URL: https://codereview.chromium.org/
13950013
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14528
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 2 May 2013 16:55:18 +0000 (16:55 +0000)]
Fix typo in cctest.status
Review URL: https://codereview.chromium.org/
14854011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14527
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 2 May 2013 16:32:47 +0000 (16:32 +0000)]
Turn the load field code stub into a hydrogen code stub.
Review URL: https://chromiumcodereview.appspot.com/
14847004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14526
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 2 May 2013 16:30:58 +0000 (16:30 +0000)]
Detect truncating Phi uses of Phis with constant inputs
Review URL: https://codereview.chromium.org/
14260013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14525
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 2 May 2013 15:42:22 +0000 (15:42 +0000)]
Cleanup IC heuristics.
Review URL: https://chromiumcodereview.appspot.com/
14611006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14524
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 2 May 2013 15:41:02 +0000 (15:41 +0000)]
Adding fast path for generalizing maps.
Review URL: https://chromiumcodereview.appspot.com/
14629005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14523
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 2 May 2013 15:40:07 +0000 (15:40 +0000)]
Update deprecated maps before generating optimized code.
Review URL: https://chromiumcodereview.appspot.com/
14847008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14522
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 2 May 2013 14:41:06 +0000 (14:41 +0000)]
Always tag number candidate as smi if it does not come from load-keyed.
Review URL: https://chromiumcodereview.appspot.com/
14556007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14521
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 2 May 2013 13:51:03 +0000 (13:51 +0000)]
Allow pathological zero-length typed arrays.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14857002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14520
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 2 May 2013 13:30:57 +0000 (13:30 +0000)]
Range checking bug in typed array constructor.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14850011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14519
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 2 May 2013 12:27:03 +0000 (12:27 +0000)]
More typed array constructors.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14845012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14518
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 2 May 2013 11:36:48 +0000 (11:36 +0000)]
Implementation of Uint8ClampedArray.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14657003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14517
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 2 May 2013 11:22:32 +0000 (11:22 +0000)]
Bump virtual register width in LUnallocated.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14589008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14516
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 2 May 2013 09:51:07 +0000 (09:51 +0000)]
Allow more virtual registers to be encoded in LUnallocated.
This is a preparation which allows us to bump the virtual register width
from 15 to 18 bit without sacrificing width for other fields inside an
unallocated lithium operand.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14639008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14513
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 30 Apr 2013 22:54:36 +0000 (22:54 +0000)]
MIPS: Fix mjsunit/harmony/generators-iteration test failure.
BUG=
Review URL: https://codereview.chromium.org/
14695004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14512
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 30 Apr 2013 19:09:33 +0000 (19:09 +0000)]
MIPS: Allow setting debugger breakpoints on CompareNilICs
Port r14487 (
022d1fc3)
BUG=
Review URL: https://codereview.chromium.org/
14662002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14509
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 18:53:27 +0000 (18:53 +0000)]
Add Value::Is* methods for typed arrays and ArrayBuffer
R=rossberg
BUG=
Committed https://code.google.com/p/v8/source/detail?r=14506
Review URL: https://codereview.chromium.org/
13977018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14508
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 18:49:20 +0000 (18:49 +0000)]
Revert "Fix typo"
This reverts commit r14506 (that was commited with a wrong description).
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14507
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 18:02:22 +0000 (18:02 +0000)]
Fix typo
R=rossberg@chromium.org
BUG=
Committed: https://code.google.com/p/v8/source/detail?r=14505
Review URL: https://codereview.chromium.org/
13993029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14506
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 17:57:54 +0000 (17:57 +0000)]
Fix typo
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
13993029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14505
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 17:56:32 +0000 (17:56 +0000)]
Revert "patch from issue
13993029"
This reverts commit
2d49d456dd09a8f8ffae87f777d5f10b587534e8.
Revert patch with incorrect description
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14504
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 17:50:04 +0000 (17:50 +0000)]
patch from issue
13993029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14503
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 30 Apr 2013 16:51:30 +0000 (16:51 +0000)]
Revert "frames.h/cc cleanup"
This reverts r14496 which broke tests in debug mode:
Command: /mnt/data/b/build/slave/v8-linux-nosnap-debug/build/v8/out/Debug/cctest test-log/LogAccessorCallbacks --nobreak-on-abort --nodead-code-elimination --nofold-constants --enable-slow-asserts --debug-code --verify-heap --testing_serialization_file=/mnt/data/b/build/slave/v8-linux-nosnap-debug/build/v8/out/.serdes/serdes_LogAccessorCallbacks
=== cctest/test-log/LogCallbacks ===
--- stderr ---
TBR=jkummerow@chromium.org
BUG=None
Review URL: https://codereview.chromium.org/
14651004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14502
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 30 Apr 2013 16:36:14 +0000 (16:36 +0000)]
Prepare push to trunk. Now working on version 3.18.6.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
14646011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14497
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 30 Apr 2013 14:37:18 +0000 (14:37 +0000)]
frames.h/cc cleanup
BUG=None
R=jkummerow@chromium.org, loislo@chromium.org
Review URL: https://codereview.chromium.org/
14650002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14496
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 30 Apr 2013 13:43:45 +0000 (13:43 +0000)]
Two bugfixes for hydrogen-based array constructors
CacheInitialJSArrayMaps needs to be able to pick up where it left off,
as it can now be called from a handlfied context.
Disable incremental marking for CCTest SetJitCodeEventHandler, as it allocates
during compilation.
BUG=
Review URL: https://codereview.chromium.org/
14642002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14495
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 11:34:43 +0000 (11:34 +0000)]
Accurate function prototypes for native calls from ARM simulator.
This is a resubmit of codereview.chromium.org/
13818012 with the following modifications:
- src/x64/code-stubs-x64.cc for changes specific to Win64 calling conventions.
- src/sampler.cc for Native Client support
BUG=v8:2614
Committed: https://code.google.com/p/v8/source/detail?r=14491
Review URL: https://codereview.chromium.org/
14305029
Patch from Brad Chen <bradchen@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14494
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 11:31:09 +0000 (11:31 +0000)]
Revert "Accurate function prototypes for native calls from ARM simulator."
This reverts commit r14991. (one file missing)
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14493
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 11:23:34 +0000 (11:23 +0000)]
Revert "Flag optimize-constructed-arrays turned on."
This reverts commit r14491.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14492
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 30 Apr 2013 11:16:40 +0000 (11:16 +0000)]
Accurate function prototypes for native calls from ARM simulator.
This is a resubmit of codereview.chromium.org/
13818012 with the following modifications:
- src/x64/code-stubs-x64.cc for changes specific to Win64 calling conventions.
- src/sampler.cc for Native Client support
BUG=v8:2614
Review URL: https://codereview.chromium.org/
14305029
Patch from Brad Chen <bradchen@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14491
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 30 Apr 2013 08:22:05 +0000 (08:22 +0000)]
Flag optimize-constructed-arrays turned on.
This routes array construction through a hydrogen stub, and enables use of
allocation site info tracking.
BUG=
Review URL: https://codereview.chromium.org/
14616010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14490
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 30 Apr 2013 08:21:52 +0000 (08:21 +0000)]
Make UsePosition::hint immutable.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14524008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14489
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 30 Apr 2013 08:00:43 +0000 (08:00 +0000)]
Fix HConstant::InNewSpace() for parallel compilation.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
13977019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14488
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 30 Apr 2013 07:56:09 +0000 (07:56 +0000)]
Allow setting debugger breakpoints on CompareNilICs
BUG=v8:2660
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
14106011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14487
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 29 Apr 2013 16:16:31 +0000 (16:16 +0000)]
TypedArray(length) constructor
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
14460008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14486
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 29 Apr 2013 15:09:22 +0000 (15:09 +0000)]
Fix bug in CompareNil IC
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
13863022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14483
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 29 Apr 2013 15:05:06 +0000 (15:05 +0000)]
Fix GCMole after r14476
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
13945026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14482
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 29 Apr 2013 14:34:24 +0000 (14:34 +0000)]
Fix beyond-heap load on x64 Crankshafted StringCharFromCode
BUG=chromium:235311
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
14387008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14481
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 29 Apr 2013 14:13:32 +0000 (14:13 +0000)]
Shared build fix
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
14396004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14480
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 29 Apr 2013 13:45:34 +0000 (13:45 +0000)]
Do not use repeated subtractions in mod-i, it hurts performance in general.
ARM only: Check for -0 only when really necessary. Tiny code de-duplication.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
14499011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14479
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00