danno@chromium.org [Fri, 8 Nov 2013 17:35:58 +0000 (17:35 +0000)]
Reland 17588: Add signed/unsigned 8-bit and 16-bit Representations to Crankshaft
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
66193004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17606
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 8 Nov 2013 17:23:25 +0000 (17:23 +0000)]
Move new-space allocation tracking into Heap::AllocateRaw.
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/
66683004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17605
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 8 Nov 2013 17:14:54 +0000 (17:14 +0000)]
[Sheriff] Mark flaky webkit tests.
BUG=v8:2989
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
66163004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17604
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 8 Nov 2013 17:09:14 +0000 (17:09 +0000)]
Make runtime new-space allocations go through Heap::AllocateRaw.
R=ulan@chromium.org, ishell@chromium.org
Review URL: https://codereview.chromium.org/
66723003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17603
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Fri, 8 Nov 2013 15:36:22 +0000 (15:36 +0000)]
Revert "[Object.observe] Don't force normalization of elements for observed objects"
Broke ARM build
TBR=danno
BUG=
Review URL: https://codereview.chromium.org/
66603004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17602
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Fri, 8 Nov 2013 14:55:13 +0000 (14:55 +0000)]
[Object.observe] Don't force normalization of elements for observed objects
BUG=v8:2946
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
29353003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17601
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 8 Nov 2013 14:27:16 +0000 (14:27 +0000)]
Add push-to-trunk python port.
Preliminary version.
TODO: Add wrapper script in tools dir.
TODO: Some refactoring.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
49653002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17600
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 8 Nov 2013 14:16:34 +0000 (14:16 +0000)]
Do not add values to HGraph in Lithium.
Lithium uses indexes after the maximium value ID in the HGraph as indexes
of virtual registers and assumes that the maximum value ID does not change.
The IsStandardConstant and GetConstantXX functions could add constants to
HGraph, which aliased virtual registers with real values. This could confuse
the register allocator to think that a value in a virtual register is tagged
and to incorrectly set it in the pointer map.
BUG=298269
TEST=mjsunit/regress/regress-298269.js
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
66693002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17599
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 8 Nov 2013 13:54:34 +0000 (13:54 +0000)]
Revert "Add signed/unsigned 8-bit and 16-bit Representations to Crankshaft"
Revert "Fix ARM build"
Revert "Fix ARM build (again)"
TBR=danno@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
66553004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17597
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 8 Nov 2013 13:44:27 +0000 (13:44 +0000)]
Revert "Implement Math.sin, cos and tan using table lookup and spline interpolation."
This reverts commit r17594.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
59153007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17596
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 8 Nov 2013 13:10:39 +0000 (13:10 +0000)]
Implement Math.sin, cos and tan using table lookup and spline interpolation.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
50563003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17594
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 8 Nov 2013 12:41:02 +0000 (12:41 +0000)]
Fix ARM build (again)
R=yangguo@chromium.org
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
66673002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17592
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 8 Nov 2013 12:23:48 +0000 (12:23 +0000)]
Fix ARM build
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
62203010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17590
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 8 Nov 2013 11:50:23 +0000 (11:50 +0000)]
Add signed/unsigned 8-bit and 16-bit Representations to Crankshaft
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
61623004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17588
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 8 Nov 2013 11:45:56 +0000 (11:45 +0000)]
Fix error message wording when instanceof throws.
R=bmeurer@chromium.org
BUG=82797, v8:1593
Review URL: https://codereview.chromium.org/
66463002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17587
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 8 Nov 2013 11:20:18 +0000 (11:20 +0000)]
Fixed build.
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
66523002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17586
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 8 Nov 2013 10:58:51 +0000 (10:58 +0000)]
Use register allocator for context on x64.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
50863002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17585
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 8 Nov 2013 10:55:01 +0000 (10:55 +0000)]
Removed dead function V8::FillHeapNumberWithRandom.
Removed a useless test case along the way.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
65143007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17584
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 8 Nov 2013 10:52:07 +0000 (10:52 +0000)]
Use nearlabel AFAP in lithium codegen
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
47533002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17583
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 8 Nov 2013 09:10:19 +0000 (09:10 +0000)]
Prepare push to trunk. Now working on version 3.23.2.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
59933005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17578
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 8 Nov 2013 07:45:15 +0000 (07:45 +0000)]
Remove unused ValueInfo struct
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
46673004
Patch from Adrian Perez de Castro <aperez@igalia.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17577
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 8 Nov 2013 00:47:34 +0000 (00:47 +0000)]
MIPS: Proper support for deopt_every_n_times option on the x64 and ARM architectures.
Port r17564 (
b928ddeb)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
65903002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17575
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 7 Nov 2013 21:59:45 +0000 (21:59 +0000)]
MIPS: Add new HSeqStringGetChar instruction.
Port r17565 (
dce7927c)
Original commit message:
This instruction is required for copying characters from sequential
strings in the hydrogenized StringAddStub.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
65483002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17574
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Thu, 7 Nov 2013 20:11:18 +0000 (20:11 +0000)]
MIPS: Turn Load/StoreGlobal into a handler.
Port r17550 (3e0015e)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
60733010
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17573
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Thu, 7 Nov 2013 19:28:58 +0000 (19:28 +0000)]
MIPS: Refine CountOperation of FullCodeGen.
Port r17547 (a4b59e4)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
64893002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17572
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Thu, 7 Nov 2013 16:35:27 +0000 (16:35 +0000)]
Allow redirecting disassembly and deoptimization traces into a file.
This is controlled by two flags:
--redirect_code_traces
--redirect_code_traces_to=<filename>
When redirection is enabled but --redirect_code_traces_to is not specified traces are written to a file code-<pid>-<isolate>.asm. This mangling scheme matches hydrogen.cfg and allows easy discovery of compilation artifacts in a multi-V8 environment (e.g. when compilation is traced from inside Chromium).
D8 defines --redirect_code_traces_to=code.asm similar to hydrogen.cfg redirection.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
43273004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17571
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 7 Nov 2013 16:25:20 +0000 (16:25 +0000)]
Disable concurrent osr when concurrent recompilation is disabled.
Also introduce a flag for a quick check that concurrency is on.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
64543004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17570
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 7 Nov 2013 16:07:19 +0000 (16:07 +0000)]
Make HCapturedObjects non-deletable for DCE.
R=jkummerow@chromium.org
BUG=v8:2987
TEST=mjsunit/regress/regress-2987
Review URL: https://codereview.chromium.org/
64433002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17569
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 7 Nov 2013 14:56:40 +0000 (14:56 +0000)]
Speed up typed array constructors.
- Avoid calls into ToPositiveInteger for valid cases of 'undefined' arguments.
(Otherwise it calls into runtime).
- Reduce the checks performed in case offset for TypedArrayFromArrayBuffer
constructor is called with no offset argument.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
59763010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17567
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 7 Nov 2013 14:45:17 +0000 (14:45 +0000)]
Fix clang debug build.
BUG=
R=rafaelw@chromium.org
Review URL: https://codereview.chromium.org/
64243003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17566
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 7 Nov 2013 13:43:03 +0000 (13:43 +0000)]
Add new HSeqStringGetChar instruction.
This instruction is required for copying characters from sequential
strings in the hydrogenized StringAddStub.
BUG=v8:2990
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
63863005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17565
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 7 Nov 2013 13:09:48 +0000 (13:09 +0000)]
Proper support for deopt_every_n_times option on the x64 and ARM architectures.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
62293002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17564
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 7 Nov 2013 13:03:03 +0000 (13:03 +0000)]
Revert "Add new HSeqStringGetChar instruction."
This reverts commit r17562 for invalid usage of movw to load string
characters. Will reland with fix.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
64333002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17563
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 7 Nov 2013 12:59:35 +0000 (12:59 +0000)]
Add new HSeqStringGetChar instruction.
This instruction is required for copying characters from sequential
strings in the hydrogenized StringAddStub.
BUG=v8:2990
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
63863005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17562
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Thu, 7 Nov 2013 12:35:57 +0000 (12:35 +0000)]
Handlify Runtime::SetObjectProperty
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
62333002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17560
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 7 Nov 2013 12:20:45 +0000 (12:20 +0000)]
Disable stress-gc for memento-related test.
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
64003004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17559
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 7 Nov 2013 12:08:37 +0000 (12:08 +0000)]
Defer allocation of constant literal properties.
This moves building of constant properties and elements arrays for all
materialized literals into the compiler. The parser no longer allocates
while parsing ObjectLiteral and ArrayLiteral expressions.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
61873003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17557
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 7 Nov 2013 12:01:26 +0000 (12:01 +0000)]
Use a fixed random seed per default.
To get back the old behavior, use "make randomseed=0 ...".
BUG=v8:1880,v8:2885
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
64093003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17555
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 7 Nov 2013 10:52:41 +0000 (10:52 +0000)]
Cleanup stub-cache's obsolete ComputeLoad/Store interface.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
64023003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17554
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 7 Nov 2013 10:18:56 +0000 (10:18 +0000)]
Remove DisallowHeapAllocation requirement now that the target() is cached on the IC.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
61773004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17551
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 7 Nov 2013 10:17:13 +0000 (10:17 +0000)]
Turn Load/StoreGlobal into a handler.
BUG=
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
26968004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17550
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 7 Nov 2013 09:34:52 +0000 (09:34 +0000)]
Refine CountOperation of FullCodeGen
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
42973002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17547
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 7 Nov 2013 09:08:34 +0000 (09:08 +0000)]
Fix y-umlaut to uppercase.
R=dcarney@chromium.org
BUG=v8:2984
Review URL: https://codereview.chromium.org/
59853006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17545
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 7 Nov 2013 08:23:09 +0000 (08:23 +0000)]
Removed useless getter/setter.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
64013002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17541
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 7 Nov 2013 08:14:27 +0000 (08:14 +0000)]
Refactor loading a pointer and loading an integer64 into a register instructions for X64
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
39543003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17540
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 7 Nov 2013 07:37:28 +0000 (07:37 +0000)]
Refactored ObjectSerializer::VisitFoo functions.
Tiny superficial cleanup to make the similarities more visible.
Removed a few useless assertions on the way.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
60363006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17539
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 7 Nov 2013 07:17:57 +0000 (07:17 +0000)]
Fix WIN64 build
Review URL: https://codereview.chromium.org/
63703002
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17538
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Thu, 7 Nov 2013 02:08:53 +0000 (02:08 +0000)]
Move movq(Register, ExternalReference) into X64 MacroAssembler
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
43333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17537
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Wed, 6 Nov 2013 23:52:37 +0000 (23:52 +0000)]
MIPS: Improve implementation of HSeqStringSetChar.
Port r17521 (c51c75e)
Original commit message:
This improves the generated code for HSeqStringSetChar across
all platforms, taking advantage of constant operands whenever
possible. It also drops the unused DefineSameAsFirst constraint
for the register allocator on x64 and ia32, where it caused
unnecessary spills when the string operand was live across the
HSeqStringSetChar instruction.
A new GVN flag StringChars is introduced to express dependencies
between HSeqStringSetChar, HStringCharCodeAt and the upcoming
HSeqStringGetChar (the GVNFlags type is now 64bit in size).
Also improves the test case.
TEST=mjsunit/string-natives
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
61893003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17536
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Wed, 6 Nov 2013 21:22:41 +0000 (21:22 +0000)]
MIPS: Correct handling of arrays with callbacks in the prototype chain.
Port r17525 (55b95f3)
Original commit message:
Our generic KeyedStoreIC doesn't handle the case when a callback is
set on array elements in the prototype chain of the object, nor do
we recognize that we need to avoid the monomorphic case if these
callbacks exist.
This CL addresses the issue by looking for dictionary elements in
the prototype chain on IC misses and crankshaft element store
instructions. When found, the generic IC is used. The generic IC is
changed to go to the runtime in this case too.
In general, keyed loads are immune from this problem because they
won't return the hole: discovery of the hole goes to the runtime where
the callback will be found in the prototype chain. Double array loads
in crankshaft can return the hole but only if the prototype chain is
unaltered (we will catch such alterations).
Includes the following patch as well (already reviewed by bmeurer):
Performance regression found in test regress-2185-2.js. The problem was
that the bailout method for TransitionAndStoreStub was not performing
the appropriate transition.
(Review URL for the ElementsTransitionAndStoreIC_Miss change:
https://codereview.chromium.org/
26911007)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
63083002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17535
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 6 Nov 2013 18:19:26 +0000 (18:19 +0000)]
Revert "Landing https://codereview.chromium.org/
40133004 for mnita@google.com." due to test failures.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
62563002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17533
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
cira@chromium.org [Wed, 6 Nov 2013 17:27:31 +0000 (17:27 +0000)]
Landing https://codereview.chromium.org/
40133004 for mnita@google.com.
Implements ES6 String.prototype.normalize method.
BUG=v8:2943
TEST=Unit tests for "real life" use cases, edge cases, various types of normalization.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
60013010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17532
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 6 Nov 2013 17:05:50 +0000 (17:05 +0000)]
Add three string constants from parser to the root-set.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
62143002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17531
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 6 Nov 2013 16:38:40 +0000 (16:38 +0000)]
Change test expectations for webkit/fast/js/object-slow-put and friends.
R=verwaest@chromium.org
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
62213002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17530
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Wed, 6 Nov 2013 16:32:47 +0000 (16:32 +0000)]
Handlify ForceSetObjectProperty
Note that I've left the layering as is to make the diffs clear. Is it worth moving ForceSetObjectProperty to objects.cc? This code is clearly implementing part of the DefineOrRedefine steps from the spec, but it's still odd that it lives in Runtime. Note that handles.cc exposes a ForceSetProperty which just performs a CALL_HEAP_FUNCTION on the Runtime::ForceSetObjectProperty -- which is exposed to the api as v8::Object::ForceSet
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
61883002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17529
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 6 Nov 2013 16:28:38 +0000 (16:28 +0000)]
Ensure that typed array constructors are crankshaftable.
Also, do not allocate sub-closures for every call to typed array constructor.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
59913003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17528
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 6 Nov 2013 15:47:05 +0000 (15:47 +0000)]
Age ICs on context dispose notification.
R=ulan@chromium.org
BUG=309723
Review URL: https://codereview.chromium.org/
59383012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17526
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 6 Nov 2013 15:45:43 +0000 (15:45 +0000)]
Correct handling of arrays with callbacks in the prototype chain.
Our generic KeyedStoreIC doesn't handle the case when a callback is
set on array elements in the prototype chain of the object, nor do
we recognize that we need to avoid the monomorphic case if these
callbacks exist.
This CL addresses the issue by looking for dictionary elements in
the prototype chain on IC misses and crankshaft element store
instructions. When found, the generic IC is used. The generic IC is
changed to go to the runtime in this case too.
In general, keyed loads are immune from this problem because they
won't return the hole: discovery of the hole goes to the runtime where
the callback will be found in the prototype chain. Double array loads
in crankshaft can return the hole but only if the prototype chain is
unaltered (we will catch such alterations).
Includes the following patch as well (already reviewed by bmeurer):
Performance regression found in test regress-2185-2.js. The problem was
that the bailout method for TransitionAndStoreStub was not performing
the appropriate transition.
(Review URL for the ElementsTransitionAndStoreIC_Miss change:
https://codereview.chromium.org/
26911007)
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
35413006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17525
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 6 Nov 2013 13:42:00 +0000 (13:42 +0000)]
Another fix for windows breakage after r17521.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
61953002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17523
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 6 Nov 2013 13:20:14 +0000 (13:20 +0000)]
Fix windows build after r17521.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
61943002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17522
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 6 Nov 2013 13:09:22 +0000 (13:09 +0000)]
Improve implementation of HSeqStringSetChar.
This improves the generated code for HSeqStringSetChar across
all platforms, taking advantage of constant operands whenever
possible. It also drops the unused DefineSameAsFirst constraint
for the register allocator on x64 and ia32, where it caused
unnecessary spills when the string operand was live across the
HSeqStringSetChar instruction.
A new GVN flag StringChars is introduced to express dependencies
between HSeqStringSetChar, HStringCharCodeAt and the upcoming
HSeqStringGetChar (the GVNFlags type is now 64bit in size).
Also improves the test case.
TEST=mjsunit/string-natives
R=mstarzinger@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
57383004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17521
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Wed, 6 Nov 2013 12:14:24 +0000 (12:14 +0000)]
[Object.observe] rename intrinsic change record types for consitency.
Note the spec now reflects the updated naming:
http://wiki.ecmascript.org/doku.php?id=harmony:observe_spec_changes
R=rossberg@chromium.org, rossberg
BUG=v8:2940
Review URL: https://codereview.chromium.org/
46043020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17520
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 6 Nov 2013 12:13:01 +0000 (12:13 +0000)]
Revert r17152 - "Revert r17018 - "Turn on handle zapping for release builds""
Apparently, this wasn't the cause for dromaeo regressions.
> BUG=none
> R=jkummerow@chromium.org
>
> Review URL: https://codereview.chromium.org/
26457002
R=verwaest@chromium.org, jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
36843002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17519
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 6 Nov 2013 12:01:03 +0000 (12:01 +0000)]
Prepare push to trunk. Now working on version 3.23.1.
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
60513010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17516
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 6 Nov 2013 09:29:09 +0000 (09:29 +0000)]
Add support for tracking NotExectuted/ExecutedOnceCodeAge's when --track_gc_object_stats flag is set.
BUG=None
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
40003002
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17513
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 6 Nov 2013 06:59:32 +0000 (06:59 +0000)]
Add isolate parameter to SetResourceConstraints, and deprecate version which depends on current isolate.
BUG=None
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
38993005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17509
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 5 Nov 2013 20:48:35 +0000 (20:48 +0000)]
MIPS: Avoid using dd() in Prologue when --optimize-for-size.
Port: r17485 (0d82025)
Original commit message:
When --optimize-for-size is true, the prologue generation outputs the
pre-aging code stub address directly to the instruction stream. Previously
this was done using dd() which failed if there was any pending constant
pool entries left to be written. This CL introduces an emit_code_stub_address()
for this purpose instead.
BUG=v8:2968
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17508
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 5 Nov 2013 19:56:40 +0000 (19:56 +0000)]
MIPS: Try to use Push instead of push sequences whenever possible.
Port r17466 (e519285)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
58853003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17507
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 5 Nov 2013 19:29:58 +0000 (19:29 +0000)]
[Sheriff] Mark flaky test on windows.
It was marked as flaky on linux nosnap, arm and nacl before. Now it's marked universally flaky since windows joined the list.
BUG=v8:2921
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
54713002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17506
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 5 Nov 2013 17:52:47 +0000 (17:52 +0000)]
MIPS: Use loop to initialize locals when optimizing for size.
Port r17465 (9f3f3d1)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
59853002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17505
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Tue, 5 Nov 2013 17:45:42 +0000 (17:45 +0000)]
Remove unused IdempotentPointerToHandleCodeTrampoline
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
59973006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17504
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 5 Nov 2013 15:36:15 +0000 (15:36 +0000)]
Revert "Handlify concat string and substring."
This reverts r17490.
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
59973004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17497
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Tue, 5 Nov 2013 15:33:14 +0000 (15:33 +0000)]
Remove SetLocalPropertiesIgnoreAttributesTrampoline
BUG=v8:2877
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
59343003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17496
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 5 Nov 2013 14:24:57 +0000 (14:24 +0000)]
Add back assertion SetResourceConstraints.
This reverts commit
f7f04272208d565020b528145ce6cef0f89c7079.
BUG=312233
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
59133003
Patch from Ross Mcilroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17493
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 5 Nov 2013 14:22:12 +0000 (14:22 +0000)]
Simplified Assembler::target_pointer_address_at.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
59913002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17492
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 5 Nov 2013 14:08:03 +0000 (14:08 +0000)]
Add simple inline macros to js2c and use that for typed array constructors.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
44173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17491
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 5 Nov 2013 14:07:07 +0000 (14:07 +0000)]
Handlify concat string and substring.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
50073005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17490
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Tue, 5 Nov 2013 13:47:51 +0000 (13:47 +0000)]
Remove calls to SetLocalPropertyIgnoreAttributesTrampoline from accessors.cc
BUG=v8:2877
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
59773002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17489
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 5 Nov 2013 13:46:11 +0000 (13:46 +0000)]
Revert "Record allocation stack traces".
This reverts commit r17365 for memory corruption. The issues
are most probably related to storing a filler map without
checking the bump pointer first, and traversing the stack
when called from within a stub (or builtin), while the code
assumes that it's called from a JS function.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
59583003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17488
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 5 Nov 2013 13:34:14 +0000 (13:34 +0000)]
Handlify Heap::AllocateFunctionPrototype method.
R=rossberg@chromium.org
BUG=v8:2877
Review URL: https://codereview.chromium.org/
37463002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17487
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Tue, 5 Nov 2013 13:23:03 +0000 (13:23 +0000)]
HeapProfiler: provide human readable names for code objects.
It is very hard to understand the structure of the heap even for about:blank page
because code objects in the heap have no names. This patch propagates the names
for Code::STUB and Code::BUILTIN code objects.
Also it assign function names from SharedFunctionInfo to the code objects.
BUG=
R=alph@chromium.org, svenpanne@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
52643002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17486
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 5 Nov 2013 13:19:14 +0000 (13:19 +0000)]
Avoid using dd() in Prologue when --optimize-for-size.
When --optimize-for-size is true, the prologue generation outputs the
pre-aging code stub address directly to the instruction stream. Previously
this was done using dd() which failed if there was any pending constant
pool entries left to be written. This CL introduces an emit_code_stub_address()
for this purpose instead.
BUG=v8:2968
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
47743007
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17485
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 5 Nov 2013 13:04:51 +0000 (13:04 +0000)]
Correctly load message from an Error object.
R=mstarzinger@chromium.org
BUG=306220
Review URL: https://codereview.chromium.org/
46593010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17484
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 5 Nov 2013 12:32:03 +0000 (12:32 +0000)]
Handlify Heap::AllocateInitialMap method.
R=rossberg@chromium.org
BUG=v8:2877
Review URL: https://codereview.chromium.org/
32003006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17482
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Tue, 5 Nov 2013 12:25:32 +0000 (12:25 +0000)]
Make Object.freeze/seal/preventExtensions observable
Note: spec has been updated here: http://wiki.ecmascript.org/doku.php?id=harmony:observe_spec_changes.
R=rossberg@chromium.org, rossberg
BUG=v8:2975,v8:2941
Review URL: https://codereview.chromium.org/
47703003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17481
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 5 Nov 2013 12:11:27 +0000 (12:11 +0000)]
Introduce JSFunction::EnsureHasInitialMap method.
This change enforces explicit allocation of the initial map for each
JSFunction to introduce a proper layering between the JSFunction class
and the Heap class. A follow-up change will then handlify the two
functions AllocateInitialMap and AllocateFunctionPrototype.
R=rossberg@chromium.org
BUG=v8:2877
Review URL: https://codereview.chromium.org/
32323013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17480
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 5 Nov 2013 12:04:46 +0000 (12:04 +0000)]
Introduce orps for IA32/X64
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
53573004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17479
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 5 Nov 2013 11:59:42 +0000 (11:59 +0000)]
Add counters to track the maximum amount of memory committed by the heap.
BUG=None
R=bmeurer@chromium.org, ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
29203003
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17478
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Tue, 5 Nov 2013 11:47:11 +0000 (11:47 +0000)]
Remove calls to JSObject::SetLocalPropertyIgnoreAttributesTrampoline within objects.cc
This includes handlifing:
-SetHiddenPropertiesHashTable
-ObjectHashSet::Add/Remove
-ObjectHashTable::Put
And splitting the following methods which previously took "allow creation" enum arguments to into side-effect-free getters and GetOrCreate*-handlfied getters.
-GetHash (now GetHash & handlified GetOrCreateHash)
-GetIdentityHash (now GetIdentityHash & handlified GetOrCreateIdentityHash)
-GetHiddenPropertiesHashTable (now GetHiddenPropertiesHashTable & handlified GetOrCreateaHiddenPropertiesHashTable)
BUG=v8:2877
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
48913008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17477
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Tue, 5 Nov 2013 11:23:08 +0000 (11:23 +0000)]
[Object.observe] Implement implicit notification from performChange
R=arv@chromium.org, rossberg@chromium.org, rossberg
BUG=v8:2942
Review URL: https://codereview.chromium.org/
36313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17476
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 5 Nov 2013 11:01:31 +0000 (11:01 +0000)]
Proper fix for the issue exposed by r17459
This reverts r17462 and instead fixes StubCache::ComputeLoadNonexistent by replacing s/IsGlobalObject/IsJSGlobalObject/ there.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
59103005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17474
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 5 Nov 2013 10:14:48 +0000 (10:14 +0000)]
Make snapshots reproducible.
To keep the structure of the serializer more or less untouched, we use
some ingenious Corry-approved(TM) 3-step technology (a.k.a. "hack"):
* Create copies of code objects.
* Wipe out all absolute addresses in these copies.
* Write out the cleaned copies instead of the originals.
In conjunction with --random-seed, our snapshots are reproducible now.
BUG=v8:2885
R=bmeurer@chromium.org, erik.corry@gmail.com
Review URL: https://codereview.chromium.org/
54823002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17473
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 5 Nov 2013 10:05:03 +0000 (10:05 +0000)]
Introduce raw accessors for type_feedback_info.
This pure refactoring is needed for another upcoming CL.
Note that the actual names are still a bit confusing, because this is
still a kind of swiss-army-knife-field. :-/
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
52633003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17472
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 5 Nov 2013 09:58:49 +0000 (09:58 +0000)]
Bump iteration count for escape analysis.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
43653005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17471
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 5 Nov 2013 09:54:59 +0000 (09:54 +0000)]
Remove CreateArrayLiteralShallow, as it's fundamentally the same now as
CreateArrayLiteral.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
54333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17470
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 5 Nov 2013 09:40:36 +0000 (09:40 +0000)]
Removed RelocInfo::target_object_address() and reconstructed_obj_ptr_.
Depends on https://codereview.chromium.org/
46583006/ and has similar reasoning behind it.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
50413004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17469
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 5 Nov 2013 09:32:39 +0000 (09:32 +0000)]
Fix double-boxing issue when materializing captured objects.
R=verwaest@chromium.org
TEST=mjsunit/compiler/escape-analysis-representation
Review URL: https://codereview.chromium.org/
57783003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17468
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Tue, 5 Nov 2013 09:22:35 +0000 (09:22 +0000)]
Refactored EXTERNAL_REFERENCE handling.
Previously, the result of target_reference_address() could only be
read, writing to it would have had an architecture-dependent effect,
e.g. writing into the code on ia32, a no-op on arm, etc.
This refactoring-only CL turns this into a simple getter, making it
impossible to use incorrectly.
More to come...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
46583006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17467
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 5 Nov 2013 09:00:00 +0000 (09:00 +0000)]
Try to use STMDB/LDMIA instead of LDR/STR sequences whenever possible.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
44313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17466
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 5 Nov 2013 08:58:34 +0000 (08:58 +0000)]
ARM: Use loop to initialize locals when optimizing for size.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
52163002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17465
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00