verwaest [Mon, 9 Mar 2015 12:30:03 +0000 (05:30 -0700)]
Revert of Store the next serial number in the function cache rather than in the isolate.Don't overwrite existi (patchset #4 id:60001 of https://codereview.chromium.org/
988693003/)
Reason for revert:
This doesn't do what it's supposed to do. The problem seems to lie on the blink side, people aren't reusing their FunctionTemplates (or creating them when not necessary).
Original issue's description:
> Don't overwrite existing serial numbers on the function template, otherwise instantiating the function for a new context causes the serial number to bump.
>
> Committed: https://crrev.com/
1e638c3610ec6938e5fb16c42018642195782fb2
> Cr-Commit-Position: refs/heads/master@{#27048}
TBR=yangguo@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
993533003
Cr-Commit-Position: refs/heads/master@{#27067}
dcarney [Mon, 9 Mar 2015 12:26:22 +0000 (05:26 -0700)]
use a hash table for the function cache as blink is leaking functiontemplates
BUG=
Review URL: https://codereview.chromium.org/
988283003
Cr-Commit-Position: refs/heads/master@{#27066}
Benedikt Meurer [Mon, 9 Mar 2015 11:06:30 +0000 (12:06 +0100)]
[x86] Faster/shorter code for stack checks.
Avoid loading the stack pointer and the stack limit into allocatable
registers first, but generate a cmp rsp,[limit] instead.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
989203002
Cr-Commit-Position: refs/heads/master@{#27065}
Jaroslav Sevcik [Mon, 9 Mar 2015 10:10:59 +0000 (11:10 +0100)]
Do not set target in deoptimized code in keyed store IC.
BUG=chromium:460937
R=ishell@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
989093002
Cr-Commit-Position: refs/heads/master@{#27064}
ishell@chromium.org [Mon, 9 Mar 2015 10:10:36 +0000 (11:10 +0100)]
Revert of Remove slots that point to unboxed doubles from the StoreBuffer/SlotsBuffer. (patchset #4 id:230001 of https://codereview.chromium.org/
957273002/)
Reason for revert:
It caused a lot of Canary crashes.
Original issue's description:
> Remove slots that point to unboxed doubles from the StoreBuffer/SlotsBuffer.
>
> The problem is that tagged slot could become a double slot after migrating of an object to another map with "shifted" fields (for example as a result of generalizing immutable data property to a data field).
> This CL also adds useful machinery that helps triggering incremental write barriers.
>
> BUG=chromium:454297
> LOG=Y
>
> Committed: https://crrev.com/
9633ebabd405c264d33f603f8798c31f59418dcd
> Cr-Commit-Position: refs/heads/master@{#27054}
TBR=verwaest@chromium.org,hpayer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:454297
Review URL: https://codereview.chromium.org/
991793002
Cr-Commit-Position: refs/heads/master@{#27063}
Benedikt Meurer [Mon, 9 Mar 2015 10:07:52 +0000 (11:07 +0100)]
[turbofan] Minor cleanup for JSGenericLowering.
Include what you use, and move implementation details to .cc file.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
986243002
Cr-Commit-Position: refs/heads/master@{#27062}
Dan Carney [Mon, 9 Mar 2015 09:49:09 +0000 (10:49 +0100)]
add V8_DEPRECATE_SOON macros to make it easier to identify calls which need deprecation
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
990873002
Cr-Commit-Position: refs/heads/master@{#27061}
Jaroslav Sevcik [Mon, 9 Mar 2015 08:37:01 +0000 (09:37 +0100)]
[turbofan] Add an extra frame state for deoptimization before binary op.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
983153002
Cr-Commit-Position: refs/heads/master@{#27060}
Benedikt Meurer [Mon, 9 Mar 2015 08:05:24 +0000 (09:05 +0100)]
[turbofan] Add support for inlining of builtins.
We mark certain builtins for inlining, and those should always be
inlined into optimized code (CrankShaft already handles it this way), so
we should support that in TurboFan as well. Currently this mainly
affects a certain set of Math functions, but once have the basics in
place we can extend this to any kind of builtin/code stub/accessor.
This adds a new flag --turbo_builtin_inlining (enabled by default), that
forces the inliner to always inline builtins marked for inlining, but
does not affect inlining of other functions (this is still controlled by
the --turbo-inlining flag).
BUG=v8:3952
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
993473002
Cr-Commit-Position: refs/heads/master@{#27059}
Benedikt Meurer [Mon, 9 Mar 2015 07:30:44 +0000 (08:30 +0100)]
[turbofan] Skip function entry stack check for inlinee.
This is currently the cleanest approach to avoid the useless stack check
during inlining. We might be able to just remove the useless stack
checks later when we have a phase that also takes care of removing
redundant stack checks on loop back edges (which we do not generate
currently).
On the other hand, the flag introduced here might be useful when
building code stubs/builtins/dom stubs using JS based DSL, because you
certainly don't want a JS-level stack check in a code stub.
R=jarin@chromium.org
BUG=v8:3952
LOG=n
Review URL: https://codereview.chromium.org/
994433002
Cr-Commit-Position: refs/heads/master@{#27058}
Benedikt Meurer [Mon, 9 Mar 2015 07:29:57 +0000 (08:29 +0100)]
[fdlibm] Inline coefficients for __kernel_sin and __kernel_cos.
Loading the coefficients from a the constants typed array is currently
blocking inlining MathSin and MathCos into TurboFan generated code,
because there is no type feedback and hence TurboFan has to generate a
LOAD_IC for every coefficient.
R=yanggou@chromium.org
BUG=v8:3952
LOG=n
Review URL: https://codereview.chromium.org/
989133002
Cr-Commit-Position: refs/heads/master@{#27057}
Benedikt Meurer [Mon, 9 Mar 2015 05:01:53 +0000 (06:01 +0100)]
[turbofan] Introduce JSStackCheck operator.
The key idea here is that the stack check should be explicit, such that
we can eliminate unnecessary stack checks after graph building and
potentially inlining.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
981243002
Cr-Commit-Position: refs/heads/master@{#27056}
Weiliang Lin [Mon, 9 Mar 2015 03:25:07 +0000 (11:25 +0800)]
introduce android_x64 build target
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
966773005
Cr-Commit-Position: refs/heads/master@{#27055}
ishell [Fri, 6 Mar 2015 23:54:59 +0000 (15:54 -0800)]
Remove slots that point to unboxed doubles from the StoreBuffer/SlotsBuffer.
The problem is that tagged slot could become a double slot after migrating of an object to another map with "shifted" fields (for example as a result of generalizing immutable data property to a data field).
This CL also adds useful machinery that helps triggering incremental write barriers.
BUG=chromium:454297
LOG=Y
Review URL: https://codereview.chromium.org/
957273002
Cr-Commit-Position: refs/heads/master@{#27054}
Michael Achenbach [Fri, 6 Mar 2015 19:55:03 +0000 (20:55 +0100)]
Whitespace change to test recipe trigger.
Cr-Commit-Position: refs/heads/master@{#27053}
rmcilroy [Fri, 6 Mar 2015 18:24:28 +0000 (10:24 -0800)]
Revert of Revert of Revert of Turn on job based recompilation (patchset #1 id:1 of https://codereview.chromium.org/
955723002/)
Reason for revert:
Breaks Octane on Arm64 running on Chrome.
BUG=464538
Original issue's description:
> Revert of Revert of Turn on job based recompilation (patchset #1 id:1 of https://codereview.chromium.org/
937263004/)
>
> Reason for revert:
> reland
>
> Original issue's description:
> > Revert of Turn on job based recompilation (patchset #1 id:1 of https://codereview.chromium.org/
935243003/)
> >
> > Reason for revert:
> > waterfall disagrees
> >
> > Original issue's description:
> > > Turn on job based recompilation
> > >
> > > BUG=v8:3608
> > > R=yangguo@chromium.org
> > > LOG=y
> > >
> > > Committed: https://crrev.com/
4ae82f64b09cdc0182cee3a5cc619a9117ac5fbc
> > > Cr-Commit-Position: refs/heads/master@{#26826}
> >
> > TBR=yangguo@chromium.org
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=v8:3608
> >
> > Committed: https://crrev.com/
35cc692aecdea54fb07479b8d7b71059851e07e8
> > Cr-Commit-Position: refs/heads/master@{#26827}
>
> TBR=yangguo@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=v8:3608
>
> Committed: https://crrev.com/
3735a0851a9e2726f8b50a46a3bc770992328264
> Cr-Commit-Position: refs/heads/master@{#26829}
TBR=yangguo@chromium.org,jochen@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3608
Review URL: https://codereview.chromium.org/
984463003
Cr-Commit-Position: refs/heads/master@{#27052}
caitpotter88 [Fri, 6 Mar 2015 16:54:34 +0000 (08:54 -0800)]
[parser] better error message for generator constructors
BUG=
LOG=N
R=arv@chromium.org
Review URL: https://codereview.chromium.org/
982153003
Cr-Commit-Position: refs/heads/master@{#27051}
dusan.milosavljevic [Fri, 6 Mar 2015 16:41:29 +0000 (08:41 -0800)]
MIPS: Update test status files.
TEST=
BUG=
Review URL: https://codereview.chromium.org/
987653005
Cr-Commit-Position: refs/heads/master@{#27050}
kalman [Fri, 6 Mar 2015 16:39:02 +0000 (08:39 -0800)]
Add MoveOnlyTypeForCPP03 to UniquePersistent for compatibility with Chromium.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
986463005
Cr-Commit-Position: refs/heads/master@{#27049}
verwaest [Fri, 6 Mar 2015 15:25:51 +0000 (07:25 -0800)]
Don't overwrite existing serial numbers on the function template, otherwise instantiating the function for a new context causes the serial number to bump.
Review URL: https://codereview.chromium.org/
988693003
Cr-Commit-Position: refs/heads/master@{#27048}
yangguo [Fri, 6 Mar 2015 15:06:54 +0000 (07:06 -0800)]
Do not include code objects for functions in the start-up snapshot.
Review URL: https://codereview.chromium.org/
981213002
Cr-Commit-Position: refs/heads/master@{#27047}
svenpanne [Fri, 6 Mar 2015 14:58:35 +0000 (06:58 -0800)]
Intrinsics in the RUNTIME_FUNCTION_LIST are now available with '_', too.
Now the three intrinsic lists only differ in their compiler
support. Unifying the lists and making the logic what is supported in
which compiler local to the compilers themselves is handled in a
follow-up CL.
BUG=v8:3947
LOG=n
Review URL: https://codereview.chromium.org/
983183002
Cr-Commit-Position: refs/heads/master@{#27046}
yangguo [Fri, 6 Mar 2015 14:44:43 +0000 (06:44 -0800)]
Do not use eternal handles when creating a start-up snapshot.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
984833003
Cr-Commit-Position: refs/heads/master@{#27045}
jkummerow [Fri, 6 Mar 2015 14:08:33 +0000 (06:08 -0800)]
Reland: Simplify and compact transitions storage
Original issue: https://codereview.chromium.org/
980573002/
Simple transitions are now stored in a map's "transitions" field (as a WeakCell wrapping the target map); full TransitionArrays are used when that's not sufficient.
To encapsulate these storage format implementation details, functions for manipulating and querying transitions have been refactored to be static functions on the TransitionArray class, and take maps as inputs.
Review URL: https://codereview.chromium.org/
988703002
Cr-Commit-Position: refs/heads/master@{#27044}
svenpanne [Fri, 6 Mar 2015 13:49:54 +0000 (05:49 -0800)]
Intrinsics in the INLINE_FUNCTION_LIST are now avaliable without '_', too.
This involved renaming apart a few more intrinsics. In the long run,
we want to clean up redundant intrinsics which just delegate.
BUG=v8:3947
LOG=n
Review URL: https://codereview.chromium.org/
984963002
Cr-Commit-Position: refs/heads/master@{#27043}
machenbach [Fri, 6 Mar 2015 13:10:22 +0000 (05:10 -0800)]
Make automated branch creation gnumbd-save.
This makes now the same simplification as the chromium
release scripts do. For creating branch B from a gnumbd'ed
(aka real) commit X do:
1. Branch Y off the real X
2. Set refs/pending/heads/B to Y
3. Set refs/pending-tags/B to X
4. Set refs/heads/B to X
The old algorithm tried to branch off the pending
correspondent of X. That commit was determined by comparing
tree objects of the real X and commits on pending.
Unfortunately, multiple commits on one branch can refer to
the same tree object, e.g., for commits P, Q, R with R being
the revert of Q, P and R refer to the same tree object.
TBR=tandrii@chromium.org
NOTRY=true
TEST=./script_test.py
TEST=tools/release/create_release.py -a me -r you --dry-run
Review URL: https://codereview.chromium.org/
979243004
Cr-Commit-Position: refs/heads/master@{#27042}
jarin [Fri, 6 Mar 2015 12:50:33 +0000 (04:50 -0800)]
[turbofan] Fix the deopt ids in assignment.
BUG=chromium:463028
LOG=n
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
987733003
Cr-Commit-Position: refs/heads/master@{#27041}
ulan [Fri, 6 Mar 2015 12:36:16 +0000 (04:36 -0800)]
Retain maps embedded in optimized code for several garbage collections.
This keeps dying maps alive for FLAG_retain_maps_for_n_gc garbage collections
to increase chances of them being reused for new objects in future and
decrease number of deoptimizations.
BUG=v8:3664
LOG=N
TEST=cctest/test-heap/MapRetaining
Review URL: https://codereview.chromium.org/
980523004
Cr-Commit-Position: refs/heads/master@{#27040}
svenpanne [Fri, 6 Mar 2015 11:01:43 +0000 (03:01 -0800)]
Merged INLINE_OPTIMIZED intrinsic type into INLINE.
BUG=v8:3947
LOG=n
Review URL: https://codereview.chromium.org/
978123003
Cr-Commit-Position: refs/heads/master@{#27039}
dcarney [Fri, 6 Mar 2015 10:28:02 +0000 (02:28 -0800)]
convert more things to maybe
BUG=v8:3929
LOG=y
Review URL: https://codereview.chromium.org/
982123003
Cr-Commit-Position: refs/heads/master@{#27038}
loislo [Fri, 6 Mar 2015 10:19:51 +0000 (02:19 -0800)]
Revert of CpuProfiler: enable tests except four failing tests. (patchset #3 id:100001 of https://codereview.chromium.org/
976203003/)
Reason for revert:
Some tests still flaky
Original issue's description:
> CpuProfiler: enable tests except four failing tests.
>
> Four tests are failing due to a problem with no frame ranges.
>
> BUG=
> LOG=n
>
> Committed: https://crrev.com/
2be160e726f2be6272b77e53fbd556aded6024f1
> Cr-Commit-Position: refs/heads/master@{#27035}
TBR=yurys@chromium.org,svenpanne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/
987553005
Cr-Commit-Position: refs/heads/master@{#27037}
mstarzinger [Fri, 6 Mar 2015 10:15:49 +0000 (02:15 -0800)]
[turbofan] Preserve pending message while inside finally-block.
This makes sure that any pending message is saved before entering
and restored after exiting a finally block. It also makes sure that
operand stacks are kept in sync to full-codegen.
R=bmeurer@chromium.org
TEST=cctest/test-run-jsexceptions/ThrowMessage
Review URL: https://codereview.chromium.org/
979173002
Cr-Commit-Position: refs/heads/master@{#27036}
loislo [Fri, 6 Mar 2015 10:01:40 +0000 (02:01 -0800)]
CpuProfiler: enable tests except four failing tests.
Four tests are failing due to a problem with no frame ranges.
BUG=
LOG=n
Review URL: https://codereview.chromium.org/
976203003
Cr-Commit-Position: refs/heads/master@{#27035}
verwaest [Fri, 6 Mar 2015 08:37:12 +0000 (00:37 -0800)]
Don't double-allocate mutable heap numbers in the json parser. This removes some stupidity when committing state.
BUG=
Review URL: https://codereview.chromium.org/
982793002
Cr-Commit-Position: refs/heads/master@{#27034}
yangguo [Fri, 6 Mar 2015 08:15:03 +0000 (00:15 -0800)]
Serializer: simplify external reference encoding.
External references are encoded as a tuple of type and ID. This
requires both the external reference encode and the decoder to
create a mapping between the encoding and the external reference
table index.
Instead, we simply use the external reference table index as
encoding.
We now also assume that there are no duplicate entries. Existing
duplicates have been removed in this change.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
982773003
Cr-Commit-Position: refs/heads/master@{#27033}
chunyang.dai [Fri, 6 Mar 2015 06:15:41 +0000 (22:15 -0800)]
Add the code change for turbofan unsupported port.
This is introduced by
8d2e45669f84076e95131503ea623f32483b3a7d (r26993)
original commit message:
First shot at eager deoptimization in Turbofan.
BUG=
Review URL: https://codereview.chromium.org/
960973003
Cr-Commit-Position: refs/heads/master@{#27032}
yangguo [Thu, 5 Mar 2015 21:24:12 +0000 (13:24 -0800)]
Only reference constant root list entries in the snapshot.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
979003003
Cr-Commit-Position: refs/heads/master@{#27031}
jkummerow [Thu, 5 Mar 2015 20:41:47 +0000 (12:41 -0800)]
Revert of Simplify and compact transitions storage (patchset #4 id:80001 of https://codereview.chromium.org/
980573002/)
Reason for revert:
x64 test failures
Original issue's description:
> Simplify and compact transitions storage
>
> Simple transitions are now stored in a map's "transitions" field (as a WeakCell wrapping the target map); full TransitionArrays are used when that's not sufficient.
> To encapsulate these storage format implementation details, functions for manipulating and querying transitions have been refactored to be static functions on the TransitionArray class, and take maps as inputs.
>
> Committed: https://crrev.com/
45fbef7f2252fce10634931cb103ccc1fc95ae6a
> Cr-Commit-Position: refs/heads/master@{#27029}
TBR=verwaest@chromium.org,ulan@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
982143002
Cr-Commit-Position: refs/heads/master@{#27030}
jkummerow [Thu, 5 Mar 2015 20:09:26 +0000 (12:09 -0800)]
Simplify and compact transitions storage
Simple transitions are now stored in a map's "transitions" field (as a WeakCell wrapping the target map); full TransitionArrays are used when that's not sufficient.
To encapsulate these storage format implementation details, functions for manipulating and querying transitions have been refactored to be static functions on the TransitionArray class, and take maps as inputs.
Review URL: https://codereview.chromium.org/
980573002
Cr-Commit-Position: refs/heads/master@{#27029}
balazs.kilvady [Thu, 5 Mar 2015 19:28:12 +0000 (11:28 -0800)]
MIPS: [turbofan] Support for %_DoubleHi, %_DoubleLo and %_ConstructDouble.
Port
4436c2642a9b7adc9a1b68577ae9ca9a9a404c06
Original commit message:
This adds support for the double bits intrinsics to TurboFan, and is
a first step towards fast Math functions inlined into TurboFan code
or even compiled by themselves with TurboFan.
BUG=
Review URL: https://codereview.chromium.org/
980073003
Cr-Commit-Position: refs/heads/master@{#27028}
balazs.kilvady [Thu, 5 Mar 2015 19:26:49 +0000 (11:26 -0800)]
MIPS: [turbofan] Implement throwing exceptions into TurboFan code.
Port
1382879f29bd71c36aeda2421e867c4cdd232a0d
Original commit message:
This extends the stack unwinding logic to respect optimized frames
and perform a lookup in the handler table to find handlers. It also
contains fixes to the API call stubs to allow a stack walk while
promoting scheduled exceptions.
BUG=
Review URL: https://codereview.chromium.org/
988463002
Cr-Commit-Position: refs/heads/master@{#27027}
hpayer [Thu, 5 Mar 2015 18:38:30 +0000 (10:38 -0800)]
Remove promotion backup case and report OOM instead.
There are no test cases for this piece of code and it is really hard to test. If this rare case triggers, we are anyway in an OOM situation and would crash probably soon afterwards.
BUG=
Review URL: https://codereview.chromium.org/
977013003
Cr-Commit-Position: refs/heads/master@{#27026}
kozyatinskiy [Thu, 5 Mar 2015 18:31:32 +0000 (10:31 -0800)]
[V8] Use Function.name for stack frames in v8::StackTrace
If function.name property has string type then stack frame will contain it otherwise DebugName from shared function info.
BUG=17356
LOG=Y
R=yurys@chromium.org
Review URL: https://codereview.chromium.org/
917743002
Cr-Commit-Position: refs/heads/master@{#27025}
Dan Carney [Thu, 5 Mar 2015 17:49:29 +0000 (18:49 +0100)]
disable some arm tests after r27020
TBR=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
982873002
Cr-Commit-Position: refs/heads/master@{#27024}
balazs.kilvady [Thu, 5 Mar 2015 17:04:23 +0000 (09:04 -0800)]
MIPS: Fix exception for assignment to uninitialised const.
Port
2ecdf736cf0409b52832f78a4439ace855d6739b
BUG=
Review URL: https://codereview.chromium.org/
983693003
Cr-Commit-Position: refs/heads/master@{#27023}
Yang Guo [Thu, 5 Mar 2015 14:46:39 +0000 (15:46 +0100)]
Disable turbofan for serializer tests.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
980873002
Cr-Commit-Position: refs/heads/master@{#27022}
machenbach [Thu, 5 Mar 2015 14:04:59 +0000 (06:04 -0800)]
Fix progress check in auto-roller.
Using a git range check for checking progress is wrong when
the last rolled revision and the revision candidate are on
different branches. The range A..B will always show the
commits from the merge-base of A and B until B.
Better compare the tags of the last rolled revision and the
candidate. The candidate's version must be strictly greater
than what's in chromium.
TBR=tandrii@chromium.org
NOTRY=true
TEST=./script_test.py
Review URL: https://codereview.chromium.org/
979133002
Cr-Commit-Position: refs/heads/master@{#27021}
yangguo [Thu, 5 Mar 2015 13:46:31 +0000 (05:46 -0800)]
Serializer: correctly deal with internal references.
Internal references are absolute addresses into the instruction
stream. Turn them into relative addresses when serializing and
back when deserializing to keep them valid.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
976623002
Cr-Commit-Position: refs/heads/master@{#27020}
verwaest [Thu, 5 Mar 2015 13:44:17 +0000 (05:44 -0800)]
Use faster IsDecimalDigit in the json parser
BUG=
Review URL: https://codereview.chromium.org/
974353002
Cr-Commit-Position: refs/heads/master@{#27019}
dcarney [Thu, 5 Mar 2015 13:26:20 +0000 (05:26 -0800)]
reland rename UniquePersistent to Global
BUG=
Review URL: https://codereview.chromium.org/
980173003
Cr-Commit-Position: refs/heads/master@{#27018}
yurys [Thu, 5 Mar 2015 13:03:42 +0000 (05:03 -0800)]
Allow passing sourceMapUrl when compiling scripts
According to Source Map specification [1] source map url can be passed either as a magic comment at the end of script or as SourceMap http header. We already parse the former value and expose it on Script object. This change allows to unify the way we deal with source map urls received in http header by providing api for passing that url into the script being compiled.
source_map_url is intentionally not passed into CompilationCacheScript::Lookup. The cache is anyways disabled when debugger is on.
[1] https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit
LOG=Y
BUG=chromium:462572
Review URL: https://codereview.chromium.org/
983603003
Cr-Commit-Position: refs/heads/master@{#27017}
mstarzinger [Thu, 5 Mar 2015 13:02:34 +0000 (05:02 -0800)]
[turbofan] Implement throwing exceptions into TurboFan code.
This extends the stack unwinding logic to respect optimized frames
and perform a lookup in the handler table to find handlers. It also
contains fixes to the API call stubs to allow a stack walk while
promoting scheduled exceptions.
R=jarin@chromium.org
TEST=cctest/test-run-jsexceptions
Review URL: https://codereview.chromium.org/
969533004
Cr-Commit-Position: refs/heads/master@{#27016}
machenbach [Thu, 5 Mar 2015 12:54:27 +0000 (04:54 -0800)]
Fix host compilation with clang for android.
BUG=
Review URL: https://codereview.chromium.org/
980843002
Cr-Commit-Position: refs/heads/master@{#27015}
rossberg [Thu, 5 Mar 2015 12:43:55 +0000 (04:43 -0800)]
Fix exception for assignment to uninitialised const
R=dslomov@chromium.org, mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
976053002
Cr-Commit-Position: refs/heads/master@{#27014}
dcarney [Thu, 5 Mar 2015 12:26:07 +0000 (04:26 -0800)]
convert compile functions to use maybe
BUG=v8:3929
LOG=y
Review URL: https://codereview.chromium.org/
980613002
Cr-Commit-Position: refs/heads/master@{#27013}
machenbach [Thu, 5 Mar 2015 12:10:23 +0000 (04:10 -0800)]
Revert of rename UniquePersistent to Global (patchset #2 id:20001 of https://codereview.chromium.org/
980173003/)
Reason for revert:
breaks arm compile
Original issue's description:
> rename UniquePersistent to Global
>
> BUG=
>
> Committed: https://crrev.com/
3f5ae16c62b031ad572f750d81ffc71c5d6d1f9b
> Cr-Commit-Position: refs/heads/master@{#27011}
TBR=svenpanne@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/
983653002
Cr-Commit-Position: refs/heads/master@{#27012}
dcarney [Thu, 5 Mar 2015 11:40:35 +0000 (03:40 -0800)]
rename UniquePersistent to Global
BUG=
Review URL: https://codereview.chromium.org/
980173003
Cr-Commit-Position: refs/heads/master@{#27011}
svenpanne [Thu, 5 Mar 2015 11:26:32 +0000 (03:26 -0800)]
Made the entries of the various *_FUNCTION_LISTs disjoint.
This way, every function in those lists has one C++ implementation
called Runtime_##name. The previous distinction was confusing.
Review URL: https://codereview.chromium.org/
983623002
Cr-Commit-Position: refs/heads/master@{#27010}
machenbach [Thu, 5 Mar 2015 10:50:00 +0000 (02:50 -0800)]
Make auto-roller roll recent release based on timestamp.
Before this change, out of two versions 4.2.13.1 and
4.2.14, the latter would have been considered the newest.
Now, the timestamp of the commit determines the age, which
allows to roll a patched version first. The auto-roller
will only roll forward (i.e. there needs to be a commit
range between the last roll and the new candidate).
Additionally, this CL does some cleanups:
- Use the sheriff detection mechanism in the auto-roller.
- Require the roll revision parameter in the chromium_roll
script to avoid redundancy. The auto_roll script determines
that revision automatically.
- Simplify the revision summary in the commit message. The
summary will now show last_roll..new_roll, which e.g.
includes the version change CL. It'll now show useful
information for cherry-picks, which it didn't before.
- Remove unused clusterfuzz check. That check is part of the
release process script.
TBR=tandrii@chromium.org
NOTRY=true
TEST=./script_test.py
TEST=./tools/release/chromium_roll.py --dry-run --sheriff -c ~/tmp/chromium/src --last-roll
55b9049ea3978a589d8db2aa191d21222eef737f fc263505535a175c8efa18f4c787bd92a1d1ab3d --use-commit-queue -r me -a you
Review URL: https://codereview.chromium.org/
977903002
Cr-Commit-Position: refs/heads/master@{#27009}
loislo [Thu, 5 Mar 2015 10:37:56 +0000 (02:37 -0800)]
CpuProfiler: simplify test.
BUG=
LOG=n
TBR=yurys, svenpanne
Review URL: https://codereview.chromium.org/
978203002
Cr-Commit-Position: refs/heads/master@{#27008}
Benedikt Meurer [Thu, 5 Mar 2015 09:45:51 +0000 (10:45 +0100)]
[ia32] Fix typo in no-SSE4.1 code.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
980163002
Cr-Commit-Position: refs/heads/master@{#27007}
bmeurer [Thu, 5 Mar 2015 09:22:26 +0000 (01:22 -0800)]
[turbofan] Support for %_DoubleHi, %_DoubleLo and %_ConstructDouble.
This adds support for the double bits intrinsics to TurboFan, and is
a first step towards fast Math functions inlined into TurboFan code
or even compiled by themselves with TurboFan.
Review URL: https://codereview.chromium.org/
974313002
Cr-Commit-Position: refs/heads/master@{#27006}
mstarzinger [Thu, 5 Mar 2015 09:17:03 +0000 (01:17 -0800)]
[turbofan] Enable DeoptFinallyReturn test that no longer fails.
This was fixed by
064be2385ad3 and will no longer fail, even on the
no-snap ARM64 simulator.
R=bmeurer@chromium.org
TEST=cctest/test-run-jsexceptions/DeoptFinallyReturn
Review URL: https://codereview.chromium.org/
979823002
Cr-Commit-Position: refs/heads/master@{#27005}
dcarney [Thu, 5 Mar 2015 08:30:43 +0000 (00:30 -0800)]
give UniquePersistent full move semantics
BUG=v8:3669
LOG=Y
Review URL: https://codereview.chromium.org/
978783002
Cr-Commit-Position: refs/heads/master@{#27004}
chunyang.dai [Thu, 5 Mar 2015 05:40:56 +0000 (21:40 -0800)]
X87: Refactor BreakLocationIterator
port
1a608493e55eacf5c7569e2b1213da42eb0e6207 (r26983)
original commit message:
Refactor BreakLocationIterator.
We now have BreakLocation::Iterator to iterate via RelocIterator, and
create a BreakLocation when we are done iterating. The reloc info is
stored in BreakLocation in a GC-safe way and instantiated on demand.
BUG=
Review URL: https://codereview.chromium.org/
978183002
Cr-Commit-Position: refs/heads/master@{#27003}
v8-autoroll [Thu, 5 Mar 2015 04:24:13 +0000 (20:24 -0800)]
Update V8 DEPS.
Rolling v8/build/gyp to
4a9b712d5cb4a5ba7a9950128a7219569caf7263
Rolling v8/buildtools to
d4dd4f79f60bf019625b3a1436979b0a42c892df
Rolling v8/tools/clang to
5309ba9a6f1e56592860a623db451aef00ae941d
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
978193002
Cr-Commit-Position: refs/heads/master@{#27002}
chunyang.dai [Thu, 5 Mar 2015 02:58:50 +0000 (18:58 -0800)]
X87: Implement subclassing Arrays.
port
1604bd46bf7fe0a8f7cd7780174030e26b93ab37 (r26972).
original commit message:
Implement subclassing Arrays.
BUG=
Review URL: https://codereview.chromium.org/
969943003
Cr-Commit-Position: refs/heads/master@{#27001}
chunyang.dai [Thu, 5 Mar 2015 02:57:43 +0000 (18:57 -0800)]
X87: Move stack unwinding logic into the runtime.
port
4acbc93dbfe338adb217f4971e914f77afe504d9 (r26957)
original commit message:
Move stack unwinding logic into the runtime.
BUG=
Review URL: https://codereview.chromium.org/
977013002
Cr-Commit-Position: refs/heads/master@{#27000}
machenbach [Wed, 4 Mar 2015 19:45:30 +0000 (11:45 -0800)]
Update V8 DEPS.
Rolling v8/third_party/icu to
eda9e75b1fa17f57ffa369ee3543a2301b68d0a9
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/
950343004
Cr-Commit-Position: refs/heads/master@{#26999}
yangguo [Wed, 4 Mar 2015 18:55:01 +0000 (10:55 -0800)]
Use bit_cast for Runtime_Double{Hi,Lo}.
To avoid undefined behavior.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
977923002
Cr-Commit-Position: refs/heads/master@{#26998}
verwaest [Wed, 4 Mar 2015 17:57:51 +0000 (09:57 -0800)]
Speed up string scanning
BUG=
Review URL: https://codereview.chromium.org/
975043002
Cr-Commit-Position: refs/heads/master@{#26997}
arv [Wed, 4 Mar 2015 16:56:55 +0000 (08:56 -0800)]
ES6: Make function name configurable
Function name property is now standardized in ES6. It was a Mozilla proprietary
extension before. With ES6, the property was made configurable, so that it can
be used instead of another proprietary property, displayName.
This is a revert of revert https://chromium.googlesource.com/v8/v8.git/+/
c791d8411225aa95518c880defd9a5b1ea243afc.
Last time this broke a Chrome browser test which has since been updated:
https://chromium.googlesource.com/chromium/src/+/
5f75a3be4c9334aba627d6c5eb884adf965e1d78
BUG=v8:3333
LOG=N
R=mstarzinger@chromium.org,verwaest@chromium.org
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
Review URL: https://codereview.chromium.org/
977003004
Cr-Commit-Position: refs/heads/master@{#26996}
balazs.kilvady [Wed, 4 Mar 2015 16:55:43 +0000 (08:55 -0800)]
MIPS: ARM: Load undefined receiver sentinel without constant pool.
Port
a820568b1ffbf76c3f80b9e00fc0b988b073dfaf
Each call to emit_32 uses 5 constant pool slots:
* the "emit_32" string
* undefined (the receiver)
* the argument (heap number)
* the load IC
* the call IC
This change cuts that down 20% to 4, by loading the undefined from the heap roots.
BUG=
Review URL: https://codereview.chromium.org/
963193005
Cr-Commit-Position: refs/heads/master@{#26995}
yangguo [Wed, 4 Mar 2015 15:36:02 +0000 (07:36 -0800)]
Serializer: fix false negative in hashmap lookups.
If we use HashMap::Lookup with insert=true, the returned entry may have
NULL as value. This could either mean that the value is 0, or that the
entry has just been inserted. This ambiguity can cause false negatives
in PartialCacheIndexMap::LookupOrInsert.
Also fix a TODO.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
974273002
Cr-Commit-Position: refs/heads/master@{#26994}
jarin [Wed, 4 Mar 2015 15:21:14 +0000 (07:21 -0800)]
[turbofan] First shot at eager deoptimization in Turbofan.
BUG=
Review URL: https://codereview.chromium.org/
961973002
Cr-Commit-Position: refs/heads/master@{#26993}
yangguo [Wed, 4 Mar 2015 15:01:55 +0000 (07:01 -0800)]
Serializer: still install experimental globals when creating a snapshot.
Experimental globals are simply flag values on the builtins object to
turn on/off harmony features. We still need to declare them even when
we don't turn on harmony features for the snapshot.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
978813002
Cr-Commit-Position: refs/heads/master@{#26992}
jarin [Wed, 4 Mar 2015 14:55:23 +0000 (06:55 -0800)]
[turbofan] Simplify and fix JS typed lowering type init.
Removing and fixing some embarrassing stuff in js-typed-lowering.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
981533003
Cr-Commit-Position: refs/heads/master@{#26991}
balazs.kilvady [Wed, 4 Mar 2015 14:34:00 +0000 (06:34 -0800)]
MIPS64: Fix 'Use Rotate*() functions instead of doing this manually.'
BUG=
Review URL: https://codereview.chromium.org/
975383002
Cr-Commit-Position: refs/heads/master@{#26990}
mstarzinger [Wed, 4 Mar 2015 14:28:33 +0000 (06:28 -0800)]
[turbofan] Fix exception being re-thrown after finally-block.
This makes sure that the implicit exception edges in the graph pass
the correct exception object and also fixes a bug in the dominance
relationship of the value entering the finally block and it's uses.
R=jarin@chromium.org
TEST=cctest/test-run-jsexceptions/FinallyBreak
Review URL: https://codereview.chromium.org/
970253002
Cr-Commit-Position: refs/heads/master@{#26989}
yangguo [Wed, 4 Mar 2015 14:27:22 +0000 (06:27 -0800)]
Revert of Remove default value for number of threads in Isolate::Init. (patchset #1 id:1 of https://codereview.chromium.org/
978773002/)
Reason for revert:
build failures.
Original issue's description:
> Remove default value for number of threads in Isolate::Init.
>
> Just fixing a TODO.
>
> R=jochen@chromium.org
>
> Committed: https://crrev.com/
fbcebbc5bdfd8eed82d121faf07b536eb3142fb7
> Cr-Commit-Position: refs/heads/master@{#26987}
TBR=jochen@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
964743003
Cr-Commit-Position: refs/heads/master@{#26988}
yangguo [Wed, 4 Mar 2015 14:08:33 +0000 (06:08 -0800)]
Remove default value for number of threads in Isolate::Init.
Just fixing a TODO.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
978773002
Cr-Commit-Position: refs/heads/master@{#26987}
vogelheim [Wed, 4 Mar 2015 13:53:11 +0000 (05:53 -0800)]
Revert of Default-enable external startup data for Linux for stand-alone builds. (patchset #1 id:1 of https://codereview.chromium.org/
956373002/)
Reason for revert:
The CL caused two issues:
- a weird build issue on V8 mips builder
- d8 cannot be invoked via PATH, since then it doesn't find its external snapshot.
The 2nd issue might even be WAI, but this needs more consideration.
Original issue's description:
> Default-enable external startup data for Linux for stand-alone builds.
>
> Notes:
> - Other platforms to follow later.
> - This follows Chromium practice, that mostly uses this feature these days.
> - The statically linked-in startup data will stay. So whoever prefers
> the old way just needs to set the flag differently.
>
> Reland crrev.com/
959693002, once crrev.com/
960883003 is in.
>
> R=machenbach@chromium.org
> BUG=
>
> Committed: https://crrev.com/
a0bdb103b676b4c7fa6b9f2e7149e716549c05d1
> Cr-Commit-Position: refs/heads/master@{#26980}
TBR=machenbach@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/
981463005
Cr-Commit-Position: refs/heads/master@{#26986}
hpayer [Wed, 4 Mar 2015 13:43:23 +0000 (05:43 -0800)]
Respect accumulative old generation memory limit in all spaces.
Before the max_old_space_size was set for each space, which is not intuitive and not what we want. There is still a miss match between capacity and actual committed memory which should be cleaned up in a follow up cl.
BUG=
Review URL: https://codereview.chromium.org/
979783002
Cr-Commit-Position: refs/heads/master@{#26985}
bmeurer [Wed, 4 Mar 2015 13:38:40 +0000 (05:38 -0800)]
[x86] Fix InstructionSelector::SupportedMachineOperatorFlags().
Word32 shifts are always safe on ia32 and x64, independent of whether
SSE4.1 is available.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
975363002
Cr-Commit-Position: refs/heads/master@{#26984}
yangguo [Wed, 4 Mar 2015 13:15:07 +0000 (05:15 -0800)]
Refactor BreakLocationIterator.
We now have BreakLocation::Iterator to iterate via RelocIterator, and
create a BreakLocation when we are done iterating. The reloc info is
stored in BreakLocation in a GC-safe way and instantiated on demand.
R=ulan@chromium.org
BUG=v8:3924
LOG=N
Review URL: https://codereview.chromium.org/
967323002
Cr-Commit-Position: refs/heads/master@{#26983}
yangguo [Wed, 4 Mar 2015 13:01:23 +0000 (05:01 -0800)]
Disable experimental natives when creating a start-up snapshot.
Re-installing experimental natives after deserialization causes failures if
said experimental native is already included in the snapshot. However, there
is no way to tell whether a certain harmony feature has been included.
Experimental natives may also be turned on/off on-demand, which a snapshot
that includes them would not support for all cases.
The simple solution for the meantime is to never include experimental natives
in the snapshot and initialize them after deserialization on-demand.
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
981473002
Cr-Commit-Position: refs/heads/master@{#26982}
dcarney [Wed, 4 Mar 2015 12:58:31 +0000 (04:58 -0800)]
convert remaining object functions to maybes
BUG=v8:3929
LOG=y
Review URL: https://codereview.chromium.org/
977893002
Cr-Commit-Position: refs/heads/master@{#26981}
vogelheim [Wed, 4 Mar 2015 12:21:52 +0000 (04:21 -0800)]
Default-enable external startup data for Linux for stand-alone builds.
Notes:
- Other platforms to follow later.
- This follows Chromium practice, that mostly uses this feature these days.
- The statically linked-in startup data will stay. So whoever prefers
the old way just needs to set the flag differently.
Reland crrev.com/
959693002, once crrev.com/
960883003 is in.
R=machenbach@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
956373002
Cr-Commit-Position: refs/heads/master@{#26980}
erikcorry [Wed, 4 Mar 2015 11:02:21 +0000 (03:02 -0800)]
ARM: Load undefined receiver sentinel without constant pool
Each call to emit_32 uses 5 constant pool slots:
* the "emit_32" string
* undefined (the receiver)
* the argument (heap number)
* the load IC
* the call IC
This change cuts that down 20% to 4, by loading the undefined from the heap roots.
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
980563002
Cr-Commit-Position: refs/heads/master@{#26979}
vogelheim [Wed, 4 Mar 2015 10:37:47 +0000 (02:37 -0800)]
Fix Initialize & Dispose for external snapshot. Make sure v8::V8::(Initialize|Dispose) can be called in any order.
This is a follow-on to crrev.com/
960883003, which fixed a memory leak in this code, but uncovered another, more subtle bug:
Previously, the code expected you would v8::V8::Initialize once, and v8::V8::Dispose once. The first bug was that in this case the holder_ variable would point to deallocated memory. The second bug was that once the snapshot was disposed, there was no way to get it back on a future Initialize. These are uncovered by the InitializeAndDisposeMultiple test case.
The fix is to keep memory to the raw snapshot and to then cleanly build & destroy the tables in Initialize & Dispose. Since sometimes setNativesBlob is called just after Initialize, that situation must be handled, too.
BUG=
Review URL: https://codereview.chromium.org/
974943003
Cr-Commit-Position: refs/heads/master@{#26978}
mvstanton [Wed, 4 Mar 2015 09:41:12 +0000 (01:41 -0800)]
The Global Load IC doesn't yet play well with --vector-ics.
Until this is addressed, we can simply use the regular IC, as we do
in times of serialization.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
974853002
Cr-Commit-Position: refs/heads/master@{#26977}
thakis [Wed, 4 Mar 2015 05:56:03 +0000 (21:56 -0800)]
When using ninja and clang, make sure diagnostics are colored.
BUG=none
LOG=N
Review URL: https://codereview.chromium.org/
969653004
Cr-Commit-Position: refs/heads/master@{#26976}
thakis [Wed, 4 Mar 2015 05:53:05 +0000 (21:53 -0800)]
Use Rotate*() functions instead of doing this manually.
Shouldn't make a difference in practice, but it's a bit more readable and it
gets the case of a 0 shift correct without undefined behavior.
BUG=463436
LOG=N
Review URL: https://codereview.chromium.org/
975283002
Cr-Commit-Position: refs/heads/master@{#26975}
hans [Wed, 4 Mar 2015 03:13:30 +0000 (19:13 -0800)]
ARM assembler: fix undefined behaviour in fits_shifter
Bit-shifts have undefined behaviour if the shift amount is greater
or equal to the width of the type.
In this case the code would do imm32 >> 32 when rot == 0.
A newer version of Clang unrolled the loop, optimized the first
iteration away, causing the test suite to fail with:
#
# Fatal error in ../src/arm/assembler-arm.cc, line 1212
# Check failed: !rn.is(ip).
#
as well as crashing when running Chromium tests on Android (at least
we think this was the cause, see the bug).
BUG=463436, 444089
LOG=Y
Review URL: https://codereview.chromium.org/
979633002
Cr-Commit-Position: refs/heads/master@{#26974}
bmeurer [Tue, 3 Mar 2015 19:18:40 +0000 (11:18 -0800)]
Revert of [x86] Use better left operand heuristic for Float64Add and Float64Mul. (patchset #1 id:1 of https://codereview.chromium.org/
958583003/)
Reason for revert:
Tanks on Atom and Haswell
Original issue's description:
> [x86] Use better left operand heuristic for Float64Add and Float64Mul.
>
> R=dcarney@chromium.org
>
> Committed: https://crrev.com/
9da259fb1f4ecfefeb2cf7efbe449d8aa1904032
> Cr-Commit-Position: refs/heads/master@{#26849}
TBR=dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
972243002
Cr-Commit-Position: refs/heads/master@{#26973}
dslomov [Tue, 3 Mar 2015 18:44:53 +0000 (10:44 -0800)]
Implement subclassing Arrays.
R=mvstanton@chromium.org,arv@chromium.org,rossberg@chromium.org
BUG=v8:3930
LOG=Y
Committed: https://crrev.com/
6898da1a28d64d1fb2962804ba566f6d618ffc70
Cr-Commit-Position: refs/heads/master@{#26960}
Committed: https://crrev.com/
8d29cc11a56e77297792fe100986a80b65de0051
Cr-Commit-Position: refs/heads/master@{#26963}
Committed: https://crrev.com/
0705045b50a29cf1273e9e6b86fe6a627d8dcb43
Cr-Commit-Position: refs/heads/master@{#26966}
Review URL: https://codereview.chromium.org/
975463002
Cr-Commit-Position: refs/heads/master@{#26972}
rossberg [Tue, 3 Mar 2015 18:34:30 +0000 (10:34 -0800)]
[es6] Fix for-const loops
R=dslomov@chromium.org
BUG=3983
LOG=Y
Review URL: https://codereview.chromium.org/
977543002
Cr-Commit-Position: refs/heads/master@{#26971}
mstarzinger [Tue, 3 Mar 2015 18:32:33 +0000 (10:32 -0800)]
[turbofan] Disable test-run-jsexceptions/DeoptFinallyReturn
Reason for disabling failure on ARM64 simulator in no-snap mode.
TBR=dslomov@chromium.org
TEST=cctest/test-run-jsexceptions/DeoptFinallyReturn
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
975003002
Cr-Commit-Position: refs/heads/master@{#26970}
dslomov [Tue, 3 Mar 2015 17:48:05 +0000 (09:48 -0800)]
Revert of Implement subclassing Arrays. (patchset #8 id:130001 of https://codereview.chromium.org/
975463002/)
Reason for revert:
Arm compilation again.
Aaaarrrrrghhhhhh!!!
Original issue's description:
> Implement subclassing Arrays.
>
> R=mvstanton@chromium.org,arv@chromium.org,rossberg@chromium.org
> BUG=v8:3930
> LOG=Y
>
> Committed: https://crrev.com/
6898da1a28d64d1fb2962804ba566f6d618ffc70
> Cr-Commit-Position: refs/heads/master@{#26960}
>
> Committed: https://crrev.com/
8d29cc11a56e77297792fe100986a80b65de0051
> Cr-Commit-Position: refs/heads/master@{#26963}
>
> Committed: https://crrev.com/
0705045b50a29cf1273e9e6b86fe6a627d8dcb43
> Cr-Commit-Position: refs/heads/master@{#26966}
TBR=arv@chromium.org,mvstanton@chromium.org,rossberg@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3930
Review URL: https://codereview.chromium.org/
976693002
Cr-Commit-Position: refs/heads/master@{#26969}
mstarzinger [Tue, 3 Mar 2015 17:23:31 +0000 (09:23 -0800)]
[turbofan] Add test coverage for deopt within try-catch.
This just contains test, no fixes. Note that some of the tests are
still disabled because they either fail or we don't want ClusterFuzz
to pick up the flag yet.
R=jarin@chromium.org
TEST=cctest/test-run-jsexceptions/Deopt,mjsunit/compiler/try-deopt
Review URL: https://codereview.chromium.org/
972943004
Cr-Commit-Position: refs/heads/master@{#26968}