- 18 May, 2020 12 commits
-
-
Thibaud Michaud authored
R=ahaas@chromium.org Bug: v8:10408 Change-Id: I1ca62c1cdf3025dcd0df7cdbe6735cc3491c48e1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201578 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67856}
-
Clemens Backes authored
We constantly fight against scrambled output with --print-wasm-code and other flags. Passing --single-threaded only partially mitigates this, because there could still be multiple isolates (e.g. Workers), and we sometimes failed to really execute in a single thread if that flag was set. Hence this CL solves the problem in a more fundamental way: Whenever a {StdoutStream} is constructed, it implicitly takes a global recursive mutex. The recursive mutex is needed because we still have some printing methods that don't take a stream as parameter, and instead create their own instance of {StdoutStream}, which should not crash of course. The overhead of taking a mutex should be acceptable, since output to stdout mostly happens if special tracing flags have been passed, and is slow anyway. This CL ensures that the {StdoutStream} is used at least for --print-code, --print-wasm-code, and --trace-turbo-graph. More flags can later be ported on demand. The {JSHeapBroker} class was modified to not contain a {StdoutStream}, but instead create one on demand. R=mlippautz@chromium.org, tebbi@chromium.org CC=ahaas@chromium.org Bug: v8:10506 Change-Id: Ib9cf8d76aa79553b4215bb7775e6d47a8179aafa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201767Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67855}
-
Jakob Kummerow authored
When the intention is to handle every case, *and* when we can be reasonably sure that no invalid enum values will occur (e.g. from reading untrusted data), then we shouldn't have a "default:" case in a switch statement so that the compiler will warn us when a case is missing. Bug: v8:10506 Change-Id: Iefdebd54802611e7ec3479afa3c4e6506f97a095 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204284 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#67854}
-
Ulan Degenbaev authored
This moves page post-processinng into NotifyOldGenerationExpansion and introduces a new CanExpandOldGenerationBackground. Bug: v8:10536 Change-Id: I54761226487434955f8a0dadf7c4dbb31c7955e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204283Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#67853}
-
Santiago Aboy Solanes authored
Bug: v8:10506 Change-Id: I171a587176f4a1a3c98d407e8b6a3b63bbf1ad6a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202993 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#67852}
-
Santiago Aboy Solanes authored
To do this: * Create specialized ParameterToTagged versions of Smi and IntPtT * Unify and generalize ExtractFixedArray Bug: v8:9708, v8:10506 Change-Id: Ic23c6f4bb250076f12d6e8622ebc0b4d4cbeaac8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202982Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#67851}
-
Jakob Gruber authored
This builtin essentially acts like InterpreterAssembler::Construct. It collects full feedback, then tail-calls either the array constructor or the construct builtin. For now, it is only used in generic lowering, if the --turbo-nci flag is passed. One of the next steps will be to measure performance impact of feedback collection. If minimal, we may want to enable it unconditionally in generic lowering. Bug: v8:8888 Change-Id: I8a460a2b5954c26fa72658045a8423c5eee6b611 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2198775 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67850}
-
Zhao Jiazhong authored
Port 0ba8b716 https://crrev.com/c/2202356 Port 67a337b5 https://crrev.com/c/2202718 Port 99e4ef48 https://crrev.com/c/2202722 Change-Id: I435c9859b9ef341682814bb989fe91ba8cae3d86 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2203896Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67849}
-
Clemens Backes authored
For debugging (either with --print-wasm-code, or inspecting the current code object in a debugger) it's helpful to also see the debug side table, if available. This CL adds print support for that, and uses it when printing wasm code, and after generating a new debug side table. R=thibaudm@chromium.org Bug: v8:10359 Change-Id: I700b6eacb80f015212115e91b94c513e88c04288 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202902 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#67848}
-
Manos Koukoutos authored
Also, change its 'locals' field to a ZoneVector. This is needed for 'let' as per [wasm-gc]. Bug: v8:7748 Change-Id: I9e6ca7f7e483b4bc13b64643107297be31af0e35 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202995 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67847}
-
Peter Marshall authored
Makes it clearer what this does. Added comments to explain it. Change-Id: I90b0686f8a607cea32c482591b924e9103f7f445 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2205693 Commit-Queue: Simon Zünd <szuend@chromium.org> Auto-Submit: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#67846}
-
Manos Koukoutos authored
Changes: Cleanup: - Make sure read_value_type has the same interface as other read_* functions, i.e., returns the decoded value and writes the consumed length into a pointer. - DecodeLocals is now an instance method. - DecodeLocals should fail when given a wrong number of locals. Add tests to catch that. - Fix a buggy test. Refactoring in preparation of introducing the 'let' instruction as per [wasm-gc]: - DecodeLocals does not consume any input and can start from any pc. - DecodeLocals gives the option of not appending the decoded locals to local_types_. - Separate locals initialization from signature. Bug: v8:7748 Change-Id: Iaaff87fdb9abe0ddd716484ea3fa87779d2d1a2f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202992 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67845}
-
- 15 May, 2020 28 commits
-
-
Milad Farazmand authored
Port 67a337b5 Original Commit Message: Implement for x64, ia32, arm64, and arm. R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I8b512992a3cc583f31f433db037fabf65714628a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204542Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#67844}
-
Zhi An Ng authored
This reverts commit edf90ee8. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Win32%20-%20debug%20builder/36129? Original change's description: > [wasm-simd][liftoff][ia32][x64] Implement i8x16 shr > > The code sequence is the same as TurboFan, only wrapped in a template to > share the implementation. > > Bug: v8:9909 > Change-Id: I9c1b37bbfafe91d1bd8edd7f9dafd86ff1c07623 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202723 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67842} TBR=clemensb@chromium.org,zhin@chromium.org Change-Id: I04b9993040fa8a1dd69a4fa892a35273682d3efa No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9909 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204550Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67843}
-
Ng Zhi An authored
The code sequence is the same as TurboFan, only wrapped in a template to share the implementation. Bug: v8:9909 Change-Id: I9c1b37bbfafe91d1bd8edd7f9dafd86ff1c07623 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202723 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67842}
-
Michael Lippautz authored
This allows embedding objects in each other and recursively trace through them. Bug: chromium:1056170 Change-Id: I4e4ae4c1669109c01003cb6b69797cf271a74033 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2198977Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#67841}
-
Ng Zhi An authored
Only for arm and arm64 now. The ia32 and x64 ones are more complicated and will be included in subsequent changes. Bug: v8:9909 Change-Id: I6597efbccd780e12234f8674e09e60bb3f803630 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202722 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67840}
-
Milad Farazmand authored
Port 0ba8b716 Original Commit Message: Implemented for x64, ia32, arm64, arm. R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I45caa3fbf643e3caa7b452383155fa32d3ca399e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204333Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#67839}
-
Jakob Kummerow authored
in function-body-decoder-impl.h. Bug: v8:10506 Change-Id: If31aa9e35cc34f6c1c191bd487b1b01727e01dc1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204204 Auto-Submit: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67838}
-
Andreas Haas authored
The --wasm-test-streaming flag enabled streaming compilation after a check that streaming compilation is not enabled if async compilation is not enabled. This caused a later check to trigger. With this CL streaming compilation does not get enabled by --wasm-test-streaming if async compilation is not enabled. R=clemensb@chromium.org Bug: chromium:1082990 Change-Id: Ibe12389beae6a3335d3c8b6039fcea450f25d281 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202985 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67837}
-
Ng Zhi An authored
Implement for x64, ia32, arm64, and arm. Bug: v8:9909 Change-Id: Ia9499b211e915f8763b4f593824099391dca7e1f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202718 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67836}
-
Ng Zhi An authored
Implemented for x64, ia32, arm64, arm. Bug: v8:9909 Change-Id: Ib1479525d44c29b2ba02de31d655da2cde21d9fc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202356 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67835}
-
Ng Zhi An authored
Implementation for arm64 and arm. Bug: v8:9909 Change-Id: Icbded4f6fddb19526ec3f646a3f4157fb94d3695 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2198358Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#67834}
-
Dan Elphick authored
Removes dead functions related to long removed SlotsBuffer class. Bug: v8:10506 Change-Id: I79d6e77d2305e19048b62e2bc584fe986affd111 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202908 Commit-Queue: Dan Elphick <delphick@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Dan Elphick <delphick@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#67833}
-
Bill Budge authored
- Ports FastFunctionPrototypeBind and FunctionPrototypeHasInstance to torque. Bug: v8:9891 Change-Id: Iaebaf3c6025907a1b7310c4e08200b4855c7ca6b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2188929 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#67832}
-
Dan Elphick authored
Splits out all of SemiSpace, NewSpaces and related classes into paged-spaces.h. Bug: v8:10473, v8:10506 Change-Id: I97ecceaf5df41263cc8ea75ff0018442bfeffa66 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202903 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#67831}
-
Almothana Athamneh authored
This CL splits the v8_linux64_msan_rel to an intitial buidler and a triggered builder with changing the name to a new format (master side). Bug: v8:10445 Change-Id: I42a975a30a5210c96acb27b18fc1ac7de7c0ecd1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202990Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Cr-Commit-Position: refs/heads/master@{#67830}
-
Marja Hölttä authored
Bug: v8:9808 Change-Id: Ia2d883e95d96d67f4b4860af1782735ac0aa6979 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2193075 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Auto-Submit: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#67829}
-
Tobias Tebbi authored
Bug: v8:7793 Change-Id: Ief280b44f4fe74e2b38fc649e4d61b5e4146234a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204097 Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#67828}
-
Dominik Inführ authored
Refactor Heap::FinalizeSweeping such that EnsureSweepingCompleted is executed in a safepoint. Bug: v8:10315 Change-Id: Iee09765ba5fd35e3e696b018bd616954d609ef72 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204098Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#67827}
-
Milad Farazmand authored
Also modified simd ExtractLane to use the input lane. Change-Id: Icc40226c1f3e001eb588e8c44570399c19582404 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2199643Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#67826}
-
Marja Hölttä authored
They're exposed via DevTools. - [[PromiseStatus]] → [[PromiseState]] - [[PromiseValue]] → [[PromiseResult]] - [[GeneratorStatus]] → [[GeneratorState]] Related CLs: - Chromium CL temporarily disabling affected tests: https://chromium-review.googlesource.com/c/chromium/src/+/2203201 - Chromium CL re-enabling affected tests: https://chromium-review.googlesource.com/c/chromium/src/+/2202900 Bug: v8:10506, v8:5416 Change-Id: Id12fb0f2ba2b453139a5d74afff9021108c15f08 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202984Reviewed-by: Simon Zünd <szuend@chromium.org> Reviewed-by: Mathias Bynens <mathias@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#67825}
-
Richard Stotz authored
Bug: v8:10520 Change-Id: Ief1c2565168529f618fe55feacccc66d8d05376a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2196351 Commit-Queue: Richard Stotz <rstz@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67824}
-
Georg Neis authored
GraphAssembler creates Phi nodes and creates additional inputs to them depending on how many jumps go there. If the typer decorator is active, it will type the Phi node at creation time. GraphAssembler was not aware of types (until recently it was not used while the graph is typed) and did not update the Phi type with each new input. This CL fixes that. Bug: chromium:1082704 Change-Id: Id94bcda752c7b3dc836eb2b6c6b55b1690185a09 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202978Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#67823}
-
Andreas Haas authored
This CL removes the default parameter of GetUnusedRegister to avoid bugs where the default parameter is used accidentially. With "{}" the default value of the parameter is easy to write, and also not much more difficult to read. R=clemensb@chromium.org Bug: v8:10506 Change-Id: I3debe5eb91578c82abdac81dc6c252435fdf30d6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202991Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#67822}
-
Ulan Degenbaev authored
This is a quick fix that guards the NotifyOldGenerationExpansion call, which is not thread-safe outside GC. Bug: v8:10536 Change-Id: Iff42fee24242c2e88e0c814ae41766e97181324a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2204037Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#67821}
-
Lutz Vahl authored
Change-Id: I29afdce160a883987495857dd44e14aa8e51e861 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201141Reviewed-by: Lutz Vahl <vahl@chromium.org> Reviewed-by: Michael Hablich <hablich@chromium.org> Reviewed-by: Liviu Rau <liviurau@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Lutz Vahl <vahl@chromium.org> Cr-Commit-Position: refs/heads/master@{#67820}
-
Zhao Jiazhong authored
Port 99a361ee https://crrev.com/c/2198456 Change-Id: I5a1b4085de9e41ce122eef12aaaeb3c3c038d27c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2203369Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#67819}
-
Michael Achenbach authored
NOTRY=true Change-Id: I3c6ee995634ebd16b9829ca75ae84203ac2c2f35 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202987 Auto-Submit: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#67818}
-
cjihrig authored
See: https://github.com/nodejs/node/pull/32831 Change-Id: I1e537bf9378156e8c309dbf4e2532257c98ec151 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2191056Reviewed-by: Joyee Cheung <joyee@igalia.com> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/master@{#67817}
-