- 18 Jun, 2018 17 commits
-
-
Clemens Hammacher authored
We currently have a system where the protected instructions are unregistered when the last instance dies, and registered again on the next instantiation. This is triggered by {WasmCompiledModule::Reset}. Since the reference to the {NativeModule} will move to the {WasmModuleObject}, and this object stays alive even if the last instance dies, this will become hard to maintain. It will also make it harder to share wasm code across isolates. This CL refactors this to register trap handler data once when the code is added to the {NativeModule}, and releases it if the code dies. R=mstarzinger@chromium.org CC=eholk@chromium.org Bug: v8:5277 Change-Id: I3f1b336095230b255f3849c271b37b62f2b96cd6 Reviewed-on: https://chromium-review.googlesource.com/1103567 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53791}
-
Sigurd Schneider authored
Bug: v8:7783 Change-Id: I3c6a229b5a1a30ea089ffeef920bf48b27bc86ab Reviewed-on: https://chromium-review.googlesource.com/1101030Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#53790}
-
Toon Verwaest authored
Don't expose GetFunction on the scope iterator. Simply take it into account for GetFunctionDebugName This is a step towards avoiding materializing function_ altogether if we deoptimize. Typically we only need the SharedFunctionInfo. Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Idee78f02d1afe3d2cb70e93a6d96a5a33907f892 Reviewed-on: https://chromium-review.googlesource.com/1100474 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53789}
-
Simon Zünd authored
R=cbruni@chromium.org, jgruber@chromium.org Bug: v8:7382 Change-Id: I45f2517afa8ecb3ddb1f77f845e9ce88f69d4eef Reviewed-on: https://chromium-review.googlesource.com/1092500Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@google.com> Cr-Commit-Position: refs/heads/master@{#53788}
-
Clemens Hammacher authored
It only has one call size ({CompileToModuleObject}), which just tail calls into {CompileToModuleObjectInternal}. Thus, merge the two. R=titzer@chromium.org Bug: v8:7754 Change-Id: I6344f257279f049fd6cab51114988f7e1c019272 Reviewed-on: https://chromium-review.googlesource.com/1104157Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53787}
-
Michael Starzinger authored
R=ishell@chromium.org Change-Id: I84288cc16297dbe33adddbdf08b689db95d0fc04 Reviewed-on: https://chromium-review.googlesource.com/1104164Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53786}
-
Clemens Hammacher authored
Instead of instantiating each function multiple times, just call out to a common function, passing the variadic number of arguments in an initializer list. R=tebbi@chromium.org Bug: v8:7754 Change-Id: Idb2d77cef7cf8e590de6aa3cea02c0e0773da45f Reviewed-on: https://chromium-review.googlesource.com/1101689 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53785}
-
Leszek Swirski authored
Return the raw Object* when accessing the constant pool of bytecode with the bytecode array accessor, to avoid needing an isolate there. If the returned value needs to be a handle, we create the handle later. Bug: v8:7786 Change-Id: Ifeac2a06f0383230bf7e9bfc1b751d9750ecfb51 Reviewed-on: https://chromium-review.googlesource.com/1102334 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53784}
-
Igor Sheludko authored
Bug: v8:7754 Change-Id: Ie8224f2cda1132f0ac8f5508b54c31a6164a944e Reviewed-on: https://chromium-review.googlesource.com/1104160Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#53783}
-
Michael Starzinger authored
By now we no longer emit calls with {RelocInfo::CODE_TARGET} as part of WebAssembly code. Hence the requirement to block sharing of code targets disappeared and the support can be dropped. R=jarin@chromium.org Change-Id: I6df026cd05769ddaa6ea8df5a7b17b62e8a7c373 Reviewed-on: https://chromium-review.googlesource.com/1100889Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53782}
-
Toon Verwaest authored
Reland "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." Change-Id: I0ad97057600d0a0f1dd4c71d5f8245dafb908154 Reviewed-on: https://chromium-review.googlesource.com/1103576Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#53781}
-
Simon Zünd authored
Current situation: When calling a macro with the wrong parameter types the error message will say "macro not found". This CL changes the message to "macro with parameter types not found" and lists possible candidates. R=tebbi@chromium.org Bug: v8:7793 Change-Id: I6724c4030cbbf4ca1af008b33797b2dd9d18808b Reviewed-on: https://chromium-review.googlesource.com/1101694 Commit-Queue: Simon Zünd <szuend@google.com> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53780}
-
Pierre Langlois authored
The FuzzAssemble* tests rely on two CSA functions which are relatively big. And with the --enable-slow-asserts flag they get so big that the register allocator's memory consumption becomes a problem. Let's just override this flag. Bug: v8:7819, v8:6848, v8:7842 Change-Id: I95db59b9c788aa665d04339892b2e0b5d92d9a89 Reviewed-on: https://chromium-review.googlesource.com/1093315Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#53779}
-
Simon Zünd authored
R=jgruber@chromium.org Bug: v8:7382 Change-Id: I5b92f46736d8c0ca8ef0f187ecaa1d58661a1c7f Reviewed-on: https://chromium-review.googlesource.com/1101690Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@google.com> Cr-Commit-Position: refs/heads/master@{#53778}
-
Matheus Marchini authored
R=yangguo@google.com Change-Id: Icb4825344991e5b2d15050e037064c60eeb9617e Reviewed-on: https://chromium-review.googlesource.com/1097578Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53777}
-
Clemens Hammacher authored
Since https://crrev.com/2951473002, there is only one reloc info for code targets, so there is no need for the special {kCodeTargetMask}. R=mstarzinger@chromium.org Bug: v8:7754 Change-Id: I1055108c0128c7de0f5cfefc5e90bbd9dc75522a Reviewed-on: https://chromium-review.googlesource.com/1098663Reviewed-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@{#53776}
-
Clemens Hammacher authored
This reverts commit 4363a693. Reason for revert: Seems to break layout tests: https://ci.chromium.org/buildbot/client.v8.fyi/V8-Blink%20Linux%2064/24146 Original change's description: > [inspector] fixed location of top level function return > > We should pass false as has_braces argument to create FunctionLiteral > for top level function. > > R=dgozman@chromium.org,bmeurer@chromium.org > TBR=bmeurer@chromium.org > > Bug: none > Change-Id: I397f31b562d32c71f3a12bfc9ceeed16c367aa80 > Reviewed-on: https://chromium-review.googlesource.com/1098018 > Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> > Reviewed-by: Dmitry Gozman <dgozman@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53769} TBR=dgozman@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: none Change-Id: I4495f6723daed63b7a38b0d3c3637724f6c2d484 Reviewed-on: https://chromium-review.googlesource.com/1104017Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53775}
-
- 16 Jun, 2018 1 commit
-
-
Kanghua Yu authored
The jump optimization maybe run Turbofan pipeline twice for each TF/CS builtins, and relies on the fact that the number of j/jmp instruction generated is always the same. This CL introduces a verification process to ensure that instruction sequence and virtual registers are always the same in two stages, before the final code generation phase. R=danno@chromium.org, jarin@chromium.org Bug: v8:7839 Change-Id: Id77e9bc80f54f79d7a845315e0b99e3f4b6a54fb Reviewed-on: https://chromium-review.googlesource.com/1100491 Commit-Queue: Kanghua Yu <kanghua.yu@intel.com> Reviewed-by: Daniel Clifford <danno@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53774}
-
- 15 Jun, 2018 22 commits
-
-
Sergiy Byelozyorov authored
TBR=sergiyb@chromium.org No-Try: true Bug: chromium:793687 Change-Id: Ia2dbc1f11f1852bcc89889e9bf6ea5ab6066f868 Reviewed-on: https://chromium-review.googlesource.com/1103197 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#53773}
-
Junliang Yan authored
Bug: v8:6020 Change-Id: If121d2813e81e11773c42c36893b63ff98fc0247 Reviewed-on: https://chromium-review.googlesource.com/1101840Reviewed-by: Aseem Garg <aseemgarg@chromium.org> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#53772}
-
Vasili Skurydzin authored
Change-Id: Icb92a52112f5e709c3cdbc6f1a5555674633cb89 Reviewed-on: https://chromium-review.googlesource.com/1093554 Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#53771}
-
jgruber authored
This reverts two commits: Introduce CodeAssembler::LoadRootsPointer 377803f8 [turbofan][x64] Reduce reg-to-reg moving instruction for LoadRootsRegister IR d4177d11 LoadRootsPointer was used by indirections for heap constants and external references from within CSA. Now that handling has moved to the macro-assembler, it can be removed. Bug: v8:6666 Change-Id: I868fe100e65a0a7a44ffc81674fa1ce79a56f7ed Reviewed-on: https://chromium-review.googlesource.com/1097080 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#53770}
-
Alexey Kozyatinskiy authored
We should pass false as has_braces argument to create FunctionLiteral for top level function. R=dgozman@chromium.org,bmeurer@chromium.org TBR=bmeurer@chromium.org Bug: none Change-Id: I397f31b562d32c71f3a12bfc9ceeed16c367aa80 Reviewed-on: https://chromium-review.googlesource.com/1098018 Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53769}
-
Kanghua Yu authored
This adds constant folding support for IntPtrEqual/Word{,32,64}{Equal,NotEqual} Change-Id: I3afe2b5284baf077f03805d2cf48be33282d7bec Reviewed-on: https://chromium-review.googlesource.com/1053162 Commit-Queue: Kanghua Yu <kanghua.yu@intel.com> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53768}
-
Sergiy Byelozyorov authored
R=clemensh@chromium.org No-Try: true Bug: v8:7775 Change-Id: I5f248b84bcb5467b7e53951dbd70c5af4614caf2 Reviewed-on: https://chromium-review.googlesource.com/1102512 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53767}
-
Daniel Clifford authored
Bug: chromium:852685 Change-Id: I0bb6cf433a5ea0a91d77048d3eef0d8077b8208e Reviewed-on: https://chromium-review.googlesource.com/1102433Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#53766}
-
Théotime Grohens authored
This CL moves the remaining runtime DataView getters to Torque, namely DataViewGetBigInt64/BigUint64, and removes the associated runtime code that is now unneeded. All of the DataView getters are now implemented in Torque, which brings a nice performance improvement over the former C++ builtin code. Change-Id: I35cf2eabce3c79cc0d3200e7f24dbe0c3e5c2804 Reviewed-on: https://chromium-review.googlesource.com/1092736 Commit-Queue: Théotime Grohens <theotime@google.com> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53765}
-
Clemens Hammacher authored
{LogWasmCodes} is independent of the runtime object, so it should be defined on the {NativeModule}. R=herhut@chromium.org Change-Id: I1202b18264ef0367004ba80e0030b057c633b62f Reviewed-on: https://chromium-review.googlesource.com/1102424Reviewed-by: Stephan Herhut <herhut@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53764}
-
Clemens Hammacher authored
We currently create a managed object holding a shared reference to the WasmModule, and pass this to the factory method for the WasmModuleObject. Instead, we can just create it inside that factory method, removing code duplication. R=herhut@chromium.org Change-Id: I3cea858ba445971dc8dbeb693061ef5684bc02da Reviewed-on: https://chromium-review.googlesource.com/1102336 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#53763}
-
Clemens Hammacher authored
Instead of just {Object}, this field can be typed as {Managed<wasm::Module>}. R=herhut@chromium.org Change-Id: Iad47f75ae823846394b6ad04e8829961e924f33d Reviewed-on: https://chromium-review.googlesource.com/1102333Reviewed-by: Stephan Herhut <herhut@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53762}
-
Dominik Inführ authored
Disable parallel ephemeron handling if single-threaded flag is set. Bug: chromium:844008 Change-Id: I96d3daae4a239a5326c6d3394f620697bad1780a Reviewed-on: https://chromium-review.googlesource.com/1102335Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@google.com> Cr-Commit-Position: refs/heads/master@{#53761}
-
Matheus Marchini authored
Change --perf-basic-prof-only-functions to also log builtin code creation events, otherwise InterpretedFunctions generated by --interpreted-frames-native-stack will be filtered out. R=yangguo@google.com Change-Id: Ib0623fca88e25c514473a43de56ebbbdcb146f97 Reviewed-on: https://chromium-review.googlesource.com/1100014Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53760}
-
Georg Neis authored
No longer access the heap directly, as policed by Disallow* scopes in JSContextSpecialization::Reduce. Bug: v8:7790 Change-Id: I40f1c500b04b96152421fd5de631747ba386bca1 Reviewed-on: https://chromium-review.googlesource.com/1101322 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53759}
-
Clemens Hammacher authored
R=ishell@chromium.org Bug: v8:7754 Change-Id: I122139207ef5be4d7cc9f2a7cbe2a89ea337f77f Reviewed-on: https://chromium-review.googlesource.com/1101324Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53758}
-
Peter Marshall authored
For kUpdateEntry and kRemoveEntry, the ArrayBuffer is no longer present on the current page. These are the two most common cases; kKeepEntry is only used for aborted old-page evacuation candidates. Currently we pay the cost of removing the entry from the array_buffers_ map, even though the page itself will be cleared (for new space) or only aborted evacuation candidates will be kept on the page (for old space). Change-Id: Ib442109d444973a72e378d9072206f404d1c5183 Reviewed-on: https://chromium-review.googlesource.com/1102332Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#53757}
-
Yang Guo authored
Revert "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." This reverts commit 9e27d473. Reason for revert: Layout Test failures: https://ci.chromium.org/buildbot/client.v8.fyi/V8-Blink%20Linux%2064/24123 Original change's description: > [debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes. > > This CL also bottlenecks all current scope handling in the ScopeIterator, and cleans up frame handling in debug-frames and the deoptimizer. > > Change-Id: I061922a356ce17794262f8d77d5d7c824558fc50 > Reviewed-on: https://chromium-review.googlesource.com/1095094 > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#53741} TBR=yangguo@chromium.org,jarin@chromium.org,neis@chromium.org,jgruber@chromium.org,verwaest@chromium.org Change-Id: I892856056258e3c68b36409b8b2d69e7686fc385 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1102377 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#53756}
-
Simon Zünd authored
This CL fixes a crash when a macro specialization has the wrong number of generic arguments. An error message is printed instead. R=tebbi@chromium.org Bug: v8:7793 Change-Id: I60a55f0452d4188d94640ccccd3f0271a493cb6e Reviewed-on: https://chromium-review.googlesource.com/1102318Reviewed-by: Daniel Clifford <danno@chromium.org> Commit-Queue: Simon Zünd <szuend@google.com> Cr-Commit-Position: refs/heads/master@{#53755}
-
Daniel Clifford authored
In the process: - Make it possible to add 'otherwise' labels to operators - operators can be defined by non-external macros Bug: v8:7793 Change-Id: Ia16ae7c95a4719703c80a927dee44c74b65c170b Reviewed-on: https://chromium-review.googlesource.com/1100826 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#53754}
-
Sergiy Byelozyorov authored
R=mathias@chromium.org Bug: v8:7775 Change-Id: I5a8d100969f47a1768be1ed8098535c0c66434a3 Reviewed-on: https://chromium-review.googlesource.com/1102322 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#53753}
-
Simon Zünd authored
R=jgruber@chromium.org Change-Id: I399dadfdd515bdb1e0f16e8f167f102773399d30 Reviewed-on: https://chromium-review.googlesource.com/1101685 Commit-Queue: Simon Zünd <szuend@google.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53752}
-