- 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 28 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}
-
Toon Verwaest authored
Reland "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." This is a reland of 9e27d473 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} Change-Id: I05262fef66d852876b9bb2869339053629c9b51d Reviewed-on: https://chromium-review.googlesource.com/1102297Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#53751}
-
Leszek Swirski authored
Change-Id: I98c03061600c1a58e1fde5936c78a877508c2fb4 Reviewed-on: https://chromium-review.googlesource.com/1101695Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#53750}
-
Leszek Swirski authored
Under --print-all-exceptions, it's possible for the script Get(Line|Column)Number functions to trigger a GC. This is noted in the function, however there is a raw exception Object* which is live across these calls, and whose object could be moved by the GC. Now the pointer is reloaded from a handle to the exception object. Change-Id: I81a26aebfc983199edc97374242c898131d52934 Reviewed-on: https://chromium-review.googlesource.com/1101031 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53749}
-
Peter Marshall authored
Byte offset can be outside of Smi range and must be loaded as a Number rather than a Smi. Bug: chromium:852258 Change-Id: Ida6e07ba68a050d4f5a9f28500986cc67c619b4c Reviewed-on: https://chromium-review.googlesource.com/1100886Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#53748}
-
Leszek Swirski authored
Bug: v8:7786 Change-Id: I1e568ff6da02dfd92b24b8badd665096cf49a13a Reviewed-on: https://chromium-review.googlesource.com/1101321Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#53747}
-
Leszek Swirski authored
Add a separate GetIsolate implementation for Context and JSObjects so that we can continue using it on these context-specific types, while eventually removing HeapObject::GetIsolate(). Bug: v8:7786 Change-Id: I86c2e12c6878e060338cbd5c3bbe27dcf978e34b Reviewed-on: https://chromium-review.googlesource.com/1101320 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53746}
-
- 14 Jun, 2018 11 commits
-
-
Junliang Yan authored
Port 37bc0358 Original Commit Message: Lift the declaration of the heap allocation request list and the method which adds to the list up to AssemblerBase. R=titzer@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I31d63789c25ce70ee17c48fecb2051ac7a30fd92 Reviewed-on: https://chromium-review.googlesource.com/1101254Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#53745}
-
Alexei Filippov authored
Make the progress report aligned with the single pass over the heap. Change-Id: I6a63e7eee86719328daa588e5a0c53a668aca464 Reviewed-on: https://chromium-review.googlesource.com/1099863Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#53744}
-
Clemens Hammacher authored
Revert "[debugger] Rewrite the ScopeIterator/DebugEvaluate to use Scope rather than ScopeInfo for inner scopes." This reverts commit 9e27d473. Reason for revert: Fails MSan (use of uninitialized value): https://ci.chromium.org/buildbot/client.v8/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/21562 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: Ief87c1e79fa2ec40f52fd747ec4ebbacf0da798b No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1101377Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#53743}
-
Sigurd Schneider authored
Bug: v8:7783 Change-Id: Ieb29bcbd7400a84619aaf08ad86f8847e8bd78c3 Reviewed-on: https://chromium-review.googlesource.com/1101023 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#53742}
-
Toon Verwaest authored
[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}
-
Igor Sheludko authored
Bug: v8:5269, v8:7703 Change-Id: I3e1f8a7892192a06ce6a71563cc16a47c51f9d89 Reviewed-on: https://chromium-review.googlesource.com/1097487 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53740}
-
Sigurd Schneider authored
Bug: v8:7783 Change-Id: I0399d20c990e40b1a6dad8a7c12eb6fbce022d12 Reviewed-on: https://chromium-review.googlesource.com/1101028Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#53739}
-
Sigurd Schneider authored
Bug: v8:7783 Change-Id: I878e8dd8bcfb7b797515b44bbe4333a7d85e8cc4 Reviewed-on: https://chromium-review.googlesource.com/1101024Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#53738}
-
jgruber authored
The stack check instruction sequence is pattern-matched in instruction-selector-{ia32,x64}.cc and replaced with its own specialized opcode, for which we later generate an efficient stack check in a single instruction. But this pattern matching has never worked for CSA-generated code. The matcher expected LoadStackPointer in the right operand and the external reference load in the left operand. CSA generated exactly vice-versa. This CL does a few things; it 1. reverts the recent change to load the limit from smi roots: Revert "[csa] Load the stack limit from smi roots" This reverts commit 507c29c9. 2. tweaks the CSA instruction sequence to output what the matcher expects. 3. refactors stack check matching into a new StackCheckMatcher class. 4. typifies CSA::PerformStackCheck as a drive-by. Bug: v8:6666,v8:7844 Change-Id: I9bb879ac10bfe7187750c5f9e7834dc4accf28b5 Reviewed-on: https://chromium-review.googlesource.com/1099068Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53737}
-
Dominik Inführ authored
Use ItemParallelJob to walk ephemerons in parallel. Bug: chromium:844008 Change-Id: Iffc72422f7577458437764f42d13d3f2ee020758 Reviewed-on: https://chromium-review.googlesource.com/1100825 Commit-Queue: Dominik Inführ <dinfuehr@google.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#53736}
-
Georg Neis authored
Bug: v8:7790 Change-Id: I0508596370470068ee07bfd7e441a4e393266c11 Reviewed-on: https://chromium-review.googlesource.com/1099238Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#53735}
-