- 29 Jan, 2020 3 commits
-
-
Deepti Gandluri authored
This reverts commit e8832647. Reason for revert: Causes flaky fails on the tree, reverting as this test should be deterministic pass/fail. https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8889903130443940000/+/steps/Check_-_nosse3__flakes_/0/logs/simd-call/0 Original change's description: > [wasm-simd] Fix scalar lowering of kParameter > > Lowers the call descriptor of a wasm function if it contains simd. > > Also fixes a couple of issues with the lowering of kParameter: > - the old_index == new_index check is incorrect, it would only work if > the s128 parameter is the first parameter > - the old_index was also not adjusted to account for Parameter[0] being > the wasm instance object > - new_index needs to be adjusted to account for the instance object too > > These fixes make it more similar to the lowering of kParameter in > int64-lowering.c. > > Also add a new mjsunit test to exercise this logic. > > Bug: v8:10154 > Change-Id: Ia767a464c26a6a78fd931eab9e6897890a0904e8 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2020521 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66032} TBR=gdeepti@chromium.org,ahaas@chromium.org,zhin@chromium.org Change-Id: I69589e2331c857c0f197ac53b8fb8a241376c632 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10154 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2028830Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#66034}
-
Ng Zhi An authored
Lowers the call descriptor of a wasm function if it contains simd. Also fixes a couple of issues with the lowering of kParameter: - the old_index == new_index check is incorrect, it would only work if the s128 parameter is the first parameter - the old_index was also not adjusted to account for Parameter[0] being the wasm instance object - new_index needs to be adjusted to account for the instance object too These fixes make it more similar to the lowering of kParameter in int64-lowering.c. Also add a new mjsunit test to exercise this logic. Bug: v8:10154 Change-Id: Ia767a464c26a6a78fd931eab9e6897890a0904e8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2020521 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#66032}
-
Jakob Kummerow authored
Bumping the max TypedArray length caused the typer to make different representation decisions, which caused inefficient back-and-forth conversions. This patch repairs the microbenchmark where this was most significant. There might be additional future work to ensure that TypedArray accesses that actually use huge indices remain on the fast path as well. Bug: chromium:1045934 Change-Id: Ic6dccaae35fcdf74a26d47388477a1969bf0aa9f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2026728 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#66026}
-
- 28 Jan, 2020 3 commits
-
-
Ng Zhi An authored
These conversion instructions were removed from the proposal in https://github.com/WebAssembly/simd/pull/178. Change-Id: I212ca2f923362bf08e178f6d28cc2338cf6f5927 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2016006Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66015}
-
Dan Elphick authored
Remove include for state-values-utils.h and add node.h and utils/ostream.h. Bug: v8:10155 Change-Id: I3662018b546a0a9b82bc2cc72f3a8ced27156fe0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2023557 Commit-Queue: Dan Elphick <delphick@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Auto-Submit: Dan Elphick <delphick@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#66012}
-
Milad Farazmand authored
Change-Id: I0c85de569b75e47dddb54c2dc4101da252547751 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2023370Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#66011}
-
- 27 Jan, 2020 1 commit
-
-
Andreas Haas authored
The flag naming was confusing, and inconsistent with other flags. To disable bounds checks, you now have to say --no-wasm-bounds-checks instead of the original --wasm-no-bounds-checks. Similarly, it is now --no-wasm-stack-checks instead of --wasm-no-stack-checks. R=clemensb@chromium.org Bug: v8:10021 Change-Id: Ib57963866af794d4e47d68e520a42b4054ed2a8f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2017475 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66003}
-
- 24 Jan, 2020 4 commits
-
-
Clemens Backes authored
As these are simple methods, and for consistency with the GraphAssembler interface, the getters should not be capitalized. R=ecmziegler@chromium.org Bug: v8:10123 Change-Id: I51871115b061bca4483dc23e982303508d9d8f55 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2017471 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#65976}
-
Clemens Backes authored
This changes the WasmGraphBuilder to use the GraphAssembler for storing the current effect and control, instead of having separate fields. This will allow us to use GraphAssembler methods anywhere in the WasmGraphBuilder without first transferring the WasmGraphBuilder's effect and control to the GraphAssembler and storing it back afterwards. Some methods (StackCheck, BuildCallToRuntimeWithContext) have been changed to work on the current effect and control instead of receiving them as parameters. This is necessary to also use the GraphAssembler there, and it makes the code a bit easier. R=ecmziegler@chromium.org Bug: v8:10123 Change-Id: Ia9f6359cfe44a67a875c3eb0fe51f87db8bd17db Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2017470 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#65975}
-
Clemens Backes authored
TailCalls have no output effect, similarly to e.g. return nodes. Thus, don't put them in the effect chain. The current graph verifier does not complain about this, but once we switch to the GraphAssembler, we will hit a SLOW_DCHECK there because we are trying to use a node as effect which has no effect output. R=jkummerow@chromium.org Bug: v8:10070 Change-Id: I23d9516eb9bd42a5aca46b09ca74830eafce635c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2017474 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#65973}
-
Clemens Backes authored
The code did originally only handle the int32 case, but was then extended to all wasm types in https://crrev.com/c/1965577. The comments and variable names still mention the int32 type only though. This CL fixes that. R=ecmziegler@chromium.org Bug: v8:10070 Change-Id: I3b1fa4047ee7ee9f283dce3758f6b8a39c964b22 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2017723 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#65970}
-
- 23 Jan, 2020 10 commits
-
-
Zhao Jiazhong authored
Port aa12b60b https://crrev.com/c/1980835 Change-Id: Idb82375e3bab94aed2b613d3f32e436fccb4fe53 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2008982Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#65959}
-
Santiago Aboy Solanes authored
Change-Id: Ieabacfd183370ee09bcb6126e16fbf3135d48134 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011836Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#65952}
-
Milad Farazmand authored
Change-Id: Id9f40ac278c5a25739b11d3af06de1f7052d1c67 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2015943Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#65951}
-
Dan Elphick authored
Load and store external references using the root register rather than generating a constant and dereferencing it. This typically uses 1 instruction rather than up to 4. Also adds external reference store optimisation for arm64. Bug: v8:7844 Change-Id: I5f73728e7a72e366a31bfb694581e2e7d8250947 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2007270 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#65950}
-
Jakob Gruber authored
Loop exits are marked automatically by the loop scope mechanism in combination with MergeState. Creating a LoopExitValue node explicitly created an invalid graph. Drive-by: Remove LoopExit{,Effect,Value} convenience methods. Bug: chromium:1044878,v8:9972 Change-Id: I6fb52a8463e5352b5a5b243f800a9eda47df9d5a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2016593 Auto-Submit: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#65949}
-
Andreas Haas authored
The instruction selector assumed for Word32AtomicPairBinop nodes that if there exists a Projection(1) user, then there also exists a Projection(0) user. This, however, is not the case, because TurboFan eliminates unreachable nodes. The missing projection node lead to a failed DCHECK in the register allocator. With this CL we allocate the right registers for the existing projections, and allocate the other needed registers as temp registers. R=gdeepti@chromium.org Bug: v8:10140 Change-Id: I22331cae58f933e89dac6993fe3b21ff6502838a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011829Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#65941}
-
Ng Zhi An authored
Bug: v8:10082 Change-Id: I5ade4269e70e09d0f98b51faf819163e736ae76b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1990507 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#65939}
-
Zhao Jiazhong authored
Port 72b68dee https://crrev.com/c/1928150 Change-Id: Ic5d195046839bc83148d759225bc5330ce66a53b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2004139Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#65938}
-
Zhou, Zhiguo authored
This CL implements load_extend with 2 lanes and all load_splat operations on IA32. The necessary assemblers together with their corresponding disassemblers and tests are also added in this CL. The newly added opcodes include: S8x16LoadSplat, S16x8LoadSplat, S32x4LoadSplat, S64x2LoadSplat, I64x2Load32x2S, I64x2Load32x2U. Bug: v8:9886 Change-Id: I0a5dae0a683985c14c433ba9d85acbd1cee6705f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1982989Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhiguo Zhou <zhiguo.zhou@intel.com> Cr-Commit-Position: refs/heads/master@{#65937}
-
Zhao Jiazhong authored
Port 9ff2de44 https://crrev.com/c/1994382 Change-Id: I045fd862f6ae026fd0e5637a685589bee149ab74 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2008981 Auto-Submit: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#65936}
-
- 22 Jan, 2020 4 commits
-
-
Georg Neis authored
... and consult it there from the various reducers. The flag makes no sense without the broker and the reducers already have access to the broker, so we can avoid an additional flag per reducer. Bug: v8:7790 Change-Id: I448050a55951b94d5313c1a79a502be906b98b25 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2013108 Auto-Submit: Georg Neis <neis@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#65918}
-
Andreas Haas authored
The instruction selector assumed for Word32AtomicPairLoad node that if there exists a Projection(1) user, then there also exists a Projection(0) user. This, however, is not the case, because TurboFan eliminates unreachable nodes. The missing projection node lead to a failed DCHECK in the register allocator. To fix the problem I use now the Word32AtomicPairLoad node directly to allocate the register. On ia32 I stop additionally to allocate unneeded temp registers. R=gdeepti@chromium.org CC=zhin@chromium.org Bug: chromium:1042379 Change-Id: I79bd9f3f4672e147246a71c32b7c9b4dbd79b17f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2002547 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#65912}
-
Joey Gouly authored
A port of https://chromium-review.googlesource.com/c/v8/v8/+/2011103 for arm64. Saves 2784 bytes (0.2%) in the arm64.release embedded.S Change-Id: Ifae6b3f220356ab286b49750c7ae422e4b6d4306 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2013107Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Joey Gouly <joey.gouly@arm.com> Cr-Commit-Position: refs/heads/master@{#65911}
-
Georg Neis authored
Bug: chromium:1027130 Change-Id: Ifd1f355ce266e672183f337f114432f11a866a52 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011835 Auto-Submit: Georg Neis <neis@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#65910}
-
- 21 Jan, 2020 9 commits
-
-
Clemens Backes authored
This is a pure refactoring to make the {GraphAssembler} available in all of {WasmGraphBuilder}, including {WasmWrapperGraphBuilder}. Future CLs will use more features of the {GraphAssembler} for building wasm graphs. The {WasmGraphAssembler} class will be extended to contain functionality only needed (or making sense) in the context of wasm. Drive-by: Move fields to the end of the {WasmGraphBuilder} class. R=jkummerow@chromium.org Bug: v8:10123 Change-Id: Idf44915944882adec75ef002ec577f63b2317a17 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011825Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#65902}
-
Milad Farazmand authored
Change-Id: I6586dc2b681b93cb5401b3e990786ee407baff73 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2012520Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#65897}
-
Santiago Aboy Solanes authored
There is no need to truncate if we are going to extend it again. At first glance it looks like we can eliminate both steps but unfortunately the Change is still needed since it will write on the top bits. Change-Id: I06d9776384a76f7b2a4454a9176926b3bcef2f2a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2010111Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#65886}
-
Ross McIlroy authored
Adds support to the register allocator verifier to keep track of which stack slots contain tagged pointers, but have not been tracked by the reference map and so could contain stale values (i.e., not traced by a garbage collection). BUG=v8:9684 Change-Id: I8dd9925f0cb71cac4ae3e49f467767454694e515 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2007488Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#65883}
-
Dan Elphick authored
Combines 2 ldrs into a single ldm (without writeback since the instruction uses fp as base and as a target). Shrinks the builtin instruction size on ARM by 2932 bytes. Change-Id: Id74e1e158a9d5db49caa2927e88df2a350adafab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011103Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#65882}
-
Georg Neis authored
This reverts commit 50a80c93. Reason for revert: We want to understand if this change is necessary to avoid renderer hangs. Original change's description: > [turbofan] Make hints equality cheaper using hashing > > Put the nesting limit of the serializer back to 25. > > Bug: chromium:1034768 > Change-Id: I7ea827d27241ea930bae40142069bab1962e4133 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1981156 > Commit-Queue: Maya Lekova <mslekova@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#65630} TBR=mvstanton@chromium.org,mslekova@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:1034768 Change-Id: I7aaf71e665e35999ea9c1b8d2680678add17bf96 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2010115Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#65881}
-
Georg Neis authored
If we assume that kMaxHintsSize is at least 1, we can reduce the clutter of broker arguments somewhat. Bug: v8:7790 Change-Id: I6c6607f694e420ef50a07202d0c98cbff7471af9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011084 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#65880}
-
Jakob Gruber authored
To improve ergonomics, graph generation is now triggered by the IfBuilder0 destructor instead of requiring an implicit call to Build(). This will be more expected for gasm users, since no other builders require such a Build() call. Drive-by: Rename 'ForSmiZeroUntil' methods to 'ForZeroUntil' since 'Smi' doesn't make sense in this context (TF only knows the Number type here). Bug: v8:9972 Change-Id: I365805e8428b35f19760e6ff155423463194b0f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011107 Auto-Submit: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#65877}
-
Jakob Gruber authored
The most interesting part of this change is that try-catch patterns are now supported by graph assembler through TryCatchBuilder0. Bug: v8:9972 Change-Id: I6ef0d51d4a1973eb8a30a5072c630261860f0a05 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1986000 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#65874}
-
- 20 Jan, 2020 4 commits
-
-
Georg Neis authored
The verifier tried to assert that the context input of Create*Context nodes has type OtherInternal (all Context constants have that type). This didn't quite work because of OSR values so actually it checked something much weaker. And what it checked still doesn't work because of dead code, in which the context input might statically be known to be the undefined value. I'm removing the assertion entirely now. I suspect that there are other assertions in the verifier that don't hold in the OSR code or in dead code. We are discussing a more general solution such as inserting TypeGuards in the relevant cases. Bug: chromium:1037771 Change-Id: I6fb59c60e7120d5984ea0fe140269f2df6de8708 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2010792 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Auto-Submit: Georg Neis <neis@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#65871}
-
Georg Neis authored
Change-Id: Icc86a805d1eef8c3c805f956d805c43923e6422b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2007504 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#65870}
-
Santiago Aboy Solanes authored
In the case of having: * NodeA(...) * NodeB(NodeA, NodeA), with this being the only use of NodeA. this CL gives A's ownership to B. Before, we used to say that B didn't have ownership of A due to A having two uses. This brings it in line with OwnedBy with two owners check: https://source.chromium.org/chromium/_/chromium/v8/v8.git/+/abd1a0fc04476bbb27ef2dfda2e444cc1467f5f6:src/compiler/node.cc;l=291 Change-Id: I15fdf373136a21bf423e6dffd9588054fd720d72 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2007502Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#65867}
-
Jakob Gruber authored
The loop peeling optimization requires all loop exits to be marked with {LoopExit,LoopExitEffect,LoopExitValue} nodes in order to peel the first loop iteration. Previously, the graph assembler only marked the default loop exit (taken once the loop condition evaluates to false). This CL adds more general support, such that all exits taken inside the loop body passed to a ForBuilder are automatically marked. We do this by tracking the current loop nesting level and a stack of loop headers inside the graph assembler, and creating marker nodes as needed inside MergeState. Bug: v8:9972,chromium:1038297 Change-Id: I1d0196ead55d6678880f8330c7cc7b8d4f2cea06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2000740 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#65861}
-
- 17 Jan, 2020 2 commits
-
-
Milad Farazmand authored
Port aa12b60b R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I7844b3f356d7f9f0ad1688880bd1f3420438e181 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2007899Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#65852}
-
Milad Farazmand authored
Port 9ff2de44 R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Iadbdd2ae87ac4b37b36ed5fac14777e48133437e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2008180Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#65850}
-