- 27 Feb, 2019 1 commit
-
-
Michael Starzinger authored
R=ahaas@chromium.org TEST=mjsunit/regress/wasm/regress-8896 BUG=v8:8896 Change-Id: Id942b95ac05226206a08f0a5e516b9072a1a7f6f Reviewed-on: https://chromium-review.googlesource.com/c/1491220 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#59892}
-
- 13 Feb, 2019 1 commit
-
-
Michael Starzinger authored
This switches from copying entire runtime stubs into each module to only having small jump table slots in each module that act as a trampoline to the actual embedded builtin representing the runtime stub. This reduces the memory footprint of modules. R=clemensh@chromium.org Change-Id: I3de528f7ebcc104f114ec32914d2b86e810d10d6 Reviewed-on: https://chromium-review.googlesource.com/c/1460474 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#59575}
-
- 07 Feb, 2019 1 commit
-
-
Sigurd Schneider authored
Drive-by: Refactor FlushInstructionCache to its own header. This removes dependencies of objects.cc and code.cc Bug: v8:8562 Change-Id: If23f3b9d4f2068e08c61c0f4b070ecfe1b9a6cc0 Reviewed-on: https://chromium-review.googlesource.com/c/1456081Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59435}
-
- 04 Feb, 2019 1 commit
-
-
Junliang Yan authored
Fix unaligned memory access error inconstant pool access during relocation. Change-Id: I960b59b226cc5f212fff4565b2c7694364f2cb54 Reviewed-on: https://chromium-review.googlesource.com/c/1452357Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#59351}
-
- 25 Jan, 2019 2 commits
-
-
Jakob Kummerow authored
The Memory<T>(address) helper requires the address to be aligned. Since values embedded into ia32/x64 code can in general be unaligned, we must use ReadUnalignedValue/WriteUnalignedValue to manipulate them. Bug: v8:3770 Change-Id: I12c3fc6aa09062dcc9188b6782ed4a35e1d684bd Reviewed-on: https://chromium-review.googlesource.com/c/1436223Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#59100}
-
Andreas Haas authored
Anyref parameters can exist across GC runs. Therefore the GC has to know where anyref parameters are on the stack so that it can mark them in its marking phase, and update them in the compaction phase. Already in a previous CL we grouped all anyref parameters so that they can be found more easily in a stack frame, see https://crrev.com/c/1371827. In this CL we implement the stack scanning itself. Note that anyref parameters are not scanned while iterating over the caller's frame (to which they actually belong), but while iterating over the callee's frame. The reason is that with tail-calls, only the callee knows how many tagged stack parameters (aka anyref parameters) there are. R=mstarzinger@chromium.org also-by=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I7a41ce11d06c0d420146fdb0bb8d5606f28824d7 Reviewed-on: https://chromium-review.googlesource.com/c/1424955 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#59099}
-
- 22 Jan, 2019 1 commit
-
-
Peter Marshall authored
Some includes in log.h were only needed by log.cc so move them there. Some were not needed at all, so remove them completely. Drive-by cleanup FunctionEvent(), which was never called without args for the last parameters which had default values. Change-Id: Id8b0c634c4d39d3c278ab3d932ed7af4142fd9c9 Reviewed-on: https://chromium-review.googlesource.com/c/1425914Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#59003}
-
- 16 Jan, 2019 2 commits
-
-
Michael Starzinger authored
This changes the existing --print-wasm-code to no longer print code for runtime stubs (or any other stub code). The new --print-wasm-stub-code can be used to specifically print such stubs. This does not affect the existing --print-code behavior. R=ahaas@chromium.org Change-Id: I7a00722bf6e7cfbc210245cfd00dac16905f8902 Reviewed-on: https://chromium-review.googlesource.com/c/1411883Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58857}
-
Junliang Yan authored
Change-Id: I17ab5dbf79acbba1c562ecaf585e919da6cfaf75 Reviewed-on: https://chromium-review.googlesource.com/c/1412632Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#58851}
-
- 13 Dec, 2018 3 commits
-
-
Sigurd Schneider authored
This is a reland of 9c0a4858 Original change's description: > Reland "Reland "[code-comments] Put code comments into the code object"" > > This is a reland of ed3d6472 > > This reland fixes that padding at the end of Wasm instruction streams > triggered asserts in the code printer. > > Original change's description: > > Reland "[code-comments] Put code comments into the code object" > > > > This is a reland of e774cffe > > > > This reland disables a test as v8:8548 is blocking it, which was > > broken by a recent CL. CQ did not catch this because the merge-base > > CQ used did not yet contain the CL that caused v8:8548. > > > > Original change's description: > > > [code-comments] Put code comments into the code object > > > > > > Code comments in the snapshot can now be enabled with gn > > > arg 'v8_enable_snapshot_code_comments' > > > > > > Bug: v8:7989 > > > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > > > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#58020} > > > > TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org > > > > Bug: v8:7989, v8:8548 > > Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9 > > Reviewed-on: https://chromium-review.googlesource.com/c/1361166 > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#58028} > > Bug: v8:7989, v8:8548 > Change-Id: I254f55ff687ad049f8d92b09331ed26a2bd05d7d > Reviewed-on: https://chromium-review.googlesource.com/c/1371784 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58221} TBR=jgruber@chromium.org,mstarzinger@chromium.org Bug: v8:7989, v8:8548, v8:8593 Change-Id: I4f7ffc98e0281c7b744eb4a04ba0763896c7b59b Reviewed-on: https://chromium-review.googlesource.com/c/1375919Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58232}
-
Clemens Hammacher authored
This reverts commit 9c0a4858. Reason for revert: Seems to break nosnap debug: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20nosnap%20-%20debug/22228 Original change's description: > Reland "Reland "[code-comments] Put code comments into the code object"" > > This is a reland of ed3d6472 > > This reland fixes that padding at the end of Wasm instruction streams > triggered asserts in the code printer. > > Original change's description: > > Reland "[code-comments] Put code comments into the code object" > > > > This is a reland of e774cffe > > > > This reland disables a test as v8:8548 is blocking it, which was > > broken by a recent CL. CQ did not catch this because the merge-base > > CQ used did not yet contain the CL that caused v8:8548. > > > > Original change's description: > > > [code-comments] Put code comments into the code object > > > > > > Code comments in the snapshot can now be enabled with gn > > > arg 'v8_enable_snapshot_code_comments' > > > > > > Bug: v8:7989 > > > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > > > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#58020} > > > > TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org > > > > Bug: v8:7989, v8:8548 > > Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9 > > Reviewed-on: https://chromium-review.googlesource.com/c/1361166 > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#58028} > > Bug: v8:7989, v8:8548 > Change-Id: I254f55ff687ad049f8d92b09331ed26a2bd05d7d > Reviewed-on: https://chromium-review.googlesource.com/c/1371784 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58221} TBR=mvstanton@chromium.org,mstarzinger@chromium.org,sigurds@chromium.org,jgruber@chromium.org Change-Id: I681a3c63120c6ab953bfe9cd2b07bcf560ebfdee No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7989, v8:8548 Reviewed-on: https://chromium-review.googlesource.com/c/1375916 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58228}
-
Sigurd Schneider authored
This is a reland of ed3d6472 This reland fixes that padding at the end of Wasm instruction streams triggered asserts in the code printer. Original change's description: > Reland "[code-comments] Put code comments into the code object" > > This is a reland of e774cffe > > This reland disables a test as v8:8548 is blocking it, which was > broken by a recent CL. CQ did not catch this because the merge-base > CQ used did not yet contain the CL that caused v8:8548. > > Original change's description: > > [code-comments] Put code comments into the code object > > > > Code comments in the snapshot can now be enabled with gn > > arg 'v8_enable_snapshot_code_comments' > > > > Bug: v8:7989 > > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#58020} > > TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org > > Bug: v8:7989, v8:8548 > Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9 > Reviewed-on: https://chromium-review.googlesource.com/c/1361166 > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58028} Bug: v8:7989, v8:8548 Change-Id: I254f55ff687ad049f8d92b09331ed26a2bd05d7d Reviewed-on: https://chromium-review.googlesource.com/c/1371784 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58221}
-
- 12 Dec, 2018 1 commit
-
-
Jakob Gruber authored
There's no reason to restrict off-heap targets to builtin host Code objects during serialization. They can also occur e.g. in irregexp code created by embedded scripts. Drive-by: unify the list of reloc modes that have a target_address_address. Bug: v8:8572,v8:6666 Change-Id: I26dce735463b79677a7b7dcfdb604c5234b5f10b Reviewed-on: https://chromium-review.googlesource.com/c/1371568Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58194}
-
- 11 Dec, 2018 1 commit
-
-
Clemens Hammacher authored
The class declaration regexp in cpplint did not catch classes decorated by V8_EXPORT, V8_EXPORT_PRIVATE or any other decorator containing digits. This will be fixed in https://github.com/google/styleguide/pull/422. This CL already prepares the code base by fixing all errors that will be found after that change. Some follow-up changes were needed to fix implicit conversion that are not taken any more now. R=mstarzinger@chromium.org Bug: v8:8562 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I03713bd04dbc3f54b89a6c857a93463139aa5efd Reviewed-on: https://chromium-review.googlesource.com/c/1367751Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58143}
-
- 10 Dec, 2018 1 commit
-
-
Andreas Haas authored
CompileJsToWasmWrappers only needs a WasmModule, so we should not pass in a NativeModule. R=clemensh@chromium.org Bug: v8:8562 Change-Id: Ic38f1bee2eab3a06921c27f56fd175b51688ad5f Reviewed-on: https://chromium-review.googlesource.com/c/1367748Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58120}
-
- 07 Dec, 2018 1 commit
-
-
Clemens Hammacher authored
We need to be able to serialize a NativeModule, which is not bound to any Isolate. Hence we should not want to pass any Isolate to the serializer. This CL removes the dependence by not using the ExternalReferenceTable from the Isolate, but instead using its own ExternalReferenceList for serialization and deserialization. This ExternalReferenceList only contains isolate-independent external references. R=mstarzinger@chromium.org Bug: chromium:912043, chromium:912031 Change-Id: Iea5abd95dce9c54e618255cc577b6b43f002ac5d Reviewed-on: https://chromium-review.googlesource.com/c/1363135 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#58099}
-
- 05 Dec, 2018 1 commit
-
-
Clemens Hammacher authored
We currently compute this value from the size of the external table, which we get from the Isolate. This size is isolate-independent though, so it can just be a constant. R=mstarzinger@chromium.org Bug: chromium:912043 Change-Id: If1c09a56b1a985b855f5b65818322979c194d772 Reviewed-on: https://chromium-review.googlesource.com/c/1362954Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58045}
-
- 04 Dec, 2018 4 commits
-
-
Sigurd Schneider authored
This reverts commit ed3d6472. Reason for revert: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20noi18n%20-%20debug/24178 Original change's description: > Reland "[code-comments] Put code comments into the code object" > > This is a reland of e774cffe > > This reland disables a test as v8:8548 is blocking it, which was > broken by a recent CL. CQ did not catch this because the merge-base > CQ used did not yet contain the CL that caused v8:8548. > > Original change's description: > > [code-comments] Put code comments into the code object > > > > Code comments in the snapshot can now be enabled with gn > > arg 'v8_enable_snapshot_code_comments' > > > > Bug: v8:7989 > > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#58020} > > TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org > > Bug: v8:7989, v8:8548 > Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9 > Reviewed-on: https://chromium-review.googlesource.com/c/1361166 > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58028} TBR=mvstanton@chromium.org,mstarzinger@chromium.org,sigurds@chromium.org,jgruber@chromium.org Change-Id: I1075bb09de7cb8dad71e31ff51a4e7bb6a200a8b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7989, v8:8548 Reviewed-on: https://chromium-review.googlesource.com/c/1362043Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58029}
-
Sigurd Schneider authored
This is a reland of e774cffe This reland disables a test as v8:8548 is blocking it, which was broken by a recent CL. CQ did not catch this because the merge-base CQ used did not yet contain the CL that caused v8:8548. Original change's description: > [code-comments] Put code comments into the code object > > Code comments in the snapshot can now be enabled with gn > arg 'v8_enable_snapshot_code_comments' > > Bug: v8:7989 > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58020} TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org Bug: v8:7989, v8:8548 Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9 Reviewed-on: https://chromium-review.googlesource.com/c/1361166Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58028}
-
Leszek Swirski authored
This reverts commit e774cffe. Reason for revert: Breaks OptimizeForSize tests https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8928056438104852432/+/steps/OptimizeForSize/0/logs/TestCodeAssemblerCode../0 Original change's description: > [code-comments] Put code comments into the code object > > Code comments in the snapshot can now be enabled with gn > arg 'v8_enable_snapshot_code_comments' > > Bug: v8:7989 > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 > Reviewed-on: https://chromium-review.googlesource.com/c/1329173 > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#58020} TBR=mvstanton@chromium.org,mstarzinger@chromium.org,sigurds@chromium.org,jgruber@chromium.org Change-Id: Ie336a99218db4def848bd5c8c58dfb66f0e372b2 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7989 Reviewed-on: https://chromium-review.googlesource.com/c/1361165Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#58021}
-
Sigurd Schneider authored
Code comments in the snapshot can now be enabled with gn arg 'v8_enable_snapshot_code_comments' Bug: v8:7989 Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3 Reviewed-on: https://chromium-review.googlesource.com/c/1329173 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#58020}
-
- 21 Nov, 2018 1 commit
-
-
Ross McIlroy authored
Moves allocation of the WasmModuleObject for asm.js code out of SyncCompileTranslatedAsmJS since that is called when we are compiling the native context independent SharedFunctionInfo and the WasmModuleObject requires a native context. Instead save the members required to create the object in the AsmWasmData and create it during module instantiation. Note: since the Wasm module is an implementation detail for asm_wasm code and isn't exposed, this doeesn't have semantic change for asm.js code. As part of this change, the AsmWasmData is changed from a FixedArray to a dedicated struct. Some logic is also moved from module-compiler to wasm-engine to make the seperation between Wasm SyncCompile and AsmJS SyncCompile more clear. BUG=chromium:900535,v8:8395 Change-Id: Ia48469c095b0688f210aa86e7430c9ab4ea4b26b Reviewed-on: https://chromium-review.googlesource.com/c/1345509 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57704}
-
- 15 Nov, 2018 1 commit
-
-
Clemens Hammacher authored
We often need to create a {Vector} view of data owned by a container like {std::vector}. The canonical way to do this is this: Vector<T>{vec.data(), vec.size()} This pattern is repeating information which can be deduced automatically, like the type T. This CL introduces a {VectorOf} helper which can construct a {Vector} for any container providing a {data()} and {size()} accessor, and uses it to replace the pattern above. R=ishell@chromium.org Bug: v8:8238 Change-Id: Ib3a11662acc82cb83f2b4afd07ba88e579d71dba Reviewed-on: https://chromium-review.googlesource.com/c/1337584Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#57538}
-
- 14 Nov, 2018 1 commit
-
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: Idb11b07df72f2d9d1c606d04af701cb4e9853664 Reviewed-on: https://chromium-review.googlesource.com/c/1335549Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57494}
-
- 23 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
Instead, create it when needed and pass it down to the actual compilation. This saves memory by making the WasmCompilationUnit smaller and will eventually allow us to implement the trap handler fallback correctly by using an updated ModuleEnv in background compilation and tier up. R=mstarzinger@chromium.org Bug: v8:5277, v8:8343 Change-Id: I0dc3a37fb88e54eb4822dc99d58ff024f4b2a367 Reviewed-on: https://chromium-review.googlesource.com/c/1293953 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#56896}
-
- 19 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
Previously, this was just a field on the WasmResult, which is not allowed according to the style guide. A special r-value accessor for the value is needed for the cases where the contained type is not copyable, e.g. unique_ptr. R=titzer@chromium.org Bug: v8:8238 Change-Id: Ia3c14c4c62c3c2e07f1dc4594f1bc9d1da88f91e Reviewed-on: https://chromium-review.googlesource.com/c/1290974 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56823}
-
- 11 Oct, 2018 1 commit
-
-
Igor Sheludko authored
... containing RootsTable, ExternalReferenceTable, builtins array and potentially some other data that can be accessed via the RootRegister. This is a preliminary step before adding support for pointer-compression friendly heap layout. Bug: v8:8182 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I2899f657aaff1351a5304afa0b1a4c5ae4cfc31d Reviewed-on: https://chromium-review.googlesource.com/c/1245426Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#56551}
-
- 05 Oct, 2018 1 commit
-
-
Bill Budge authored
- Exposes IsSupportedVersion function which compares serialized version to current Wasm version. - Tweaks the comments on serialization to match the code. Bug: chromium:719172 Change-Id: I76df9605aee16fd98cd82b54dba2e9acbd56b41b Reviewed-on: https://chromium-review.googlesource.com/c/1265141Reviewed-by: Ben Smith <binji@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#56420}
-
- 21 Sep, 2018 1 commit
-
-
Florian Sattler authored
Fixing clang-tidy warning. Replace 0 with nullptr. Add NOLINT for special cases. Add default/override to methods. Bug: v8:8015 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Iff483356ace471d816051c6dd06ca08809ae1c09 Reviewed-on: https://chromium-review.googlesource.com/1238333Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Florian Sattler <sattlerf@google.com> Cr-Commit-Position: refs/heads/master@{#56129}
-
- 13 Sep, 2018 1 commit
-
-
Aseem Garg authored
This CL enables source maps support for wasm. Devtools should be able to pick up source_mapping_url parsed here and load the corresponding source maps. R=kozyatinskiy@chromium.org,clemensh@chromium.org,titzer@chromium.org,yangguo@chromium.org BUG=v8:8081 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I1db0ff597d229e7db8d383fe9ee081c7fa4e7648 Reviewed-on: https://chromium-review.googlesource.com/1185973 Commit-Queue: Aseem Garg <aseemgarg@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#55878}
-
- 29 Aug, 2018 1 commit
-
-
Ben L. Titzer authored
This CL makes the names of tracing flags related to WASM consistent with the rest of V8 tracing flags. R=ahaas@chromium.org Change-Id: I871fb7b5e27ff7b8f587e08507d15c0719881990 Reviewed-on: https://chromium-review.googlesource.com/1193182 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55479}
-
- 23 Aug, 2018 1 commit
-
-
Bill Budge authored
Change-Id: I0870a13fd257e014a3b6dca8ee7ccb3aa5485066 Reviewed-on: https://chromium-review.googlesource.com/1183525Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#55359}
-
- 09 Aug, 2018 1 commit
-
-
Ben L. Titzer authored
This CL introduces a set of configuration options implemented as a struct of booleans that together comprise the set of enabled or detected features. The configuration options replace command-line flags that were checked deep in the implementation. As such, it is necessary to plumb them through multiple levels of abstraction. R=ahaas@chromium.org CC=mstarzinger@chromium.org BUG=chromium:868844 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I1b82f5826e4fd263f68e8cafcd923bac5818a637 Reviewed-on: https://chromium-review.googlesource.com/1163670Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55018}
-
- 07 Aug, 2018 1 commit
-
-
Sigurd Schneider authored
The instruction size in bytes is now kInstrSize on all platforms. Bug: v8:6666 Change-Id: I2f9880a6a74199a439c8327a4117efb74240aa22 Reviewed-on: https://chromium-review.googlesource.com/1164955 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54944}
-
- 02 Aug, 2018 1 commit
-
-
Ben L. Titzer authored
The wasm/ directory is inconsistent in many places, often within the same file. For all code that exists in a v8::internal::wasm namespace, this CL removes any wasm:: qualifiers, which is especially helpful since most types are already Wasm-named, such as WasmCode, WasmModule, etc. Namespace qualifiers are redundant inside the wasm:: namespace and thus go against the main point of using namespaces. Removing the qualifiers for non Wasm-named classes also makes the code somewhat more future-proof, should we move some things that are not really WASM-specific (such as ErrorThrower and Decoder) into a higher namespace. R=clemensh@chromium.org,mstarzinger@chromium.org Change-Id: Ibff3e1e93c64c12dcb53c46c03d1bfb2fb0b7586 Reviewed-on: https://chromium-review.googlesource.com/1160232 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54862}
-
- 01 Aug, 2018 1 commit
-
-
Michael Starzinger authored
This changes the WebAssembly serializer to take a full snapshot of the code table before measuring and serializing the module. It allows other threads (or other Isolates) to mutate the native module while the main thread is serializing the module. R=clemensh@chromium.org BUG=v8:7424 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I64bc27600452880f37f4fbb2f40c77c79975358f Reviewed-on: https://chromium-review.googlesource.com/1156596 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54838}
-
- 24 Jul, 2018 1 commit
-
-
Michael Starzinger authored
R=ahaas@chromium.org Change-Id: I7c6fd17f36d33451ce7605e74002515295c7ad1c Reviewed-on: https://chromium-review.googlesource.com/1145195Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54629}
-
- 05 Jul, 2018 1 commit
-
-
Michael Starzinger authored
R=clemensh@chromium.org Change-Id: I4fb79b1b694c89f348dba71dae0ad68e82b614dc Reviewed-on: https://chromium-review.googlesource.com/1127051 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54267}
-
- 02 Jul, 2018 2 commits
-
-
Michael Starzinger authored
This correctly serializes {RelocInfo::INTERNAL_REFERENCE} addresses in a position-independent form, so that they can be properly relocated when the code is deserialized again. We store the offset within the code in the serialized stream. R=clemensh@chromium.org TEST=mjsunit/wasm/compiled-module-serialization BUG=chromium:857049 Change-Id: Ie8c84ee67bdfc17a65faa159a21cc1f2a78ac924 Reviewed-on: https://chromium-review.googlesource.com/1122414Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54140}
-
Michael Starzinger authored
This makes sure the reverse tag translation of direct call targets to respective call tags is properly performed. Otherwise all direct call end up being deserialized to call the function with index '0'. Ooops! R=clemensh@chromium.org TEST=mjsunit/wasm/compiled-module-serialization BUG=chromium:857049 Change-Id: I37c1ee72b000daec87efdeed08d60a067b1a1b0c Reviewed-on: https://chromium-review.googlesource.com/1120256Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54124}
-