- 06 Aug, 2020 1 commit
-
-
Clemens Backes authored
The interpreter is not an execution tier in production any more. It's only used in tests. Thus, remove {ExecutionTier::kInterpreter} and instead add a {TestExecutionTier} that still has {kInterpreter}. If needed (in {TestingModuleBuilder::execution_tier()}), we translate back from {TestExecutionTier} to {ExecutionTier} (for {kLiftoff} and {kTurboFan} only). The {TraceMemoryOperation} method, which is shared between interpreter and production code, now receives a {base::Optional<ExecutionTier>}, and we will just pass en empty optional if called from the interpreter. R=thibaudm@chromium.org Bug: v8:10389 Change-Id: Ibe133b91e8dca6d6edbfaee5ffa0d7fe72ed6d64 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2335186Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69260}
-
- 31 Jul, 2019 1 commit
-
-
Deepti Gandluri authored
Bug: v8:9536 Change-Id: Ie9c47493ab29f604d6e43ef318e08618ee527fc3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1728329Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#63012}
-
- 19 Jul, 2019 1 commit
-
-
Michael Starzinger authored
This adds decoding and compilation of the "atomic.fence" operator, which is intended to preserve the synchronization guarantees of higher-level languages. Unlike other atomic operators, it does not target a particular linear memory. It may occur in modules which declare no memory, or a non-shared memory, without causing a validation error. See proposal: https://github.com/WebAssembly/threads/pull/141 See discussion: https://github.com/WebAssembly/threads/issues/140 R=clemensh@chromium.org TEST=cctest/test-run-wasm-atomics/RunWasmXXX_AtomicFence BUG=v8:9452 Change-Id: Ibf7e46227f7edfe5c81c097cfc15924c59614067 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1701856 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#62821}
-
- 01 Feb, 2019 1 commit
-
-
Clemens Hammacher authored
This CL changes the usage pattern from FOR_XXX_VALUES(i) { Use(*i); } to FOR_XXX_VALUES(i) { Use(i); } which is way more intuitive. Note that the replacement in the uses was done via regular expression, so it's purely mechanical. In two locations I removed unneeded braces around the macro, because they confused clang-format. I plan to do more cleanups (remove redundant assignments within the FOR_XXX_VALUES body) in a follow-up CL. R=mstarzinger@chromium.org Bug: v8:8562 Change-Id: I4329bfcf34e5b077d19b50f4204ceb3b4340fe61 Reviewed-on: https://chromium-review.googlesource.com/c/1449615 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#59287}
-
- 29 Jan, 2019 1 commit
-
-
Junliang Yan authored
This fixes RunWasmInterpreter_* tests on big endian mips/ppc/s390. Change-Id: I4b9b767d0de45004ee1195ac225c6d1027c17a05 Reviewed-on: https://chromium-review.googlesource.com/c/1439517 Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#59174}
-
- 29 Aug, 2018 1 commit
-
-
Deepti Gandluri authored
The AtomicNarrow operations are currently used for wider 64-bit operations, that only operate on 32-bits of data or less (Ex:I64AtomicAdd8U). Removing these because this can be handled in int64-lowering by zeroing the higher order node. Explicitly zeroing these in code-gen is not required because - - The spec requires only the data exchange to be atomic, for narrow ops this uses only the low word. - The return values are not in memory, so are not visible to other workers/threads BUG:v8:6532 Change-Id: I90a795ab6c21c70cb096f59a137de653c9c6a178 Reviewed-on: https://chromium-review.googlesource.com/1194428Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#55499}
-
- 21 Aug, 2018 1 commit
-
-
Ben L. Titzer authored
R=mstarzinger@chromium.org Change-Id: Iacdff28dd1383d77d7708de4ee22d9f2a77d872a Reviewed-on: https://chromium-review.googlesource.com/1183440 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55284}
-
- 19 Jul, 2018 1 commit
-
-
Deepti Gandluri authored
Currently AtomicStores use AtomicExchange to store to memory, but AtomicExchange produces an output that is ignored by the AtomicStore visitor, a side effect of this is that a register already in use gets overwritten by the output of the exchange. BUG:v8:7602 Change-Id: I4ec3107a0a27503611e349e6f56ca9492d05d9f8 Reviewed-on: https://chromium-review.googlesource.com/1134576Reviewed-by: Ben Smith <binji@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#54565}
-
- 27 Apr, 2018 2 commits
-
-
Deepti Gandluri authored
Bug: v8:7704, v8:7570 Change-Id: I3543e101ba41b88710e4f5942929e4e128ef2a78 Reviewed-on: https://chromium-review.googlesource.com/1033356Reviewed-by: Eric Holk <eholk@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#52867}
-
Clemens Hammacher authored
Linkage-related methods were declared in wasm-compiler.h and implemented in wasm-linkage.cc. This required all users of e.g. wasm call descriptors to include the whole wasm compiler header. Also, some wasm linkage information is independent of turbofan and also used outside of the compiler directory. This CL splits off wasm-linkage.h (with minimal includes) and puts it in src/wasm. This allows to use that information without including compiler headers (will clean up several uses in follow-up CLs). R=mstarzinger@chromium.org, titzer@chromium.org Bug: v8:7570 Change-Id: Ifcae70b4ea7932cda30953b325c2b87c4176c598 Reviewed-on: https://chromium-review.googlesource.com/1013701Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52849}
-
- 26 Apr, 2018 1 commit
-
-
Stephan Herhut authored
This adds support for the I32AtomicCompareExchange operations in the interpreter. Also, the interpreter will now fail if it encounters an unknown opcode from the atomic prefix. Bug: chromium:826069 Change-Id: Iec1742271f4fdd83fcaa09ca72c24d1cf8c58835 Reviewed-on: https://chromium-review.googlesource.com/1029867Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#52807}
-
- 16 Apr, 2018 1 commit
-
-
Vincent Belliard authored
First version which can compile a very basic code. Change-Id: I3b98412a5ca39a28f8fe5b60516b82c6981dd187 Reviewed-on: https://chromium-review.googlesource.com/993232 Commit-Queue: Vincent Belliard <vincent.belliard@arm.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#52622}
-
- 03 Mar, 2018 1 commit
-
-
Mostyn Bramley-Moore authored
Followup to https://chromium-review.googlesource.com/c/v8/v8/+/923718 Bug: v8:6532 Change-Id: I4ed3dd94a59172a54cc5cb70730fdffba4efb383 Reviewed-on: https://chromium-review.googlesource.com/947942Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Mostyn Bramley-Moore <mostynb@vewd.com> Cr-Commit-Position: refs/heads/master@{#51715}
-
- 02 Mar, 2018 1 commit
-
-
Deepti Gandluri authored
Bug: v8:6532 Change-Id: I6fde1fd2cc5776628af4e8a92e9b9ec030b398f7 Reviewed-on: https://chromium-review.googlesource.com/923718Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#51675}
-
- 01 Dec, 2017 1 commit
-
-
Deepti Gandluri authored
Bug: v8:6532 Change-Id: I2ae9c2a2d2b6a02826a50cd150cb8008841f55e4 Reviewed-on: https://chromium-review.googlesource.com/804212 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Eric Holk <eholk@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#49807}
-
- 06 Nov, 2017 1 commit
-
-
Deepti Gandluri authored
Implement I32Atomic BinOps, and enable tests to run in the interpreter. Bug=v8:6532 Change-Id: Ida78d2911cb6973fe053283a9937e7af04e6df01 Reviewed-on: https://chromium-review.googlesource.com/724928 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#49126}
-
- 25 Oct, 2017 1 commit
-
-
Clemens Hammacher authored
This extends the WASM_EXEC_TEST to also execute the test in Liftoff (our new baseline compiler). Use WASM_COMPILED_EXEC_TEST to execute in both compilers, but not in the interpreter. R=titzer@chromium.org Bug: v8:6600 Change-Id: I0b76a5cff9af1b8c4aaec3cceb154ad29ca1b58e Reviewed-on: https://chromium-review.googlesource.com/733560 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#48932}
-
- 05 Oct, 2017 1 commit
-
-
Deepti Gandluri authored
Fix disassembly of atomic operations for the inspector. BUG=v8:6842,v8:6532 Change-Id: I3701b55c28b10561d1726e2c0b9fe2e1b2c76b8e Reviewed-on: https://chromium-review.googlesource.com/703468 Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#48324}
-
- 02 Oct, 2017 1 commit
-
-
Deepti Gandluri authored
Bug: V8:6532 Change-Id: I6713e1c01ec669b7fa9a09bb75fbecff12f6cc22 Reviewed-on: https://chromium-review.googlesource.com/685949 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#48252}
-
- 23 Sep, 2017 1 commit
-
-
Deepti Gandluri authored
Bug=v8:6842,v8:6532 Change-Id: I6ae1064e1e9a54c189311d6f34fc5fad85f13b7f Reviewed-on: https://chromium-review.googlesource.com/678594 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#48127}
-
- 20 Sep, 2017 1 commit
-
-
Clemens Hammacher authored
This fixes a few leftovers where we use WASM_EXEC_TEST, but then unconditionally execute the compiled code, and also changes more tests to use WASM_EXEC_TEST, hence run in both the interpreter and compiled code. Once we have land the baseline compiler, those tests will also execute in baseline compilation mode. R=ahaas@chromium.org Bug: v8:6600 Change-Id: I79598df21a7538934306e01ca6593f05afe19ed3 Reviewed-on: https://chromium-review.googlesource.com/672528 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#48091}
-
- 14 Sep, 2017 1 commit
-
-
Deepti Gandluri authored
- Validate that atomic ops can only be called when shared memory is declared - Throw Compile/Link erros on mismatch between declared, imported memory - Test harness helpers for setting shared memory, tests BUG=v8:6532 R=binji@chromium.org, bradnelson@chromium.org Change-Id: I43fe3d04bb7e3e0a2cecca0528578f98844d2608 Reviewed-on: https://chromium-review.googlesource.com/665379 Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Cr-Commit-Position: refs/heads/master@{#48019}
-
- 13 Sep, 2017 1 commit
-
-
Michael Starzinger authored
R=clemensh@chromium.org Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I3df5d50f81909188ee0cb31d0f479aadeeabe20f Reviewed-on: https://chromium-review.googlesource.com/662780Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47991}
-
- 11 Sep, 2017 1 commit
-
-
Clemens Hammacher authored
Cleanup before enabling the presubmit check: https://chromium-review.googlesource.com/c/v8/v8/+/657104 Bug: v8:6811 R=ahaas@chromium.org CC=mstarzinger@chromium.org Change-Id: Ifbf9210464b46dfdb5e04fbedc41d30e11536f74 Reviewed-on: https://chromium-review.googlesource.com/657422Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#47943}
-
- 01 Sep, 2017 1 commit
-
-
Clemens Hammacher authored
This required splitting wasm-run-utils.h in header and implementation, since the anonymous namespace in wasm-run-utils.h is now gone. This is a reasonable refactoring in itself. R=titzer@chromium.org CC=mstarzinger@chromium.org, mostynb@opera.com Bug: chromium:746958 Change-Id: I0f3b30fef1865cd88eca37b69d0c3a9eb19e77ea Reviewed-on: https://chromium-review.googlesource.com/647587Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#47773}
-
- 25 Aug, 2017 1 commit
-
-
Deepti Gandluri authored
BUG=v8:6532 R=binji@chromium.org, bradnelson@chromium.org Change-Id: I376dd8e4d27cac657d5a7c05a50a0477963da7b7 Reviewed-on: https://chromium-review.googlesource.com/627476 Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#47620}
-
- 19 Aug, 2017 2 commits
-
-
Mircea Trofin authored
This reverts commit 3913bde1. Reason for revert: Reason for revert fixed. Original change's description: > Revert "[wasm] Rename TestingModule to TestingModuleBuilder." > > This reverts commit ed06fc91. > > Reason for revert: Need to revert previous CL > > Original change's description: > > [wasm] Rename TestingModule to TestingModuleBuilder. > > > > This is a followup to moving the ModuleEnv to the compiler directory and > > making it immutable. > > > > R=mtrofin@chromium.org, ahaas@chromium.org > > > > Bug: > > Change-Id: I0f5ec1b697bdcfad0b4dc2bca577cc0f40de8dc0 > > Reviewed-on: https://chromium-review.googlesource.com/616762 > > Commit-Queue: Ben Titzer <titzer@chromium.org> > > Reviewed-by: Mircea Trofin <mtrofin@chromium.org> > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#47419} > > TBR=titzer@chromium.org,mtrofin@chromium.org,ahaas@chromium.org > > Change-Id: I9b3b379e89f523c2fcf205a1d268aa294bbc44ff > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://chromium-review.googlesource.com/622567 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47448} TBR=machenbach@chromium.org,titzer@chromium.org,mtrofin@chromium.org,ahaas@chromium.org Change-Id: Idce6f1ca8ed0ea80edb50292e9b6e2d7712f29cf No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/622034Reviewed-by: Mircea Trofin <mtrofin@chromium.org> Commit-Queue: Mircea Trofin <mtrofin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47454}
-
Michael Achenbach authored
This reverts commit ed06fc91. Reason for revert: Need to revert previous CL Original change's description: > [wasm] Rename TestingModule to TestingModuleBuilder. > > This is a followup to moving the ModuleEnv to the compiler directory and > making it immutable. > > R=mtrofin@chromium.org, ahaas@chromium.org > > Bug: > Change-Id: I0f5ec1b697bdcfad0b4dc2bca577cc0f40de8dc0 > Reviewed-on: https://chromium-review.googlesource.com/616762 > Commit-Queue: Ben Titzer <titzer@chromium.org> > Reviewed-by: Mircea Trofin <mtrofin@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47419} TBR=titzer@chromium.org,mtrofin@chromium.org,ahaas@chromium.org Change-Id: I9b3b379e89f523c2fcf205a1d268aa294bbc44ff No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/622567Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#47448}
-
- 18 Aug, 2017 1 commit
-
-
Ben L. Titzer authored
This is a followup to moving the ModuleEnv to the compiler directory and making it immutable. R=mtrofin@chromium.org, ahaas@chromium.org Bug: Change-Id: I0f5ec1b697bdcfad0b4dc2bca577cc0f40de8dc0 Reviewed-on: https://chromium-review.googlesource.com/616762 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Mircea Trofin <mtrofin@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#47419}
-
- 04 Aug, 2017 1 commit
-
-
Deepti Gandluri authored
- Implemented ops: I32AtomicAnd, I32AtomicAnd8U, I32AtomicAnd16U, I32AtomicOr, I32AtomicOr8U, I32AtomicOr16U, I32AtomicXor, I32AtomicXor8U, I32AtomicXor16U - Refactor wasm-compiler AtomicOp to use macros - Tests Bug:V8:6532 R=binji@chromium.org, bbudge@chromium.org, bradnelson@chromium.org Change-Id: I7e4dc8ad8cf3e211c3aef721a02778f2a4621322 Reviewed-on: https://chromium-review.googlesource.com/600539Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#47172}
-
- 02 Aug, 2017 1 commit
-
-
Deepti Gandluri authored
- Decode logic for atomic operations - Implementations for I32AtomicAdd, I32AtomicAdd8U, I32AtomicAdd16U, I32AtomicSub, I32AtomicSub8U, I32AtomicSub16U - cctest value helpers for Uint16/Uint8 types R=binji@chromium.org, bbudge@chromium.org, bradnelson@chromium.org BUG=v8:6532 Change-Id: I710ee8ef566c5e33866afdf5b47375c2ea6fdbe6 Reviewed-on: https://chromium-review.googlesource.com/595241Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#47102}
-