- 06 Nov, 2019 28 commits
-
-
Milad Farazmand authored
Port b6edadc0 R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I3d4ea2be5f97688022733a36d36f9f86499b962d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1901124Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64817}
-
Clemens Backes authored
For now, both are implemented via a C call, just like i32_rol and i32_ror. If they turn out to be critical for performance, we can still implement them via hardware instructions on selected platforms. R=jkummerow@chromium.org Bug: v8:9919 Change-Id: I16affdfe397a08ef6a51d310f018b3a099e80e44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900454 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#64816}
-
Michael Starzinger authored
R=clemensb@chromium.org Change-Id: I8dea48c688e827c9793f266a77781faee2c6a415 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900461Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64815}
-
Jakob Gruber authored
Now that builtins are embedded into the binary unconditionally, GC visitation can be reduced. The interpreter dispatch table points directly at embedded instruction starts. It is initialized once in Isolate::Init, and its contents are immutable afterwards. Visitation by GC is not needed. Drive-by: Remove outdated comment on IsWasmRuntimeStub. Bug: v8:7873 Change-Id: I14edc0beebb31c04f1429346b57ade9e8d838670 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899773Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64814}
-
Hans Wennborg authored
The separate download scripts for extra packages are going away and have been replaced by update.py's new --package flag. Bug: chromium:884608 Change-Id: I28f2f83a629a3fcda4a5524c10f9b10dd115e616 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900462 Commit-Queue: Hans Wennborg <hans@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64813}
-
Michael Starzinger authored
The test coverage in question is by now provided by a different set of mjsunit tests, namely the "mjsunit/wasm/anyref-globals-interpreter" suite which run all globals tests in --wasm-interpret-all mode. R=ahaas@chromium.org TEST=cctest/test-run-wasm-interpreter/ReferenceTypeLocals Change-Id: I439b1ee74da3c36995bb3d5819e35d4074400868 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1901266Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64812}
-
Santiago Aboy Solanes authored
There is at least one case where a Load output flows into an In32LessThanOrEqual node without any bitcasts or truncations in the middle. We have to consider these cases in the reducer. Bug: v8:7703 Change-Id: I1ed9c41e80c0603fd287d096c3050c5ae27c2b3e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1879945 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64811}
-
Michael Achenbach authored
NOTRY=true Bug: v8:9946 Change-Id: If5b5470709edeaa13f7dea4ca83948e28356f352 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1901268Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64810}
-
Michael Starzinger authored
R=clemensb@chromium.org TEST=cctest/test-disasm-x64/DisasmX64 Change-Id: I011d0d5e25c472c5a62ad73edd42165e55b34e2b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900460Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64809}
-
Igor Sheludko authored
No-Tree-Checks: true No-Try: true Change-Id: Ic756f1716a9667f10970e35992db5399ed54cacc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1901267 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64808}
-
Georg Neis authored
Turbofan's instruction scheduling is currently only enabled for mksnapshot and has thus little test coverage. This CL introduces two new test variants, "instruction_scheduling" and "stress_instruction_scheduling", and activates them on a selection of bots. Change-Id: I5917fc781e289377c58f584c770c91e31765b2de Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899778 Auto-Submit: Georg Neis <neis@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#64807}
-
Santiago Aboy Solanes authored
Previously we were only blocking verify_stub_graph and not FLAG_turbo_verify_machine_graph. This led to failures when FLAG_turbo_verify_machine_graph was active (e.g when it was set to "*"). Change-Id: I27b53f0bc1b544498d1d182903301347e5669013 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1893339Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64806}
-
Michael Starzinger authored
R=clemensb@chromium.org TEST=cctest/test-api-wasm Change-Id: I4f3c7e215304bd9b89bb7fd21cda06fa3a18abac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900458Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64805}
-
Georg Neis authored
Bug: v8:9946 Change-Id: Ia7bde900a72d94e397ce0e19504a472a5c63f248 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900453Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Auto-Submit: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#64804}
-
Igor Sheludko authored
No-Tree-Checks: true No-Try: true Change-Id: Ibf9af30908eac161827b77052582c5c8a86ce401 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900463Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#64803}
-
Santiago Aboy Solanes authored
Phis act as proxys: a phi's input has only 32 bits observed iff the phi's output has only 32 bits observed. When the Tagged Phi has only 32 bits observed, the Phi's MachineRepresentation changes to the Compressed counterpart. Also, update machine graph verifier so that Phis of Compressed accept Tagged inputs as well. Bug: v8:7703 Change-Id: I365d0b38f76edbaecbfea29f603abd2ce2224878 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1879943Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64802}
-
Simon Zünd authored
There already exists a optional boolean flag 'replMode' for the 'Runtime.evaluate' command. This CL ferries the flag from the inspector to DebugEvaluate::Global. The existing DebugEvaluate::GlobalREPL is removed in favor of a the REPLMOde enum to reduce code duplication. Bug: chromium:1018158 Change-Id: Iafb43a3015b6876a02ac0db6cdfcac2cfa388862 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1881149 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#64801}
-
Michael Achenbach authored
The file contains testing features only used in d8. This CL prepares deprecation and moves the logic into d8.cc. Bug: v8:9941 Change-Id: I71de4cfd41d8f9fa209f936744cb170856365a6e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899774Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64800}
-
Igor Sheludko authored
... in an uintptr friendly way. Drive-by-fix: 1) IsForceSlowPath() check is integrated into Cast<FastJSArray> 2) disable tests incompatible with --force-slow-path in "slow_path" variant Bug: v8:8906, v8:4153 Change-Id: I427f117073bc295120aa52fb3fe023ee04d58302 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899988 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#64799}
-
Dominik Inführ authored
CompactionSpace::SweepAndRetryAllocation was sweeping the space without clearing invalidated objects. CompactionSpace is only used during collections, mark-compact needs invalidated objects in swept memory to be removed. Bug: chromium:1020981 Change-Id: Ib5b0edcdd841257cf66af6de8b6a3bf785e5c813 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900452Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#64798}
-
Zhao Jiazhong authored
port e554dec4 [Liftoff] https://crrev.com/c/1893343 Original Commit Message: These are two of the remaining missing instructions from the MVP. This CL adds support to {LiftoffCompiler} and provides assembly implementations for ia32, x64, arm, and arm64. Change-Id: I9ebe177c4a8861c31f78af89d893cf9f2128b45b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1898832Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Auto-Submit: Zhao Jiazhong <kyslie3100@gmail.com> Cr-Commit-Position: refs/heads/master@{#64797}
-
Michael Starzinger authored
R=clemensb@chromium.org Change-Id: Idcbf3494849c1a359fab8ed72ad2a97626bf5212 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899781Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64796}
-
Mike Stanton authored
Currently, line number information is added to windows binaries as DWARF data. This prevents windows tools like DUMPBIN from working, as they don't expect to see DWARF segments. Any line number information should be in the CodeView (PDB) format. This work is deferred until later. Bug: v8:9944, v8:9910 Change-Id: I87c950d9aaa543c1eb3356310289e99266f1565e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900446Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#64795}
-
Victor Gomes authored
The bug is due to an unexpected opcode. To avoid similar issues in the future, we fallback to CheckContextExtensionSlowPath. This was the default behaviour before the CL (https://chromium-review.googlesource.com/c/v8/v8/+/1876051). Bug: chromium:1020983 Change-Id: Ia7f0f2986ec0008d1128ad3856efbb5d9e52dfc6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899989 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#64794}
-
Simon Zünd authored
Design doc: bit.ly/v8-repl-mode This CL adds a new REPL mode that can be used via DebugEvaluate::GlobalREPL. REPL mode only implements re-declaration of 'let' bindings at the moment. Example: REPL Input 1: let x = 21; REPL Input 2: let x = 42; This would normally throw a SyntaxError, but works in REPL mode. The implementation is done by: - Setting a 'repl mode' bit on {Script}, {ScopeInfo}, {ParseInfo} and script {Scope}. - Each global let declaration still gets a slot reserved in the respective {ScriptContext}. - When a new REPL mode {ScriptContext} is created, name clashes for let bindings are not reported as errors. - Declarations, loads and stores for global let in REPL mode are now "load/store global" instead of accessing their respective context slot directly. This causes a lookup in the ScriptContextTable where the found slot for each name is guaranteed to be the same (the first one). Bug: chromium:1004193, chromium:1018158 Change-Id: Ia6ab526b9f696400dbb8bfb611a4d43606119a47 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1876061 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#64793}
-
Liviu Rau authored
This reverts commit 5a7c5879. Reason for revert: The build time improved since we compile only the d8 target now and removed the packaging step from the v8 recipe. Original change's description: > Revert "Activate is_offcial_build option for perf builders" > > This reverts commit b3c6e1ac. > > Reason for revert: The build time incresed significantly. We want to investigate if we can reduce it by removing the 'packaging' step. > > Original change's description: > > Activate is_offcial_build option for perf builders > > > > Bug: v8:9898 > > Change-Id: I41e1fcb37755906e29e6937b805cfb3018e90438 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1888937 > > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > > Commit-Queue: Liviu Rau <liviurau@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#64640} > > TBR=machenbach@chromium.org,tmrts@chromium.org,liviurau@chromium.org > > Change-Id: Ifbae1d7aedbfb7e4f7622c5a2bec74bc2f06e7f6 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: v8:9898 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1890092 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Liviu Rau <liviurau@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64645} TBR=machenbach@chromium.org,tmrts@chromium.org,liviurau@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9898 Change-Id: I02ec32d0832059a2d85199ef3a1940194f7d266a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900450 Commit-Queue: Liviu Rau <liviurau@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64792}
-
Liviu Rau authored
NOTRY=true NOTREECHECKS=true NOPRESUBMIT=true Bug: v8:9925 Change-Id: Iad460c70937545dd5b982f63593e186de95d7df1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899624Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Liviu Rau <liviurau@chromium.org> Cr-Commit-Position: refs/heads/master@{#64791}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/3a13923..7e1e30f Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/70d4ef3..1944f6e Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/f6a2232..2150a69 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/35a0634..596e92a TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: I737a145eb557c9e8ec4ea87314e17d9d2252b8dd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900708Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#64790}
-
- 05 Nov, 2019 12 commits
-
-
Joshua Litt authored
This reverts commit 10883f56. Reason for revert: Causes bytecode mismatch Bug:chromium:1020538, chromium:1021457 Original change's description: > [hole-check-elimination] Simplest possible hole check elimination > > doc: https://docs.google.com/document/d/1Y9uF3hS2aUrwKU56vGxlvEs_IiGgmWSzau8097Y-XBM/edit > > Bug: v8:7427 > Change-Id: Iedd36c146cefff7e6687fdad48d263889c5c8347 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1778902 > Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63913} TBR=rmcilroy@chromium.org,leszeks@chromium.org,verwaest@chromium.org,joshualitt@chromium.org Bug: v8:7427 Change-Id: Ib4369a3560e929692585c4546435684deae5ee9b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899163 Commit-Queue: Joshua Litt <joshualitt@chromium.org> Reviewed-by: Joshua Litt <joshualitt@chromium.org> Cr-Commit-Position: refs/heads/master@{#64789}
-
Ng Zhi An authored
Bug: v8:9813 Change-Id: I716ed7c2802c38a4b4c8973db4e3bc50e16cec39 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872930Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64788}
-
Ng Zhi An authored
Bug: v8:9728 Change-Id: I6d8f096adc42a6d417f876d5805302b3bea3308b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1867381Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64787}
-
Milad Farazmand authored
Port 42e8c231 Original Commit Message: Especially on ia32 and x64, shifts with immediate generate much shorter and more efficient code. R=clemensb@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Iab474cdf6de91820e7f55ddd9a386efa03f03b6f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899423Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64786}
-
Joshua Litt authored
Implements TC39 String.prototype.replaceAll as a torque builtin per the https://github.com/tc39/proposal-string-replaceall proposal. Note: matchAll changes were already added to V8 in https://chromium-review.googlesource.com/c/v8/v8/+/1846067 Bug: v8:9801 Change-Id: Ib8158eb39c854202d04710d6f9c33dcdd93fad93 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1877054 Commit-Queue: Joshua Litt <joshualitt@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64785}
-
Peter Kvitek authored
The new APIs are: enableRuntimeCallStats disableRuntimeCallStats getRuntimeCallStats The RunTime Call Stats are collected per isolate. Change-Id: I7e520e2c866288aa9f9dc74f12572abedf0d3ac8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1881601 Commit-Queue: Peter Kvitek <kvitekp@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#64784}
-
Benedikt Meurer authored
This removes the feature that we log precise information about functions and scripts in "v8.compile", since it comes at a significant cost and is not going to be used anytime soon. If we ever decide that we need this, we will have to come up with a cheaper way of doing this. Fixed: v8:9874 Tbr: yangguo@chromium.org Bug: v8:8598, v8:9039, v8:9325, v8:9874 Change-Id: I3481570b6fda2a050f05d2ae84cf3e9245f67d52 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1898652Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#64783}
-
Lei Zhang authored
In backing-store.cc, define GetGuardedRegion(), which is only used on 64-bit, only when V8_TARGET_ARCH_64_BIT evals to true. Then add GetRegion(), which returns the appropriate region depending on whether guards are enabled or not, and use it to simplify the only caller to GetGuardedRegion(). Similarly, define |kFullGuardSize| as 64-bit only, and add GetReservationSize() to only access |kFullGuardSize| when appropriate on 64-bit platforms. Change-Id: Iefae7969a6138118d466a9d48e0ea62d94ff07f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899547 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#64782}
-
Dominik Inführ authored
At the end of scavenge, the GC iterates all pages to search for empty buckets and free them. With this CL the scavenger marks buckets (and their corresponding pages) that were empty to reduce work. After finishing scavenging the GC only needs to revisit those marked buckets. Unlike (minor) mark-compact, the scavenger can't directly free those buckets, since the evacuation and pointer updating-phases are not separated. Right now the pages are processed sequentially but this could be parallelized in a subsequent CL. Change-Id: I47ed8c0e952b06c5d960e39a6f38e745d5618656 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1889884 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#64781}
-
Clemens Backes authored
Especially on ia32 and x64, shifts with immediate generate much shorter and more efficient code. R=jkummerow@chromium.org Bug: v8:9919 Change-Id: I33acf287d5eb6fc5c4d39a295f410557348a4f19 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899770Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64780}
-
Clemens Backes authored
The {shrd} instruction was implemented with switched {src} and {dst} registers. The only users ({ShrPair} and {SarPair}) "fixed" this by passing switched registers again. This CL cleans this up, and adds some DCHECKs that are required for the logic in the pair-wise shifts to work correctly. Also, avoid an unneccessary shift by 0 on ia32. R=jkummerow@chromium.org Bug: v8:9919 Change-Id: I8ec31526f5adcea68f6f6ef7c8076ac2e5589a5f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899767Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64779}
-
Milad Farazmand authored
Port d710756a Original Commit Message: This is the last remaining missing instruction from the MVP. This CL adds support for ia32, x64, arm, and arm64. For CPUs which do not support the POPCNT instruction, there exists a fallback implementation in C. R=clemensb@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I8965f4312c5e8ac6510c754772ba3d60394dfc4a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1899908Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#64778}
-