- 02 Mar, 2017 10 commits
-
-
Toon Verwaest authored
BUG= Change-Id: Iaae90ecfc36f05d596291f4755e767ef2799f2b0 Reviewed-on: https://chromium-review.googlesource.com/448221Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#43538}
-
Michael Achenbach authored
BUG=chromium:673246 NOTRY=true TBR=yangguo@chromium.org Change-Id: I413c23006f0f5e7879eaaece5f82f6c0fb4f7109 Reviewed-on: https://chromium-review.googlesource.com/447979Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#43537}
-
hablich authored
TBR=machenbach@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/2723863005 Cr-Commit-Position: refs/heads/master@{#43536}
-
clemensh authored
Most are minor performance optimizations that aggregated while implementing other changes. Those fixes will probably not be visible in perf graphs, but they bothered me anyway. R=titzer@chromium.org, ahaas@chromium.org Review-Url: https://codereview.chromium.org/2714373003 Cr-Commit-Position: refs/heads/master@{#43535}
-
clemensh authored
This is a minor performance optimization. Instead of iterating the relocation information till the end, we exit the loop once we found the call to wasm code. R=titzer@chromium.org, ahaas@chromium.org Review-Url: https://codereview.chromium.org/2717973003 Cr-Commit-Position: refs/heads/master@{#43534}
-
mic.besace authored
This patch fixes compilation of V8 with inspector on Windows as well as cross-compilation of the V8 inspector. BUG= Refs: https://github.com/nodejs/node/pull/10992 Review-Url: https://codereview.chromium.org/2705423003 Cr-Commit-Position: refs/heads/master@{#43533}
-
clemensh authored
R=titzer@chromium.org, mstarzinger@chromium.org CC=ahaas@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/2727863003 Cr-Commit-Position: refs/heads/master@{#43532}
-
loorongjie authored
BUG=v8:6005 Review-Url: https://codereview.chromium.org/2726853006 Cr-Commit-Position: refs/heads/master@{#43531}
-
Camillo Bruni authored
- sort group entries properly - show graphs by default - do not render the graphs twice Change-Id: I8af48b5ddf87aad3dd17bc856b7a0f883ee41058 NOTRY=true Change-Id: I8af48b5ddf87aad3dd17bc856b7a0f883ee41058 Reviewed-on: https://chromium-review.googlesource.com/447977 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#43530}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/2d722d1..2930f01 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/4a91697..b068264 Rolling v8/third_party/instrumented_libraries: https://chromium.googlesource.com/chromium/src/third_party/instrumented_libraries/+log/5b6f777..f68b0bb TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: Ic392ebcb1b46a17cdd436c21a06b24e0f3e96512 Reviewed-on: https://chromium-review.googlesource.com/448003Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#43529}
-
- 01 Mar, 2017 24 commits
-
-
bbudge authored
- Perform lane checks using FP compare instead of reinterpret casts. 0 and -0 will be different under I32 compare. - Some arithmetic operations can generate NaN results, such as adding -Inf and +Inf. Skip these tests until we have a way to do more sophisticated FP comparisons in the SIMD tests. - Eliminate a redundant F32x4 parameter for FP SIMD vector checking. We will only have this one FP type. LOG=N BUG=v8:6020 Review-Url: https://codereview.chromium.org/2594043002 Cr-Original-Commit-Position: refs/heads/master@{#42154} Committed: https://chromium.googlesource.com/v8/v8/+/5560bbb498252334595a39bb5f313ac8eb82cfe1 Review-Url: https://codereview.chromium.org/2594043002 Cr-Commit-Position: refs/heads/master@{#43528}
-
jyan authored
R=joransiu@ca.ibm.com, bjaideep@ca.ibm.com Review-Url: https://codereview.chromium.org/2722313003 Cr-Commit-Position: refs/heads/master@{#43527}
-
Marja Hölttä authored
BUG=v8:5516 R=verwaest@chromium.org Change-Id: I1bb88e981b81fec85ba6da314e3be927085e6e76 Reviewed-on: https://chromium-review.googlesource.com/447438Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#43526}
-
bmeurer authored
Revert of [wasm] Initial signal handler (patchset #56 id:1090001 of https://codereview.chromium.org/2371833007/ ) Reason for revert: Breaks tree, i.e. https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20ASAN/builds/18928/steps/Check/logs/grow-memory Original issue's description: > [wasm] Initial signal handler > > This is basically the minimum viable signal handler for Wasm bounds checks. > It includes the TLS check and the fine grained instructions checks. These > two checks provide most of the safety for the signal handler. Future CLs will > add code range and data range checks for more robustness. > > The trap handling code and data structures are all in src/trap-handler, with > the code that actually runs in the signal handler confined to > src/trap-handler/signal-handler.cc. > > This changes adds a new V8 API that the embedder should call from a signal > handler that will give V8 the chance to handle the fault first. For hosts that > do not want to implement their own signal handler, we include the option to > install a simple one. This simple handler is also used for the tests. > > When a Wasm module is instantiated, information about each function is passed > to the trap handler, which is used to classify faults. These are removed during > the instance finalizer. > > Several future enhancements are planned before turning this on by default. > Obviously, the additional checks will be added to MaybeHandleFault. We are > also planning to add a two-level CodeObjectData table that is grouped by > isolates to make cleanup easier and also reduce potential for contending on > a single data structure. > > BUG= https://bugs.chromium.org/p/v8/issues/detail?id=5277 > > Review-Url: https://codereview.chromium.org/2371833007 > Cr-Commit-Position: refs/heads/master@{#43523} > Committed: https://chromium.googlesource.com/v8/v8/+/a5af7fe9ee388a636675f4a6872b1d34fa7d1a7a TBR=ahaas@chromium.org,bradnelson@google.com,hpayer@chromium.org,jochen@chromium.org,mark@chromium.org,mseaborn@chromium.org,titzer@chromium.org,eholk@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= https://bugs.chromium.org/p/v8/issues/detail?id=5277 Review-Url: https://codereview.chromium.org/2723133003 Cr-Commit-Position: refs/heads/master@{#43525}
-
titzer authored
R=mtrofin@chromium.org BUG=chromium:695388 Review-Url: https://codereview.chromium.org/2724053002 Cr-Commit-Position: refs/heads/master@{#43524}
-
eholk authored
This is basically the minimum viable signal handler for Wasm bounds checks. It includes the TLS check and the fine grained instructions checks. These two checks provide most of the safety for the signal handler. Future CLs will add code range and data range checks for more robustness. The trap handling code and data structures are all in src/trap-handler, with the code that actually runs in the signal handler confined to src/trap-handler/signal-handler.cc. This changes adds a new V8 API that the embedder should call from a signal handler that will give V8 the chance to handle the fault first. For hosts that do not want to implement their own signal handler, we include the option to install a simple one. This simple handler is also used for the tests. When a Wasm module is instantiated, information about each function is passed to the trap handler, which is used to classify faults. These are removed during the instance finalizer. Several future enhancements are planned before turning this on by default. Obviously, the additional checks will be added to MaybeHandleFault. We are also planning to add a two-level CodeObjectData table that is grouped by isolates to make cleanup easier and also reduce potential for contending on a single data structure. BUG= https://bugs.chromium.org/p/v8/issues/detail?id=5277 Review-Url: https://codereview.chromium.org/2371833007 Cr-Commit-Position: refs/heads/master@{#43523}
-
Eric Holk authored
BUG= https://bugs.chromium.org/p/chromium/issues/detail?id=697191 Change-Id: I01ddd6824b1a79d86944ac766f5c2070e9b0c244 Reviewed-on: https://chromium-review.googlesource.com/448317Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#43522}
-
jbroman authored
[ValueSerializer] Allow wire format versions beginning with 13 to be deserialized in non-legacy mode. As of version 13, delegates do not need to worry about colliding tags with the tags reserved by v8, since v8 inserts a "host object" prefix beforehand. Thus the format is now suitable for more general use, without opting into the "legacy" mode that had this caveat. Review-Url: https://codereview.chromium.org/2722213002 Cr-Commit-Position: refs/heads/master@{#43521}
-
Peter Marshall authored
This reverts commit b23b2c10. Reason for revert: Makes Linux debug bot sad Original change's description: > [builtins] Port TypedArrayInitialize to CodeStubAssembler. > > Turbofan is a lot slower than Crankshaft at constructing TypedArrays, > because we always go to the C++ builtin. Port the builtin to CSA > to improve performance, and to clean up the implementation, which is > split across multiple files and pieces at the moment. > > This CL increases the performance with --future to roughly the same > as with crankshaft. > > BUG=v8:5977 > > Change-Id: I5a4c4b544a735a56290b85bf33c2f3718df7e2b8 > Reviewed-on: https://chromium-review.googlesource.com/445717 > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Cr-Commit-Position: refs/heads/master@{#43518} TBR=cbruni@chromium.org,petermarshall@chromium.org,bmeurer@chromium.org,v8-reviews@googlegroups.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5977 Change-Id: I5d5bc8b4677a405c716d78e688af80ae9c737b4a Reviewed-on: https://chromium-review.googlesource.com/448558Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#43520}
-
hpayer authored
BUG=chromium:694255 Review-Url: https://codereview.chromium.org/2720133005 Cr-Commit-Position: refs/heads/master@{#43519}
-
Peter Marshall authored
Turbofan is a lot slower than Crankshaft at constructing TypedArrays, because we always go to the C++ builtin. Port the builtin to CSA to improve performance, and to clean up the implementation, which is split across multiple files and pieces at the moment. This CL increases the performance with --future to roughly the same as with crankshaft. BUG=v8:5977 Change-Id: I5a4c4b544a735a56290b85bf33c2f3718df7e2b8 Reviewed-on: https://chromium-review.googlesource.com/445717 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#43518}
-
Toon Verwaest authored
BUG= Change-Id: I56b865a5ae4283876058e2c2edf73a296608fc97 Reviewed-on: https://chromium-review.googlesource.com/448219Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#43517}
-
zhengxing.li authored
port 69747e26(r42680) original commit message: We turn a JSCallFunction node for f.apply(receiver, arguments) into a JSCallForwardVarargs node, when the arguments refers to the arguments of the outermost optimized code object, i.e. not an inlined arguments, and the apply method refers to Function.prototype.apply, and there's no other user of arguments except in frame states. We also replace the arguments node in the graph with a marker for the Deoptimizer similar to Crankshaft to make sure we don't materialize unused arguments just for the sake of deoptimization. We plan to replace this with a saner EscapeAnalysis based solution soon. BUG= Review-Url: https://codereview.chromium.org/2681783002 Cr-Commit-Position: refs/heads/master@{#43516}
-
Michael Achenbach authored
BUG=chromium:682617 Change-Id: I96eb6bc982eca2d5f97585f3475583cac3fb338d Reviewed-on: https://chromium-review.googlesource.com/448556Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#43515}
-
Michael Starzinger authored
This fixes a corner-case in the above predicate that was introduced to allow fully disabling optimization using %NeverOptimizeFunction. This property of a function is a transient property (i.e. changes over time), whereas {UseTurboFan} is designed to be a static property (i.e. gives same answer over time). Violating this led to cases where functions got optimization disabled for other reasons would suddenly be baselined. The correct place to check transient properties is when optimization is requested. R=jarin@chromium.org TEST=mjsunit/never-baseline Change-Id: I37eb0c70d2b39704be29fd4bda76975bfbede66b Reviewed-on: https://chromium-review.googlesource.com/447937Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#43514}
-
Andreas Haas authored
String::SlowFlatten assumed that ConsStrings with empty first parts have flattened strings as their second part. TurboFan, however, can create ConsStrings with empty first parts and arbitrary second parts. With this CL we call String::Flatten on the second part of a ConsString if the first part is empty, but only when String::Flatten would not call String::SlowFlatten. R=jkummerow@chromium.org BUG=chromium:696651 Change-Id: I9acb681de1be695e1ec2f6f6d28b9e4dc4344e98 Reviewed-on: https://chromium-review.googlesource.com/448457 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#43513}
-
machenbach authored
Revert of [wasm]implement simd lowering for f32x4->i32x4, i32x4 min/max and shift instructions (patchset #2 id:20001 of https://codereview.chromium.org/2718323003/ ) Reason for revert: breaks nosse4: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug/builds/13871 Original issue's description: > [wasm]implement simd lowering for f32x4->i32x4, i32x4 min/max and shift instructions > > BUG=v8:4124 > R=bradnelson@chromium.org,bbudge@chromium.org,gdeepti@chromium.org,mtrofin@chromium.org,titzer@chromium.org > > Review-Url: https://codereview.chromium.org/2718323003 > Cr-Commit-Position: refs/heads/master@{#43510} > Committed: https://chromium.googlesource.com/v8/v8/+/f75748cf4ca696fff268787068419604815f8090 TBR=bbudge@chromium.org,bradnelson@chromium.org,gdeepti@chromium.org,mtrofin@chromium.org,titzer@chromium.org,aseemgarg@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4124 Review-Url: https://codereview.chromium.org/2723943003 Cr-Commit-Position: refs/heads/master@{#43512}
-
Ilija.Pavlovic authored
This CL fixes unused lambda captures for big endian targets when Clang is used for build V8. TEST= BUG= Review-Url: https://codereview.chromium.org/2725613002 Cr-Commit-Position: refs/heads/master@{#43511}
-
aseemgarg authored
BUG=v8:4124 R=bradnelson@chromium.org,bbudge@chromium.org,gdeepti@chromium.org,mtrofin@chromium.org,titzer@chromium.org Review-Url: https://codereview.chromium.org/2718323003 Cr-Commit-Position: refs/heads/master@{#43510}
-
aseemgarg authored
BUG=v8:4124 R=bradnelson@chromium.org,bbudge@chromium.org,gdeepti@chromium.org,mtrofin@chromium.org,titzer@chromium.org Review-Url: https://codereview.chromium.org/2726453003 Cr-Commit-Position: refs/heads/master@{#43509}
-
Toon Verwaest authored
This generally shouldn't hit since prototypes are supposed to be fast; but it makes it more uniform anyway. This CL also drops the limitation not supporting keyed loads with normal access. There's no point in returning the slow stub there. BUG= Change-Id: I5578269f6c64762610e885740a692d1e91aa6aa2 Reviewed-on: https://chromium-review.googlesource.com/447698 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#43508}
-
Igor Sheludko authored
BUG=chromium:697017 Change-Id: Ibb7165387a983987dcd04be330591b6bb70ff991 Reviewed-on: https://chromium-review.googlesource.com/448217 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#43507}
-
Georg Neis authored
The maybe-assigned flag of the catch variable was not preserved. BUG=v8:5636,chromium:696332 Change-Id: I9c55e1b1312bdebc53bc45bc3ca1c982bdbe9846 Reviewed-on: https://chromium-review.googlesource.com/447680Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#43506}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/d25400d..2d722d1 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/4f3d6da..4a91697 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Change-Id: I22dfab2efc5c445165a6b12b605bd8e4d43bb1dd Reviewed-on: https://chromium-review.googlesource.com/448200Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#43505}
-
- 28 Feb, 2017 6 commits
-
-
aseemgarg authored
BUG=v8:4124 R=bradnelson@chromium.org,bbudge@chromium.org,gdeepti@chromium.org Review-Url: https://codereview.chromium.org/2723823002 Cr-Commit-Position: refs/heads/master@{#43504}
-
binji authored
This will be useful for sharing the implementation with SharedArrayBuffer.prototype.slice. BUG=v8:5897 Review-Url: https://codereview.chromium.org/2697013009 Cr-Commit-Position: refs/heads/master@{#43503}
-
kozyatinskiy authored
This method enables test of agent::restore methods. Bonus: forbid setCustomObjectFormatterEnabled on disabled agent. BUG=none R=dgozman@chromium.org Review-Url: https://codereview.chromium.org/2713023004 Cr-Commit-Position: refs/heads/master@{#43502}
-
Georg Neis authored
BUG= Change-Id: Id77205450d286be228b493deb69e1489a1e12895 Reviewed-on: https://chromium-review.googlesource.com/445906 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#43501}
-
Georg Neis authored
BUG=v8:6022 Change-Id: I54205cb3ecc2dd31ed62e55726f0ec5fcd202c30 Reviewed-on: https://chromium-review.googlesource.com/446349 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#43500}
-
Adam Klein authored
Previously, we over-approximated Scope::scope_calls_eval_ in arrow functions: if either the outer scope or the arrow function parameters had a direct eval call, we marked both scopes as calling eval. This over-approximation kept getting us into trouble, though, especially when eager or lazy parsing would disagree about the "calls eval" bit. This patch instead tracks eval calls accurately, using a boolean on Scope::Snapshot that is reset as appropriately depending on whether a particular AssignmentExpression turned out to be an arrow parameter list or not. BUG=chromium:691687 Change-Id: I527dc59b4d32a2797805ff26dc9f70b1311377b2 Reviewed-on: https://chromium-review.googlesource.com/446094 Commit-Queue: Adam Klein <adamk@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#43499}
-