rossberg@chromium.org [Mon, 10 Mar 2014 12:01:06 +0000 (12:01 +0000)]
Promise.all and Promise.race should reject non-array parameter.
Promise.all and Promise.race should reject the returned Promise if an
invalid parameter is given.
Since they don't support iterable now, they should reject the Promise
if a non-array parameter is given.
BUG=347453
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
182613003
Patch from Yutaka Hirano <yhirano@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19754
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 10 Mar 2014 11:58:56 +0000 (11:58 +0000)]
Refactor script compilation / running & use of helper funcs in test-api.cc.
The tests were using different kind of constructs for achieving the same
thing. This makes refactoring the compilation API more difficult than it should
be.
cctest.h already contained helpers for compiling and running scripts, but they
were not used consistently.
For example, all these were used for running scripts:
v8::Script::Compile(v8_str("foo"))->Run();
v8::Script::Compile(v8::String::NewFromUtf8(isolate, "foo))->Run();
CompileRun(v8_str("foo"));
CompileRun(v8::String::NewFromUtf8(some_way_to_get_isolate(), "foo"));
v8::Local<v8::Script> script = any_of_the_above; script->Run();
Most of the tests just want to run a script (which is in const char*) and don't
care about how the v8::String is constructed or passed to the compiler API. Using
the helpers makes the test more readable and reduces boilerplate code which is
unrelated to what the test is testing.
R=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
190503002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19753
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 10 Mar 2014 11:52:13 +0000 (11:52 +0000)]
Promise.all and Promise race should use "then" rather than "chain".
As specified, they should unwrap resolution values recursively.
BUG=347427
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
181613006
Patch from Yutaka Hirano <yhirano@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19752
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 10 Mar 2014 11:49:29 +0000 (11:49 +0000)]
Merge the "Compute Minus Zero Checks" phase into the range analysis.
It is not safe to access the range for an SSA value
after range analysis.
BUG=v8:3204
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
192673002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19751
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 10 Mar 2014 11:42:17 +0000 (11:42 +0000)]
Unify (Pre)Parser::ParseObjectLiteral and add tests.
Notes:
- The regexp in the ParseObjectLiteralComment was wrong, made it less wrong (
it's still wrong since trailing commas are not required / allowed).
- Change in logic: In case we have "get somekeyword() { }", the "somekeyword"
was not logged as a symbol by PreParser and not expected in the preparser data
by Parser. This is unnecessary complication; in other contexts where keywords
are allowed as identifiers, they are logged as symbols (see
ParseIdentifierName).
BUG=v8:3126
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
173273006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19750
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 10 Mar 2014 10:39:17 +0000 (10:39 +0000)]
Reland "Handle non-power-of-2 divisors in division-like operations".
Fixed the flooring div bug and added a test case.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
191293012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19749
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 10 Mar 2014 10:02:49 +0000 (10:02 +0000)]
Prepare push to trunk. Now working on version 3.25.7.
R=dslomov@chromium.org
TBR=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
189463018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19746
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 10 Mar 2014 08:56:48 +0000 (08:56 +0000)]
Add support for allowing an embedder to get the V8 profile timer event logs.
Contributed by fmeawad@chromium.org
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
186163002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19745
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 10 Mar 2014 08:40:03 +0000 (08:40 +0000)]
allowed keyed store callbacks ic generation
R=verwaest@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
173853005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19744
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 10 Mar 2014 08:28:59 +0000 (08:28 +0000)]
Handlify JSObject::CanSetCallback.
Also use temporary wrapper functions where possible to mark progress.
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
172503002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19743
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 10 Mar 2014 08:21:18 +0000 (08:21 +0000)]
Harmony: implement Math.cbrt in Javascript.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
183743018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19742
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 10 Mar 2014 08:20:56 +0000 (08:20 +0000)]
initialize v8::Private with v8::String
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
179983002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19741
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 10 Mar 2014 08:18:57 +0000 (08:18 +0000)]
Allow Object::InternalFieldCount and Object::GetAlignedPointerFromInternalField to be called from Persistent classes
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
177343002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19740
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 10 Mar 2014 07:42:09 +0000 (07:42 +0000)]
Skip unreachable blocks when looking for next emitted block.
Goto does not emit a jump if the target is the next emitted block.
However, if there is an unreachable block between Goto and the jump
target, we still emit a jump even though the unreachable block is
not actually emitted. That jump is unnecessary.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
174883002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19739
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Mon, 10 Mar 2014 06:43:21 +0000 (06:43 +0000)]
Atomic ops: Sync with Chromium and add unit test.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
129813008
Patch from Cosmin Truta <ctruta@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19738
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 10 Mar 2014 05:52:03 +0000 (05:52 +0000)]
Replace the recursion in PropagateMinusZeroChecks() with a loop and a worklist.
Also refactor the related code in preparation for fixing the
range analysis.
BUG=v8:3204
LOG=y
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
190713002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19737
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Sat, 8 Mar 2014 04:41:06 +0000 (04:41 +0000)]
Reland "Enable Object.observe by default"
Original Issue: https://codereview.chromium.org/
183683022/
TBR=rossberg
BUG=v8:2409
LOG=Y
Review URL: https://codereview.chromium.org/
189513010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19736
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Sat, 8 Mar 2014 03:54:42 +0000 (03:54 +0000)]
Revert "Enable Object.observe by default"
TBR=rossberg
BUG=
Review URL: https://codereview.chromium.org/
190853007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19735
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rafaelw@chromium.org [Sat, 8 Mar 2014 02:47:53 +0000 (02:47 +0000)]
Enable Object.observe by default
R=rossberg@chromium.org, rossberg
BUG=v8:2409
LOG=Y
Review URL: https://codereview.chromium.org/
183683022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19734
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Fri, 7 Mar 2014 22:11:52 +0000 (22:11 +0000)]
MIPS: Consistenly handle power-of-2 divisors in division-like operations.
Port r19715 (0d6d244)
Original commit message:
Lithium currently supports 3 division-like operations on integral
operands: "Normal" division (rounding towards zero), flooring division
(rounding towards -Infinity) and modulus calculation (the counterpart
for the "normal" division). For divisors which are a power of 2, one can
efficiently use some bit fiddling to avoid the actual division for such
operations. This CL cleanly splits off these operations into separate
Lithium instructions, making the code much more maintainable and more
consistent across platforms.
There are 2 basic variations of these bit fiddling algorithms: One
involving branches and a seemingly more clever one without branches.
Choosing between the two is not as easy as it seems: Benchmarks (and
probably real-world) programs seem to favor positive dividends,
registers and shifting units are sometimes scarce resources, and branch
prediction is quite good in modern processors. Therefore only the
"normal" division by a power of 2 is implemented in a branch-free
manner, this seems to be the best approach in practice. If this turns
out to be wrong, we can easily and locally change this.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
189433008
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19733
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 7 Mar 2014 22:08:20 +0000 (22:08 +0000)]
MIPS: Introduce intrinsics for double values in Javascript.
Port r19704 (120500a)
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
189913005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19732
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 7 Mar 2014 17:20:03 +0000 (17:20 +0000)]
Fix compiler warning on Win64
BUG=None
LOG=N
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
191153002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19731
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Fri, 7 Mar 2014 17:12:47 +0000 (17:12 +0000)]
A64: Improve constraints on StoreKeyed instructions
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
190783002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19730
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 7 Mar 2014 16:34:10 +0000 (16:34 +0000)]
Fix compilation on 32-bit platforms after r19728
BUG=None
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
191043002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19729
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 7 Mar 2014 16:13:22 +0000 (16:13 +0000)]
AllocationTracker now maintains a map from address range to stack trace that allocated the range. When snapshot is generated the map is used to find construction stack trace for an object using its address.
BUG=chromium:277984
LOG=Y
R=alph@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
177983003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19728
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@arm.com [Fri, 7 Mar 2014 16:11:50 +0000 (16:11 +0000)]
A64: tidy up the disassembler
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
171603020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19727
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Fri, 7 Mar 2014 15:48:50 +0000 (15:48 +0000)]
MIPS: Symbols for type cells.
Port r19706 (81fd8dd)
Original commit message:
We can make more efficient code to check against type cells in the future if we use symbols, guaranteed not to conflict with user code. Currently, the "symbols" are the hole and undefined. Undefined may come in from the outside.
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
189143006
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19726
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Fri, 7 Mar 2014 15:25:28 +0000 (15:25 +0000)]
A64: Clean and improve ArgumentsAdaptorTrampoline.
This patch:
- uses named registers
- reserves all the stack space in one go to avoid operations on csp
- uses LDP/STP to copy the arguments
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
184103003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19725
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Fri, 7 Mar 2014 15:20:32 +0000 (15:20 +0000)]
A64: Handle a few TODOs.
Notes about a few TODOs handled in this patch:
* In ProfileEntryHookStub::Generate:
Stubs are always called with relocation.
* In CreateArrayDispatchOneArgument:
The branches to registers can't be conditional. We could use a jump table, but
there are only 6 different kinds so it is likely not worth it.
* In Builtins::Generate_StringConstructCode:
Rename the argc register (x0) after its meaning changes.
Remove a TODO: using a macro would not make the code clearer.
* In Generate_JSEntryTrampolineHelper:
Remove the TODO and raise an internal issue to investigate this.
* In Disassembler::SubstituteBranchTargetField:
Print the target address, but we don't have more info on the target.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
185793002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19724
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Mar 2014 14:58:41 +0000 (14:58 +0000)]
Reland "Introduce intrinsics for double values in Javascript."
This relands r19704 with a fix to the test case.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
189823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19723
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Mar 2014 13:11:56 +0000 (13:11 +0000)]
Revert "Handle non-power-of-2 divisors in division-like operations", "A64 tweaks for division-like operations." and "Windows build fix.".
This reverts commit 19719, 19720 and 19721 because
mozilla/ecma/Date/15.9.3.1-1 fails (in release mode only?).
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
189963005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19722
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Mar 2014 12:12:50 +0000 (12:12 +0000)]
Windows build fix.
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/
189093009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19721
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Mar 2014 12:02:52 +0000 (12:02 +0000)]
A64 tweaks for division-like operations.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
190603003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19720
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Mar 2014 11:44:04 +0000 (11:44 +0000)]
Handle non-power-of-2 divisors in division-like operations
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
190383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19719
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Fri, 7 Mar 2014 11:32:01 +0000 (11:32 +0000)]
Allocation tracker: add separate entry for allocations via V8 API
When object is creating via native V8 API calls JS callstack is empty and the allocation is indistinguishable from say compiler allocations. This change adds a separate entry for such allocations.
Since FunctionInfo not necessarily corresponds to a heap object they are now referred to using their index in the list of all FunctionInfos.
BUG=chromium:277984
LOG=N
R=loislo@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
177203002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19718
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 7 Mar 2014 11:03:35 +0000 (11:03 +0000)]
Introduce Runtime_GetAllScopesDetails to get all scopes at once for a frame.
This will reduce heavy ScopeIterator instantiations.
Once incorporated into chromium, will give 30% speed boost.
BUG=chromium:340285
LOG=Y
R=ulan@chromium.org, Yang, rossberg, ulan
Review URL: https://codereview.chromium.org/
181063008
Patch from Andrey Adaykin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19717
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 7 Mar 2014 11:01:03 +0000 (11:01 +0000)]
Test FeedbackVectorPreservedAcrossRecompiles needs crankshaft
The new test didn't recognize that non-sse2 builds on ia32 would
disable crankshaft.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
189263007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19716
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 7 Mar 2014 10:36:28 +0000 (10:36 +0000)]
Consistenly handle power-of-2 divisors in division-like operations
Lithium currently supports 3 division-like operations on integral operands: "Normal" division (rounding towards zero), flooring division (rounding towards -Infinity) and modulus calculation (the counterpart for the "normal" division). For divisors which are a power of 2, one can efficiently use some bit fiddling to avoid the actual division for such operations. This CL cleanly splits off these operations into separate Lithium instructions, making the code much more maintainable and more consistent across platforms.
There are 2 basic variations of these bit fiddling algorithms: One involving branches and a seemingly more clever one without branches. Choosing between the two is not as easy as it seems: Benchmarks (and probably real-world) programs seem to favor positive dividends, registers and shifting units are sometimes scarce resources, and branch prediction is quite good in modern processors. Therefore only the "normal" division by a power of 2 is implemented in a branch-free manner, this seems to be the best approach in practice. If this turns out to be wrong, we can easily and locally change this.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
175143002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19715
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 7 Mar 2014 10:25:53 +0000 (10:25 +0000)]
Reduce heavy runtime calls from debug mirrors.
Cache results of some heavy calls into C++.
This alone will boost the speed up to 18% on some real world scenarios.
BUG=chromium:340285
LOG=Y
R=ulan@chromium.org, yangguo@chromium.org, Yang, rossberg, ulan, yurys
Review URL: https://codereview.chromium.org/
184483004
Patch from Andrey Adaykin <aandrey@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19714
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 7 Mar 2014 10:14:03 +0000 (10:14 +0000)]
Track global cells as special side effects in GVN.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
188543004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19713
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 7 Mar 2014 10:12:17 +0000 (10:12 +0000)]
Moved type feedback vector to SharedFunctionInfo.
Type Vector followup: the type vector currently lives off the code object. This CL moves it to the SharedFunctionInfo, facilitating re-use and continued use in crankshafted code if desired.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
178463007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19712
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 7 Mar 2014 10:01:00 +0000 (10:01 +0000)]
Check and clear date cache in DateCurrentTime, DateLocalTimezone and getTimezoneOffset.
BUG=142141
LOG=Y
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
173793002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19711
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Mar 2014 09:49:28 +0000 (09:49 +0000)]
Revert "Introduce intrinsics for double values in Javascript."
This reverts r19704.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
189533008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19710
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 7 Mar 2014 09:29:07 +0000 (09:29 +0000)]
Revert "Use Representation::Integer32() for smi types on 32-bit-tagged systems."
Due to performance regression.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
189843006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19709
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Fri, 7 Mar 2014 09:19:51 +0000 (09:19 +0000)]
A64: Minor improvement in FullCodeGenerator::VisitObjectLiteral.
This patch avoid to push some values on the stack when it's not needed.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
183193005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19708
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 7 Mar 2014 09:19:48 +0000 (09:19 +0000)]
Update .gitignore to new test262 package name.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
188923003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19707
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 7 Mar 2014 09:10:18 +0000 (09:10 +0000)]
Symbols for type cells. We can make more efficient code to check against type cells in the future if we use symbols, guaranteed not to conflict with user code. Currently, the "symbols" are the hole and undefined. Undefined may come in from the outside.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
181283003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19706
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
baptiste.afsa@arm.com [Fri, 7 Mar 2014 09:06:24 +0000 (09:06 +0000)]
A64: Tidy up some TODOs in GenerateRecordCallTarget.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/
184433002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19705
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Mar 2014 09:05:10 +0000 (09:05 +0000)]
Introduce intrinsics for double values in Javascript.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
178583006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19704
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Mar 2014 08:49:02 +0000 (08:49 +0000)]
Remove duplicates in runtime macros.
Each item in INLINE_RUNTIME_FUNCTION_LIST had to have a duplicate
entry in RUNTIME_FUNCTION_LIST in order to match the comment.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
177313005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19703
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 7 Mar 2014 08:43:54 +0000 (08:43 +0000)]
Remove Script::SetData and the script_data parameter from Script::(Compile|New).
This feature makes it possible to associate data with a script and get it back
when the script is compiled or when an event is handled. It was historically
used by Chromium Dev Tools, but not any more. It is not used by node.js.
Note: this has nothing to do with the preparse data, despite the confusing name.
The preparse data is passed as ScriptData*.
Note 2: This is the same as r19616 ( https://codereview.chromium.org/
184403002/ )
with a unused variable fix in bootstrapper.cc.
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
185533014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19702
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Mar 2014 08:42:10 +0000 (08:42 +0000)]
Harmony: move implementation of Math.log1p and Math.expm1 to Javascript.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
179533003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19701
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 7 Mar 2014 08:36:53 +0000 (08:36 +0000)]
ia32: Simplify inlined Smi code for SAR.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
188483002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19700
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 7 Mar 2014 08:36:18 +0000 (08:36 +0000)]
Use fast path for sliced and external strings in ConvertCase.
R=dcarney@chromium.org
BUG=v8:3180
LOG=N
Review URL: https://codereview.chromium.org/
180063002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19699
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 7 Mar 2014 08:36:13 +0000 (08:36 +0000)]
Optimistically untag the input in tagged-to-i.
Also drop redundant jmp instruction in deferred code.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
182723003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19698
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 6 Mar 2014 17:42:58 +0000 (17:42 +0000)]
Prepare push to trunk. Now working on version 3.25.6.
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
186593005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19695
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Thu, 6 Mar 2014 16:22:47 +0000 (16:22 +0000)]
Fix for failing asserts in HBoundsCheck code generation on x64: use proper cmp operation width instead of asserting that Integer32 values should be zero extended. Similar to chromium:345820.
BUG=349465
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
188703002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19694
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 6 Mar 2014 16:21:09 +0000 (16:21 +0000)]
Fix HConstants with Smi-ranged HeapNumber values
BUG=chromium:349878
LOG=y
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
186123003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19693
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 6 Mar 2014 14:15:40 +0000 (14:15 +0000)]
Mark mjsunit/whitespaces as slow and timeout for a64.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
182253008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19692
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 6 Mar 2014 13:07:51 +0000 (13:07 +0000)]
Bugfix for 349874: we incorrectly believe we saw a growing store
When we set an out of bounds array index, the index might be so large that
it causes the array to go to dictionary mode. It's better to avoid
"learning" that this was a growing store in that case.
This fix also partially reverts a fix for bug 347543, as this fix is
comprehensive and satisfies that repro case as well (partial revert of
v19591).
BUG=349874
LOG=N
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
188643002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19691
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 6 Mar 2014 12:19:06 +0000 (12:19 +0000)]
Only use the non-strict-arguments-stub if the store site is non-strict.
BUG=349874
LOG=N
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
176843018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19690
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 6 Mar 2014 12:13:49 +0000 (12:13 +0000)]
Let HTransitionElementsKind take part in RestoreActualValues phase
BUG=chromium:349853
LOG=n
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
183753005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19689
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vegorov@chromium.org [Thu, 6 Mar 2014 11:55:47 +0000 (11:55 +0000)]
Fix VPrintHelper used on Windows.
VPrintHelper would silently ignore the stream given to it if application is in GUI mode (no console is attached) and redirect output to the debugger via OutputDebugString.
Such redirection makes sense only if passed stream is either stderr or stdout. Don't redirect any other stream to the debugger.
Reorder clauses in VPrintHelper to make condition more readable.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
177413006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19688
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 6 Mar 2014 11:51:53 +0000 (11:51 +0000)]
Remove outdated assertion scope.
R=jkummerow@chromium.org
BUG=349870
LOG=N
Review URL: https://codereview.chromium.org/
182003004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19687
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 6 Mar 2014 10:05:33 +0000 (10:05 +0000)]
Add quickcheck targets for modes, builds and arches.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
181013014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19686
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 6 Mar 2014 09:50:53 +0000 (09:50 +0000)]
Fix issues with JSON stringify replacer array
If the replacer array contains a property key we should include the
property even if the property is non enumerable or if it is a non own
property.
String and Number wrappers in the replacer array should be treated as
string and number values.
R=yangguo@chromium.org
BUG=v8:3200, v8:3201
LOG=Y
Review URL: https://codereview.chromium.org/
187053003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19685
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 6 Mar 2014 09:49:10 +0000 (09:49 +0000)]
Use Representation::Integer32() for smi types on 32-bit-tagged systems.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
187353005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19684
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 6 Mar 2014 09:47:27 +0000 (09:47 +0000)]
Also delete force representations that have no uses.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
187773002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19683
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 5 Mar 2014 15:10:32 +0000 (15:10 +0000)]
Prepare push to trunk. Now working on version 3.25.5.
R=hpayer@chromium.org
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
187833002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19679
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 5 Mar 2014 14:04:21 +0000 (14:04 +0000)]
Ignore slots buffer overflow when recording entries of the allocation sites scratchpad.
BUG=
R=mstarzinger@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
181063033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19677
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 5 Mar 2014 12:57:18 +0000 (12:57 +0000)]
Fix materialization of captured objects in adapted arguments.
R=mstarzinger@chromium.org
BUG=348512
LOG=N
Review URL: https://codereview.chromium.org/
183063006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19676
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Wed, 5 Mar 2014 12:45:46 +0000 (12:45 +0000)]
Deoptimization fix for HPushArgument.
HPushArgument should never be used in a simulation environment
because the slot addresses for the arguments can be off (e.g.,
due to on-stack arguments object of an inlined caller).
R=mstarzinger@chromium.org
BUG=v8:3183
LOG=N
Review URL: https://codereview.chromium.org/
178193026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19675
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 5 Mar 2014 10:54:35 +0000 (10:54 +0000)]
Handle exception when retrieving toJSON function in JSON.stringify.
R=mvstanton@chromium.org
BUG=349335
LOG=N
Review URL: https://codereview.chromium.org/
187603002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19670
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 5 Mar 2014 10:07:07 +0000 (10:07 +0000)]
Add --es-staging flag
...and remove some obsolete ones.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
165723008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19669
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 5 Mar 2014 09:49:07 +0000 (09:49 +0000)]
x64: Fix LMathMinMax for constant Smi right-hand operands
BUG=chromium:349079
LOG=y
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
186593003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19668
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 5 Mar 2014 09:28:26 +0000 (09:28 +0000)]
Print properly signed displacement in disassembler.
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
178193028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19667
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 5 Mar 2014 08:58:38 +0000 (08:58 +0000)]
Fix issue with setting __proto__ on a value
LOG=N
BUG=v8:3172
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
174113003
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19666
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 4 Mar 2014 23:27:27 +0000 (23:27 +0000)]
Refactoring: Make script dependencies more object-oriented in push and merge scripts.
- Connect the top-level scripts via inheritance and remove top-level functions
- Options and option processing can be extended from base to subclass script
This CL is split off from https://codereview.chromium.org/
173983002/
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
185263003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19664
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 4 Mar 2014 20:22:56 +0000 (20:22 +0000)]
MIPS: Remove all uses of field-tracking flags that do not make decisions but are subject to existing information.
Port r19650 (a51b043)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
180803010
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19663
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Tue, 4 Mar 2014 20:16:24 +0000 (20:16 +0000)]
MIPS: Push safepoint registers in deferred number-to-i/u only on-demand.
Port r19649 (49f8c2d)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
186673004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19662
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alexandre.rames@arm.com [Tue, 4 Mar 2014 15:54:12 +0000 (15:54 +0000)]
A64: Move veneer emission checking in the Assembler.
The previous heuristic would break as a significant amount of code could be
generated without checking for veneer emission.
The veneer emission is now done in the Assembler, in a very similar way to
constant pool emission.
BUG=v8:3177
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
181873002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19661
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 4 Mar 2014 13:07:00 +0000 (13:07 +0000)]
Print properly signed displacement in IA32 disassembler.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
176993004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19652
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 4 Mar 2014 12:51:40 +0000 (12:51 +0000)]
Refactoring to clean up duplicate code in Heap::Allocate methods.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
170703002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19651
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 4 Mar 2014 12:48:17 +0000 (12:48 +0000)]
Remove all uses of field-tracking flags that do not make decisions but are subject to existing information.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
173963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19650
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 4 Mar 2014 12:45:00 +0000 (12:45 +0000)]
Push safepoint registers in deferred number-to-i/u only on-demand.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
181053005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19649
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 4 Mar 2014 12:43:05 +0000 (12:43 +0000)]
Allow objects with "" properties to stay fast.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
184453003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19648
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Tue, 4 Mar 2014 12:42:43 +0000 (12:42 +0000)]
Don't disable hash randomization option in predictable mode.
We don't need it because
1) hash randomization uses random generator whose results depend on --random-seed option which is set in predictable mode.
2) disabling hash randomization triggers assert in snapshot mode.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
171813015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19647
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 4 Mar 2014 12:34:04 +0000 (12:34 +0000)]
Fix HStringAdd::PrintDataTo().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
185403005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19646
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 4 Mar 2014 09:05:48 +0000 (09:05 +0000)]
Prepare push to trunk. Now working on version 3.25.4.
R=hpayer@chromium.org
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
185533011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19643
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 4 Mar 2014 08:08:08 +0000 (08:08 +0000)]
Fix HCheckValue::Canonicalize wrt uninitialized HConstant unique.
R=titzer@chromium.org
BUG=348280
LOG=N
Review URL: https://codereview.chromium.org/
183383006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19642
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 4 Mar 2014 01:29:27 +0000 (01:29 +0000)]
Add try server configuration for 'git cl try'.
BUG=
R=phajdan.jr@chromium.org
Review URL: https://codereview.chromium.org/
177533029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19641
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 3 Mar 2014 20:17:03 +0000 (20:17 +0000)]
Add coverage analysis to push and merge script tests.
The coverage analysis must live in an extra file in order to analyze the scripts when being imported.
TEST=tools/push-to-trunk/script_test.py
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
183923013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19640
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 3 Mar 2014 13:27:59 +0000 (13:27 +0000)]
Consolidate RecordWriteFromCode and RecordWriteForEvacuationFromCode.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
185233008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19639
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 3 Mar 2014 13:12:31 +0000 (13:12 +0000)]
Make EvictFromOptimizedCodeMap more robust.
This removes all occurences of the specified optimized code from the optimized
code map.
R=titzer@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
181493004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19638
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 3 Mar 2014 11:44:14 +0000 (11:44 +0000)]
Fix A64 after 19635.
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
184103013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19637
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 3 Mar 2014 11:41:24 +0000 (11:41 +0000)]
Fix symbol printing in migration / generalization tracing
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/
176713006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19636
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 3 Mar 2014 11:11:39 +0000 (11:11 +0000)]
Clear optimized code cache in shared function info when code gets deoptimized.
This adds a pointer to the shared function info into deoptimization data of an optimized code. Whenever the code is deoptimized, it clears the cache in the shared function info.
This fixes the problem when the optimized function dies in new space GC before the code is deoptimized due to code dependency and before the optimized code cache is cleared in old space GC (see mjsunit/regress/regress-343609.js).
This partially reverts r19603 because we need to be able to evict specific code from the optimized code cache.
BUG=343609
LOG=Y
TEST=mjsunit/regress/regress-343609.js
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
184923002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19635
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 28 Feb 2014 21:49:51 +0000 (21:49 +0000)]
Refactoring: Long option names in push and merge scripts.
This CL is split off from https://codereview.chromium.org/
173983002/
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
180873010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19632
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
commit-bot@chromium.org [Fri, 28 Feb 2014 19:48:29 +0000 (19:48 +0000)]
Fix ChangeLog entries.
NOTREECHECKS=true
BUG=
Review URL: https://codereview.chromium.org/
179873021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19629
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
commit-bot@chromium.org [Fri, 28 Feb 2014 19:45:28 +0000 (19:45 +0000)]
Fix line distance in push and merge scripts.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19628
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00