- 20 Jul, 2016 26 commits
-
-
klaasb authored
For some bytecodes it is beneficial to always look for a Star bytecode when dispatching to the next and inline perform it without dispatching to the Star handler. BUG=v8:4280 LOG=N Review-Url: https://codereview.chromium.org/2142273003 Cr-Commit-Position: refs/heads/master@{#37904}
-
machenbach authored
BUG=chromium:629025 NOTRY=true NOPRESUBMIT=true TBR=sergiyb@chromium.org Review-Url: https://codereview.chromium.org/2165883003 Cr-Commit-Position: refs/heads/master@{#37903}
-
verwaest authored
This additionally makes the invariant obvious that outer_scope==nullptr+is_with_scope is impossible. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2165923002 Cr-Commit-Position: refs/heads/master@{#37902}
-
jochen authored
It takes the number of additional elements, not the total target capacity. Also, avoid right-shifting a negative integer as this is undefined in general BUG=v8:4909 R=verwaest@chromium.org Review-Url: https://codereview.chromium.org/2162333002 Cr-Commit-Position: refs/heads/master@{#37901}
-
mstarzinger authored
By now TurboFan is shipping on a broad range of language constructs and wholesale disabling TurboFan can still be done with the --turbo-filter flag. A dedicated flag controlling AST numbering heuristics is no longer needed. R=bmeurer@chromium.org Review-Url: https://codereview.chromium.org/2155243006 Cr-Commit-Position: refs/heads/master@{#37900}
-
bmeurer authored
Revert of [turbofan] Introduce TruncateTaggedToBit operator for ToBoolean truncation. (patchset #2 id:20001 of https://codereview.chromium.org/2167593002/ ) Reason for revert: Breaks arm64 gc stress: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20gc%20stress/builds/1605 Original issue's description: > [turbofan] Introduce TruncateTaggedToBit operator for ToBoolean truncation. > > Add a dedicated simplified operator to inline the general case for the > ToBoolean conversion. In a follow up CL we will also use the ToBoolean > hints gathered by the baseline compiler. > > Committed: https://crrev.com/8c50b51ab3d21efcd2f6900d83962159f21e1590 > Cr-Commit-Position: refs/heads/master@{#37882} TBR=jarin@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2170433002 Cr-Commit-Position: refs/heads/master@{#37899}
-
verwaest authored
This creates the guarantee that we can compute the parent scope later on. We'll do the same for other types of scopes as well (with perhaps a limited number of exceptions that will need to be eagerly allocated). BUG=v8:5209 Review-Url: https://codereview.chromium.org/2168563002 Cr-Commit-Position: refs/heads/master@{#37898}
-
neis authored
As required by the spec. This is a variant of what I reverted in f47e7224. It will probably still cause a regression but now it's easier to migrate (parts of) the current implementation to C++, which is expected to make things faster again. BUG=chromium:627729,v8:5113 Review-Url: https://codereview.chromium.org/2164923002 Cr-Commit-Position: refs/heads/master@{#37897}
-
machenbach authored
This prepares for relanding: https://codereview.chromium.org/2058033002/ All toplevel variables are visible in files including v8.gni. This works around potential name clashes. BUG=chromium:616034 Review-Url: https://codereview.chromium.org/2169443002 Cr-Commit-Position: refs/heads/master@{#37896}
-
jacob.bramley authored
This avoids implementation-defined signed overflow in the simulator's AddWithCarry implementation. The implementation of AddWithCarry now uses unsigned arithmetic exclusively. Testing coverage is also significantly improved. BUG= Review-Url: https://codereview.chromium.org/2157283003 Cr-Commit-Position: refs/heads/master@{#37895}
-
verwaest authored
BUG=v8:5209 Review-Url: https://codereview.chromium.org/2158393002 Cr-Commit-Position: refs/heads/master@{#37894}
-
marja authored
Using Isolate is unsafe, because we might parse (and do scope analysis) on a background thread. The illegal access happens when encountering f(arguments) { ... }. Kudos to verwaest@ for finding this bug. R=verwaest@chromium.org, rossberg@chromium.org BUG= Review-Url: https://codereview.chromium.org/2158343002 Cr-Commit-Position: refs/heads/master@{#37893}
-
yangguo authored
Review-Url: https://codereview.chromium.org/2162503002 Cr-Commit-Position: refs/heads/master@{#37892}
-
bmeurer authored
Look at the output type instead of the output representation, when converting to tagged representation. R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2159373004 Cr-Commit-Position: refs/heads/master@{#37891}
-
jarin authored
BUG=chromium:608617 Review-Url: https://codereview.chromium.org/2163173002 Cr-Commit-Position: refs/heads/master@{#37890}
-
mstarzinger authored
R=adamk@chromium.org,bmeurer@chromium.org,littledan@chromium.org,rossberg@chromium.org Review-Url: https://codereview.chromium.org/2156083002 Cr-Commit-Position: refs/heads/master@{#37889}
-
zhengxing.li authored
X87: Revert of [builtins] Introduce a builtin for Abort(). (patchset #5 id:80001 of https://codereview.chromium.org/2156923002/ ). port 3e8f49ab (r37883) original commit message: Reason for revert: Blocks roll: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20debug/builds/1622 Original issue's description: > [builtins] Introduce a builtin for Abort(). > > Calling Runtime::kAbort through a builtin instead of the c-entry stub > will allow to generate the call in a background thread, because a > builtin provides its own handle, whereas a code stub does not. > > @v8-mips-ports: Could you take a special look at the padding that is > done in MacroAssembler::Abort()? > > R=bmeurer@chromium.org, titzer@chromium.org, mstarzinger@chromium.org, v8-mips-ports@googlegroups.com, v8-arm-ports@googlegroups.com > > Committed: https://crrev.com/9be015a254cfff871c56cd129523a729637e9158 > Cr-Commit-Position: refs/heads/master@{#37854} BUG= Review-Url: https://codereview.chromium.org/2168573002 Cr-Commit-Position: refs/heads/master@{#37888}
-
verwaest authored
This frees up a field in Scope and untangles scope a little from the parser. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2160943004 Cr-Commit-Position: refs/heads/master@{#37887}
-
oth authored
LOG=N BUG= Review-Url: https://codereview.chromium.org/2157363003 Cr-Commit-Position: refs/heads/master@{#37886}
-
jgruber authored
R=yangguo@chromium.org BUG=v8:5197 Review-Url: https://codereview.chromium.org/2165593002 Cr-Commit-Position: refs/heads/master@{#37885}
-
nikolaos authored
In a few places in the parser base, we were forced to initialize variables of type ExpressionT even if it's not necessary, as they are assigned to later on before their use. This was required because, for the case of the preparser, ExpressionT is PreParserExpression which had no default constructor. This patch adds a default constructor, equivalent to EmptyExpression for this class, and gets rid of the unnecessary initializations. R=adamk@chromium.org, littledan@chromium.org BUG= LOG=N Review-Url: https://codereview.chromium.org/2162763003 Cr-Commit-Position: refs/heads/master@{#37884}
-
hablich authored
Revert of [builtins] Introduce a builtin for Abort(). (patchset #5 id:80001 of https://codereview.chromium.org/2156923002/ ) Reason for revert: Blocks roll: https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20debug/builds/1622 Original issue's description: > [builtins] Introduce a builtin for Abort(). > > Calling Runtime::kAbort through a builtin instead of the c-entry stub > will allow to generate the call in a background thread, because a > builtin provides its own handle, whereas a code stub does not. > > @v8-mips-ports: Could you take a special look at the padding that is > done in MacroAssembler::Abort()? > > R=bmeurer@chromium.org, titzer@chromium.org, mstarzinger@chromium.org, v8-mips-ports@googlegroups.com, v8-arm-ports@googlegroups.com > > Committed: https://crrev.com/9be015a254cfff871c56cd129523a729637e9158 > Cr-Commit-Position: refs/heads/master@{#37854} TBR=bmeurer@chromium.org,mstarzinger@chromium.org,titzer@chromium.org,v8-arm-ports@googlegroups.com,v8-mips-ports@googlegroups.com,akos.palfi@imgtec.com,ahaas@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2163603003 Cr-Commit-Position: refs/heads/master@{#37883}
-
bmeurer authored
Add a dedicated simplified operator to inline the general case for the ToBoolean conversion. In a follow up CL we will also use the ToBoolean hints gathered by the baseline compiler. Review-Url: https://codereview.chromium.org/2167593002 Cr-Commit-Position: refs/heads/master@{#37882}
-
jgruber authored
Revert of Move Error methods to C++ (patchset #11 id:200001 of https://codereview.chromium.org/2142933003/ ) Reason for revert: Clusterfuzz failures: https://bugs.chromium.org/p/chromium/issues/detail?id=629749 Original issue's description: > Move Error methods to C++ > > This ports a large portion of Error methods to C++, > including the constructor, stack setter and getter, > and Error.prototype.toString. > > BUG= > > Committed: https://crrev.com/5742da056a290caa13a0b8717ddb1e43424e0d31 > Cr-Commit-Position: refs/heads/master@{#37870} TBR=yangguo@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review-Url: https://codereview.chromium.org/2159223004 Cr-Commit-Position: refs/heads/master@{#37881}
-
zhengxing.li authored
port 9be015a2 (r37854) original commit message: Calling Runtime::kAbort through a builtin instead of the c-entry stub will allow to generate the call in a background thread, because a builtin provides its own handle, whereas a code stub does not. @v8-mips-ports: Could you take a special look at the padding that is done in MacroAssembler::Abort()? BUG= Review-Url: https://codereview.chromium.org/2166703002 Cr-Commit-Position: refs/heads/master@{#37880}
-
v8-autoroll authored
Rolling v8/build to 4b2ee7d1824cdc45d8e3d4076c05f9a8af10e4ac Rolling v8/tools/mb to 3f6bbf669fa2b89399cead251fe693ce71132779 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2166433004 Cr-Commit-Position: refs/heads/master@{#37879}
-
- 19 Jul, 2016 14 commits
-
-
neis authored
In parser.{cc,h}, replace CHECK_OK_CUSTOM by CHECK_OK_VOID, as that's all we need. Use this to convert all void* functions to void. R=adamk@chromium.org, nikolaos@chromium.org BUG= Review-Url: https://codereview.chromium.org/2165513004 Cr-Commit-Position: refs/heads/master@{#37878}
-
bjaideep authored
Port 9be015a2 Original commit message: Calling Runtime::kAbort through a builtin instead of the c-entry stub will allow to generate the call in a background thread, because a builtin provides its own handle, whereas a code stub does not. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= LOG=N Review-Url: https://codereview.chromium.org/2166553002 Cr-Commit-Position: refs/heads/master@{#37877}
-
peterssen authored
Add additional sanity checks for implicit parameters, mainly to prevent passing a wrong context, which can lead to obscure errors. This is a regression test after https://crrev.com/da4f2491501e54d436ed448c5e345480d1f5906b BUG=chromium:508898 Review-Url: https://codereview.chromium.org/2160563003 Cr-Commit-Position: refs/heads/master@{#37876}
-
cbruni authored
We are enabling this trial on canary to see if we can flush out some missing context restores. BUG= Review-Url: https://codereview.chromium.org/2164633002 Cr-Commit-Position: refs/heads/master@{#37875}
-
oth authored
Copies the behaviour of FullCode in attempting to get the state for ForInPrepare inline and falling back to the runtime if necessary. BUG=v8:4280 LOG=N Review-Url: https://codereview.chromium.org/2155153002 Cr-Commit-Position: refs/heads/master@{#37874}
-
klaasb authored
This adds an additional column with percentages to the output of bytecode_dispatch_report.py --top-dispatches-for-bytecode. The percentages always represent the relative number of dispatches to the target bytecode to all dispatches from the source bytecode. The additional flag --sort-sources-relative/-r allows sorting the "Top sources of dispatches to" the given bytecode by this column to more easily find bytecodes that significantly often dispatch to the target. BUG=v8:4899 LOG=N Review-Url: https://codereview.chromium.org/2159683003 Cr-Commit-Position: refs/heads/master@{#37873}
-
mythria authored
Revert of [Interpreter] Collect type feedback for 'new' in the bytecode handler (patchset #6 id:100001 of https://codereview.chromium.org/2153433002/ ) Reason for revert: This cl causes a large regression in octane (https://chromeperf.appspot.com/group_report?bug_id=629503). I have to investigate the reason before I can reland this. Original issue's description: > [Interpreter] Collect type feedback for 'new' in the bytecode handler > > Collect type feedback in the bytecode handler for 'new' bytecode. The > current implementation does not collect allocation site feedback. > > BUG=v8:4280, v8:4780 > LOG=N > > Committed: https://crrev.com/1eadc76419b323fb2e55ae9953142f801704aa59 > Cr-Commit-Position: refs/heads/master@{#37862} TBR=rmcilroy@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4280, v8:4780 Review-Url: https://codereview.chromium.org/2165633003 Cr-Commit-Position: refs/heads/master@{#37872}
-
jyan authored
Should use the same Mask code as float32 to int32 R=joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, bjaideep@ca.ibm.com BUG= Review-Url: https://codereview.chromium.org/2160573003 Cr-Commit-Position: refs/heads/master@{#37871}
-
jgruber authored
This ports a large portion of Error methods to C++, including the constructor, stack setter and getter, and Error.prototype.toString. BUG= Review-Url: https://codereview.chromium.org/2142933003 Cr-Commit-Position: refs/heads/master@{#37870}
-
bmeurer authored
Instead of wriring the elements kind transitions into the control flow early on, we do instead put this marker into the effect chain, so that the elements transitions are visible to the LoadElimination and can thus be optimized properly there. This CL itself doesn't add any of those optimizations, but just adds the foundations to make them possible later. R=jarin@chromium.org BUG=v8:4930,v8:5141 Review-Url: https://codereview.chromium.org/2164573003 Cr-Commit-Position: refs/heads/master@{#37869}
-
verwaest authored
Eagerly set arguments_, new_target_ and ths_function_ Scope, and unset if we don't need to allocate them. This probably slightly speeds up AllocateParameterLocals, but more importantly it removes ast_value_factory_ uses. If we get rid of ast_value_factory from Scope it's easier to lazily allocate it later from within a ScopeState object. BUG=v8:5209 Review-Url: https://codereview.chromium.org/2158333002 Cr-Commit-Position: refs/heads/master@{#37868}
-
jochen authored
BUG=chromium:618305 R=verwaest@chromium.org CC=dcheng@chromium.org,haraken@chromium.org Review-Url: https://codereview.chromium.org/2162443002 Cr-Commit-Position: refs/heads/master@{#37867}
-
oth authored
Original issue's description: > [interpeter] Move to table based peephole optimizer. > > Introduces a lookup table for peephole optimizations. > > Fixes some tests using BytecodePeepholeOptimizer::Write() that should > have been update to use BytecodePeepholeOptimizer::WriteJump(). > > BUG=v8:4280 > LOG=N > > Committed: https://crrev.com/f4234422b93b21a286b0f31799009bcbe8b90b9e > Cr-Commit-Position: refs/heads/master@{#37819} BUG=v8:4280 LOG=N Review-Url: https://codereview.chromium.org/2164583002 Cr-Commit-Position: refs/heads/master@{#37866}
-
jochen authored
I plan to use this from ApiNatives, so move it to a common location. BUG= R=verwaest@chromium.org Review-Url: https://codereview.chromium.org/2161613002 Cr-Commit-Position: refs/heads/master@{#37865}
-