- 14 Apr, 2020 4 commits
-
-
Clemens Backes authored
This reverts commit f2ea42d6. Reason for revert: Makes UBSan unhappy: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/10634 Original change's description: > [wasm-debug-eval] Implement additional evaluator API methods > > This CL implements the __getLocal and __sbrk APIs of the evaluator > interface. Also includes a drive-by fix of the imports' module: put > them on the "env" module. > > Change-Id: Ie16d1b1cf924b88734eda184d1ce98d52f32f828 > Bug: chromium:1020120 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132786 > Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67122} TBR=jkummerow@chromium.org,pfaffe@chromium.org Change-Id: I23b078d37971e083c08c9b83994bbf38ac13f103 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1020120 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2148787Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67124}
-
Philip Pfaffe authored
This CL implements the __getLocal and __sbrk APIs of the evaluator interface. Also includes a drive-by fix of the imports' module: put them on the "env" module. Change-Id: Ie16d1b1cf924b88734eda184d1ce98d52f32f828 Bug: chromium:1020120 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132786 Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#67122}
-
Clemens Backes authored
This adds a flag to {WasmCode} objects to store whether this code was generated for debugging. This flag can be set for Liftoff code (in which case the code will e.g. have an extended prologue for debugging), but it can also be set for TurboFan, in case Liftoff bailed out when producing the debugging code. Having this flag allows us to remove the hack to pass the compilation results to {OnFinishedUnits} just to check whether we actually wanted to compile Liftoff functions. Drive-by: Replace the {ReachedRecompilationTierField} by a {MissingRecompilationField}, because all we need to know is if we are still waiting for that function to get recompiled. R=ahaas@chromium.org Bug: v8:10330,v8:10410 Change-Id: Ia023df8955a60d9f5595a6cb2737e14d83baf716 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2142259 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67119}
-
Clemens Backes authored
Before the "debug" flag was stored on the {CompilationEnv}. But each background compilation task only gets the {CompilationEnv} once when starting compilation, so by the time it picks up the "Liftoff for debugging" compilation jobs, it might still compile them without the debug flag being set. This leads to flakes in the "debug-step-into-wasm" test, because we won't stop in the function prologue when stepping in (because the function prologue does not check the "hook on function call" flag if debug mode was not enabled). This CL does not increase the size of a compilation unit, since both the tier and the debug flag only need a single byte each. As a nice side effect, this change allows us to remove the lock in {CreateCompilationEnv}, because no modifyable flag is read any more. R=thibaudm@chromium.org Bug: v8:10410 Change-Id: Ic296ea0c4dd1d4dedde119f0536e87e5d301b5a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2144116Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67115}
-
- 09 Apr, 2020 4 commits
-
-
Clemens Backes authored
In production, the debug side tables will always be produced with Liftoff in debug mode ({CompilationEnv::debug} being set). Thus, this CL switches the tests to also test this configuration. R=thibaudm@chromium.org Bug: v8:10410 Change-Id: I3fa16f099d2bb612c7abf8c3ef518e1446564306 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2144119Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67090}
-
Thibaud Michaud authored
This is a reland of f902ef32 Original change's description: > [wasm] Cleanup wasm script creation > > - Do not expose CreateWasmScript since we should now use > WasmEngine:GetOrCreateScript instead, > - Initialize all Script fields in CreateWasmScript, not in > WasmModuleObject::New, > - Do not pass code size estimate argument, since we can always use the > actual native module's committed code space. > > R=clemensb@chromium.org > > Bug: v8:10349 > Change-Id: If9250d62ffc271ab6efc3b9c45958a305c9d1827 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2135633 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67083} Bug: v8:10349 Change-Id: I38c8b6beb07a1e5d565c6a5fd749daea147817bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2144064Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67087}
-
Clemens Backes authored
This reverts commit f902ef32. Reason for revert: Makes gc-stress unhappy: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20gc%20stress/27404 Original change's description: > [wasm] Cleanup wasm script creation > > - Do not expose CreateWasmScript since we should now use > WasmEngine:GetOrCreateScript instead, > - Initialize all Script fields in CreateWasmScript, not in > WasmModuleObject::New, > - Do not pass code size estimate argument, since we can always use the > actual native module's committed code space. > > R=clemensb@chromium.org > > Bug: v8:10349 > Change-Id: If9250d62ffc271ab6efc3b9c45958a305c9d1827 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2135633 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67083} TBR=clemensb@chromium.org,thibaudm@chromium.org Change-Id: Iac2978af1a300ec079baebab0feb8c9598711738 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10349 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2144058Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67085}
-
Thibaud Michaud authored
- Do not expose CreateWasmScript since we should now use WasmEngine:GetOrCreateScript instead, - Initialize all Script fields in CreateWasmScript, not in WasmModuleObject::New, - Do not pass code size estimate argument, since we can always use the actual native module's committed code space. R=clemensb@chromium.org Bug: v8:10349 Change-Id: If9250d62ffc271ab6efc3b9c45958a305c9d1827 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2135633Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67083}
-
- 08 Apr, 2020 1 commit
-
-
Philip Pfaffe authored
Change-Id: If7691bc70aac4a8f2ba8fe383bd44a829a9a0bdb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132265Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> Cr-Commit-Position: refs/heads/master@{#67062}
-
- 06 Apr, 2020 3 commits
-
-
Ng Zhi An authored
Shifts values are in register, not immediate. Bug: v8:8934 Bug: v8:10392 Change-Id: I7fed9dcd3531ec5e2b28061f0dd1675616e19f7b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2135930Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67024}
-
Ng Zhi An authored
Implement i8x16.bitmask, i16x8.bitmask, i32x4.bitmask on x64. Bug: v8:10308 Change-Id: Id47cb229de77d80d0a7ec91f4862a91258ff1979 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2127317 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#67022}
-
Z Nguyen-Huu authored
Currently, only one memory is supported. For memory, we would use name as follows. 1. If import: use <import_module>.<field_name> from WasmImport. 2. If export: use <field_name> from WasmExport. 3. Use memory<index>. Doc: https://docs.google.com/document/d/1XoXWONLBgZWQ9dhtoMpQPvD0fnnWA50OorsuSXfME3g Bug: v8:10242 Change-Id: Ifd342bcd86ac302f5b43f2ee88a8ea21a28b5a0f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2132724 Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Kim-Anh Tran <kimanh@chromium.org> Cr-Commit-Position: refs/heads/master@{#67020}
-
- 03 Apr, 2020 2 commits
-
-
Ng Zhi An authored
Implement i8x16.bitmask, i16x8.bitmask, i32x4.bitmask on ia32. Drive by additions of disasm and disasm tests to some instructions. Bug: v8:10308 Change-Id: I3725ed6959ae55f96ee7950130776a4f08e177c9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2127314Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66989}
-
Clemens Backes authored
Adding code can happen in parallel (it includes copying the code to the code region and relocation it). Publishing happens under one lock per native module though. We eventually want to avoid blocking on this lock for too long. This CL prepares that by splitting the actions of adding and publishing code. R=ahaas@chromium.org Bug: v8:10330, v8:10387 Change-Id: Iddbdadfe32e691bbf5e7b387ea947579bc3376f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2134372 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#66979}
-
- 31 Mar, 2020 1 commit
-
-
Clemens Backes authored
If we want external people to stop shouting WASM, we should start by avoiding that in our own code base. This CL replaces almost all occurrences of "WASM" by "Wasm". The last remaining ones (in frames.cc) are in capitalized contexts where WASM fits. TBR=ecmziegler@chromium.org Bug: v8:10155 Change-Id: I905b92220768b99bb5e1165255691ffe4498dba3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2126917 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Emanuel Ziegler <ecmziegler@chromium.org> Cr-Commit-Position: refs/heads/master@{#66917}
-
- 30 Mar, 2020 1 commit
-
-
Ng Zhi An authored
Implement i8x16.bitmask, i16x8.bitmask, i32x4.bitmask on arm. Bug: v8:10308 Change-Id: Ifa2439522b74a310d98621104deda80f3dc25b33 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2101697Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66909}
-
- 27 Mar, 2020 1 commit
-
-
Clemens Backes authored
There are only three tests with differing behaviour if Liftoff is used for debugging. This CL thus stages the --debug-in-liftoff flag behind --future (tested by the "future" variant) and excludes the three tests. This allows us to test the other (already working) tests for regressions, and iteratively shrinking down the list of failing tests. Drive-by: Tier down modules in tests before testing debugging features to avoid hitting a DCHECK in Liftoff recompilation for debugging. R=thibaudm@chromium.org, ecmziegler@chromium.org Bug: v8:10351 Change-Id: I3b1dd1a29258ecf13c1f60020fb06358005558d4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2122021Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66889}
-
- 25 Mar, 2020 1 commit
-
-
Richard Townsend authored
MSVC 19.25 complains about signbit being ambiguous between signbit(float) and signbit(double) overloads when called with an int8_t. To remove the ambiguity, cast to a double. Change-Id: I698f05eed9248eef493bbe46b75fcd07e37e2a05 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2118510Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Richard Townsend <richard.townsend@arm.com> Cr-Commit-Position: refs/heads/master@{#66856}
-
- 23 Mar, 2020 1 commit
-
-
Clemens Backes authored
The spec was changed such that traps are not catchable in wasm: https://github.com/WebAssembly/exception-handling/pull/93 This CL implements this in V8 by adding a private symbol as a property to all uncatchable exceptions. It also adds a number of tests. R=jkummerow@chromium.org CC=aheejin@chromium.org Bug: v8:10194 Change-Id: I498531762e8876f809d3b8aeb72ccc053e0e3cd4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2113375 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#66824}
-
- 20 Mar, 2020 1 commit
-
-
Ng Zhi An authored
Introduces a new macro BUILD_V (v is for vector) that pushes bytes into a vector (instead of directly in an array initializer, see BUILD). This has the positive effect of being able to handle opcodes of multiple bytes (e.g. SIMD opcodes bigger that 0xfd80). Because of this "API" change, our helper macros in test-run-wasm-simd.cc and wasm-run-utils.h need to change too. So, we introduce new macros (suffixed by _V), that will call the appropriate lambdas defined in BUILD_V, that knows how to push bytes into the vector, and also can handle multi-byte opcodes. This design has a bit of duplication and ugliness, but was chosen to reduce the impact of existing tests. No restructuring of test code is required, we only need to add suffix _V. Note that we do not have multi-byte opcodes yet (in wasm-opcodes.h), this change will be breaking, and requires all the tests to be updated to use _V macros first. Bug: v8:10258 Change-Id: I86638a548fe2f9714c1cfb3bd691fb7b49bfd652 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2107650 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66812}
-
- 19 Mar, 2020 2 commits
-
-
Ng Zhi An authored
Implement i8x16.bitmask, i16x8.bitmask, i32x4.bitmask on interpreter and arm64. These operations are behind wasm_simd_post_mvp flag, as we are only prototyping to evaluate performance. The codegen is based on guidance at https://github.com/WebAssembly/simd/pull/201. Bug: v8:10308 Change-Id: I835aa8a23e677a00ee7897c1c31a028850e238a9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2099451Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66793}
-
Philip Pfaffe authored
This implements the first part of WebAssembly debug evaluate. The patch includes the foundation required to execute evaluator modules. It only implements the first of the APIs of the evaluator module spec. Bug: chromium:1020120 Change-Id: I06ec98a63d0a0ec8d81c2eac4319c4b85d3e16c1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2089936 Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#66787}
-
- 18 Mar, 2020 1 commit
-
-
Milad Farazmand authored
"I64x2Eq", "S1x2AnyTrue" and "S1x2AllTrue" do not yet have lowering implemented hence some of the test case may fail on s390x hardware without AVX support. Change-Id: Ice01bcaed78950fbad36e2ba37c8f7ae5d10b59b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2107763Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#66780}
-
- 17 Mar, 2020 2 commits
-
-
Milad Farazmand authored
This Cl enables simd on machines which support VECTOR_ENHANCE_FACILITY_1. It also enables related tests to match execution on x64. LoadTransform tests must be skipped on the simulator until a future CL matches behaviour between native BE and its simulator on LE. Change-Id: Iaadc32e0388bf15d3d7c550062a373fb403b65c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2107053Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#66754}
-
Philip Pfaffe authored
Add a scriptLanguage enum to the new scripts events. This overhauls crrev.com/c/2011083 that was related. Report the code section offset as well as the script language on the Debugger.scriptParsed and Debugger.scriptFailedToParse events. Bug: chromium:1057569 Change-Id: I40b43f28f0b3e094720db4fc1f07db1a0c293ee0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2083025Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> Cr-Commit-Position: refs/heads/master@{#66749}
-
- 12 Mar, 2020 2 commits
-
-
Jakob Kummerow authored
In preparation for adding reference types, which need an additional parameter to indicate the referenced type. Bug: v8:7748 Change-Id: If4023f3d9c7f42ed603b69c43356d2e8b81a0daa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2091471 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66687}
-
Andreas Haas authored
x64's cmpxchgl instruction does not zero-extend the register. The stale high word caused the difference in the results of the interpreter and Liftoff/TurboFan. R=clemensb@chromium.org CC=zhin@chromium.org Bug: chromium:1059529 Change-Id: I0fd440bee26e25b90b29533cfa9151e4d87754e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2098726 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#66685}
-
- 06 Mar, 2020 1 commit
-
-
Ng Zhi An authored
Bug: v8:10233 Change-Id: I8bb564e595d5c2b093adea0b9dde9c1c86dcee70 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2084318Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66618}
-
- 05 Mar, 2020 3 commits
-
-
Clemens Backes authored
This is a reland of 79398ab0 Original change's description: > [wasm] Further reduce the size of WasmCode > > Also, save dynamic allocations (plus their memory overhead). > This is realized by storing the relocation information, source position > table, and protected instruction information together in one "metadata" > byte array. > For each of the three components, we just store their size, such that > the accessors can return the respecitive {Vector} views as before. > > This makes each WasmCode object 24 bytes smaller on 64-bit > architectures. It also saves a few more bytes per code object because > less padding is needed for the individual allocations, and each dynamic > allocation comes with some constant memory overhead. > > Since the protected instructions will just be stored in a byte array > now, some APIs are refactored to just return that byte array directly > (instead of an array of {ProtectedInstructionData}). This also > simplifies serialization and deserialization, and will allow for > switching to a more compact representation in the future. > > Drive-by: Add some more checks to {Vector::cast} to protect against > undefined behaviour. > > R=ahaas@chromium.org > > Bug: v8:10254 > Change-Id: I81ca847023841110e3e52cc402fcb0349325d7af > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2078545 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66596} Tbr: ahaas@chromium.org Bug: v8:10254 Change-Id: Idcdcb4f13c3eb7a3f7fb5ef8a1229103ca0ae975 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2089934Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66598}
-
Clemens Backes authored
This reverts commit 79398ab0. Reason for revert: Makes UBSan unhappy: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/10186 Original change's description: > [wasm] Further reduce the size of WasmCode > > Also, save dynamic allocations (plus their memory overhead). > This is realized by storing the relocation information, source position > table, and protected instruction information together in one "metadata" > byte array. > For each of the three components, we just store their size, such that > the accessors can return the respecitive {Vector} views as before. > > This makes each WasmCode object 24 bytes smaller on 64-bit > architectures. It also saves a few more bytes per code object because > less padding is needed for the individual allocations, and each dynamic > allocation comes with some constant memory overhead. > > Since the protected instructions will just be stored in a byte array > now, some APIs are refactored to just return that byte array directly > (instead of an array of {ProtectedInstructionData}). This also > simplifies serialization and deserialization, and will allow for > switching to a more compact representation in the future. > > Drive-by: Add some more checks to {Vector::cast} to protect against > undefined behaviour. > > R=ahaas@chromium.org > > Bug: v8:10254 > Change-Id: I81ca847023841110e3e52cc402fcb0349325d7af > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2078545 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66596} TBR=jkummerow@chromium.org,ahaas@chromium.org,clemensb@chromium.org,tebbi@chromium.org Change-Id: Id80aa82cfce8942879031032b322ee66855b5600 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10254 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2089933Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66597}
-
Clemens Backes authored
Also, save dynamic allocations (plus their memory overhead). This is realized by storing the relocation information, source position table, and protected instruction information together in one "metadata" byte array. For each of the three components, we just store their size, such that the accessors can return the respecitive {Vector} views as before. This makes each WasmCode object 24 bytes smaller on 64-bit architectures. It also saves a few more bytes per code object because less padding is needed for the individual allocations, and each dynamic allocation comes with some constant memory overhead. Since the protected instructions will just be stored in a byte array now, some APIs are refactored to just return that byte array directly (instead of an array of {ProtectedInstructionData}). This also simplifies serialization and deserialization, and will allow for switching to a more compact representation in the future. Drive-by: Add some more checks to {Vector::cast} to protect against undefined behaviour. R=ahaas@chromium.org Bug: v8:10254 Change-Id: I81ca847023841110e3e52cc402fcb0349325d7af Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2078545Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66596}
-
- 03 Mar, 2020 2 commits
-
-
Zhou, Zhiguo authored
Bug: v8:9909 Change-Id: Id89ddb429c90f3f454a581d75b783ff56775b01e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2049247 Commit-Queue: Zhiguo Zhou <zhiguo.zhou@intel.com> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66552}
-
Ng Zhi An authored
Implements i8x16.abs, i16x8.abs, and i32x4.abs. Bug: v8:10233 Change-Id: I32391e8f895fea808180561d89a4fd24fbead3bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2067845 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#66548}
-
- 02 Mar, 2020 1 commit
-
-
Deepti Gandluri authored
Some opcodes are introduced in V8 for prototyping, and performance measurements that are not officially a part of the current SIMD proposal but may be included in future, gate these by a separate flag. Change-Id: Icc6a9e89c6196c8ff144d2e0193d707e1f60c38b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2079539 Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#66542}
-
- 28 Feb, 2020 1 commit
-
-
Ng Zhi An authored
Implements i8x16.abs, i16x8.abs, and i32x4.abs. Bug: v8:10233 Change-Id: I573c9969ed0ccc9dfe7ff6bde4fcddb5ffdaa789 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2067844Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66492}
-
- 27 Feb, 2020 1 commit
-
-
Clemens Backes authored
Most function signatures are created once and never changed. Hence pass them as const pointer. This makes it clear in function signatures that these parameters will not be modified. This also avoids a few ugly const_casts where we were passing pointers to constexpr FunctionSigs via non-const pointers. R=jkummerow@chromium.org Bug: v8:10155 Change-Id: Ieb658ab5582bff276f76babdaf7ddb8f72bd4790 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2072739Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66478}
-
- 26 Feb, 2020 3 commits
-
-
Ng Zhi An authored
Implements i8x16.abs, i16x8.abs, and i32x4.abs. Bug: v8:10233 Change-Id: I350ceca7ee75037615985ea955c5f17997996aac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2067842 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#66442}
-
Ng Zhi An authored
Implements i8x16.abs, i16x8.abs, and i32x4.abs. Bug: v8:10233 Change-Id: Iefe3c70bdc229c6da6a0ef07273ca654ca1e937e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2063200Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66440}
-
Ng Zhi An authored
FMA tests that are running on Liftoff can use fused results, since the tests will fall back to TurboFan. Bug: v8:9415 Change-Id: I02edea5ce1447263f7bc7574573418b0055aef8f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2063202Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66438}
-
- 24 Feb, 2020 1 commit
-
-
Philip Pfaffe authored
This reverts commit 827107a7. Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=1054664 Original change's description: > [wasm-debug] Let wasm scripts report correct column information. > > In the debugger, wasm scripts currently do not contain meaningful column > informations. Fix that by keeping track of the offset and size of the > wasm code section inthe module and reporting that to the debugger. > > Bug: chromium:1042636 > Change-Id: Ie2b5d3a50952a467d256f815c16e459cb0ae600e > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2011083 > Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> > Reviewed-by: Simon Zünd <szuend@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/master@{#65913} Bug: chromium:1042636 Change-Id: Ic59d71111c3274688828bdbf6894f7f3274dc50a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2066983 Commit-Queue: Philip Pfaffe <pfaffe@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#66409}
-