- 15 Oct, 2020 6 commits
-
-
Ng Zhi An authored
Prefixed opcodes have a 1 byte prefix, followed by LEB-encoded u32. This changes all prefixed opcodes (gc, numeric, atomic), to that. (Simd was already so.) We can clean up read_prefix_opcode to return the total number of bytes, 1 byte prefix + leb encoded, that will be in a future patch. Bug: v8:10810,v8:10994 Change-Id: Ia74604acc059c1336b87e9f477598732de219ca9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465057Reviewed-by:
Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70544}
-
Maya Lekova authored
This reverts commit 6227c95e. Reason for revert: Breaks Mac64 GC stress - https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8866365194967638384/+/steps/Check_-_d8/0/logs/call-ref/0 Original change's description: > [wasm-gc] Implement call_ref on WasmJSFunction > > Changes: > - Introduce turbofan builtin WasmAllocatePair. > - Implement call_ref for WasmJSFunction in wasm-compiler.cc. > - Remove WasmJSFunction trap. > - Improve and extend call-ref.js test. > > Bug: v8:9495 > Change-Id: I8b4d1ab70cbbe9ae37887a6241d409eec638fd28 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2463226 > Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70535} TBR=clemensb@chromium.org,manoskouk@chromium.org Change-Id: Ifad2cd8185df5e8d6766cefbcd3f28234a157dfb No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9495 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2475735Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#70539}
-
Manos Koukoutos authored
Changes: - Introduce turbofan builtin WasmAllocatePair. - Implement call_ref for WasmJSFunction in wasm-compiler.cc. - Remove WasmJSFunction trap. - Improve and extend call-ref.js test. Bug: v8:9495 Change-Id: I8b4d1ab70cbbe9ae37887a6241d409eec638fd28 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2463226 Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70535}
-
Victor Gomes authored
- Add a frame inheritance hierarchy comment. - Rename StandardFrame from frame.h to CommonFrame: StandardFrame usually means a JavaScript frame in other files. - Create a TypedFrame and adjust every frame that depends on it. Change-Id: I105a4ba95954c02e43bcbe2b677e554b9e9af092 Bug: v8:10933 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2431568 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70532}
-
Clemens Backes authored
... at function start. Otherwise we run into a position mismatch: In a non-flooded function, we add the function-entry breakpoint (for "hook on function call") with the position of the first opcode. In the flooded function though, we skip that special breakpoint because we will stop at the first instruction anyway. But then the first instruction is non-breakable, so we don't actually emit a breakpoint for it. Hence during OSR we do not find a corresponding position in the new code. This CL fixes this by postponing the function-entry breakpoint until the first breakable opcode is found, and only emits it if that position does not have a breakpoint anyway. This way, we can also move the handling for function-entry breakpoints from {StartFunctionBody} to {EmitDebuggingInfo}, where it fits much better. R=thibaudm@chromium.org Bug: chromium:1137710 Change-Id: Idfa658fa0897cca89ba5ee3066cd414f68864d06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2474774Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70529}
-
Zhao Jiazhong authored
dst may be the same register as src0/src1, so it shouldn't be overwritten if we still need src0 and src1's values. And the NaN was not properly canonicalized, this CL adds fmin/fmax instructions to canonicalize the result. Change-Id: Ia65829015eb6c4de160298719d694ca9490883b7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465775Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#70519}
-
- 14 Oct, 2020 5 commits
-
-
Milad Fa authored
Due to a bug on AIX, some of the glibc FP functions do not preserve the sign bit when a negative input is passed by value and the output is rounded to 0: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97086 This CL forces the use of "-0.0" in such cases. Change-Id: If9935596e32e97720f3cb22f27975267ac1124d7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2468618Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#70512}
-
Clemens Backes authored
Instead of querying the platform for the number of available threads, and allocating exactly N+1 queues, do grow the number of queues dynamically. This allows for more than N+1 concurrent threads, which then allows us to contribute to compilation instead of waiting doing nothing. This will be added in a follow-up CL. Special care is being taken to not synchronize too much between threads. We take a shared mutex whenever stealing tasks, but not on the default path where we pick a unit from the task's own queue. R=thibaudm@chromium.org CC=etiennep@chromium.org Bug: v8:11005 Change-Id: I1f67f15fb22b95ef246c37eb80c03132d8a1d149 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux_gc_stress_dbg_ng Cq-Include-Trybots: luci.v8.try:v8_mac64_gc_stress_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2467844 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#70508}
-
Vicky Kontoura authored
This CL adds a basic tiering strategy for the js-to-wasm wrappers. When applicable, calls to exported WebAssembly functions are initially handled through the generic js-to-wasm wrapper. If these calls through the generic wrapper reach a constant threshold, the specific (per-signature) wrapper is compiled synchronously for the function and the generic wrapper is replaced. Bug: v8:10982 Change-Id: I65e706daffb5cb6e723ce2f7b785f7ecb7b2fa7b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461243 Commit-Queue: Vicky Kontoura <vkont@google.com> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#70503}
-
Victor Gomes authored
Change-Id: I2f262f4545de9e421310094d0dfab2f6147869b5 Bug: v8:10201 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2466116Reviewed-by:
Junliang Yan <junyan@redhat.com> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/master@{#70502}
-
Clemens Backes authored
With boolean validation, we don't keep the PC for stack values any more. This CL fixes the --trace-wasm-decoding logic to just not print the opcode which produced a value. The producer can also be found by looking back in the trace. This also makes the tracing output a lot more concise, hence easier to read. Also fix the TraceFailed method to not try to print buffer relative offsets if no PC is there. R=zhin@chromium.org Bug: v8:10969 Change-Id: I5a7a69ea5aa461a277401d87ee24635266517d3c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465837Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70501}
-
- 13 Oct, 2020 7 commits
-
-
Victor Gomes authored
Change-Id: If9ab58bf671567f7a035a03b3e4e772ba302b522 Bug: v8:10201 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2467843 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#70487}
-
Clemens Backes authored
Whenever more then one value is pushed to the stack, we need to execute a check for growing the stack first (since https://crrev.com/c/2431525). This CL adds two missing checks. R=thibaudm@chromium.org Bug: chromium:1137582 Change-Id: I9755502dfdb77c03d1dde3e83fb7d33b9b99e499 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2467796 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#70480}
-
Thibaud Michaud authored
The call to "GetSpilledRegistersForInspection" was invalidated by the call to "GetUnusedRegister" a few lines below. R=clemensb@chromium.org Bug: v8:10957 Change-Id: I1e0110d9b28ca23a2a8b9ff4b4c39143bfbe5510 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2466118 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70478}
-
Clemens Backes authored
The index to be traced can be a full (platform-dependent) pointer sized integer now. This CL prepares memory tracing for that. As a drive-by, the "address" field is renamed to "offset", or "effective_offset", depending on the situation. R=manoskouk@chromium.org Bug: v8:10949 Change-Id: I1fabfdb57835f041e1310a4eb4024d6254c08752 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465825Reviewed-by:
Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70477}
-
Andreas Haas authored
Rename the flag --liftoff-extern-ref to --experimental-liftoff-extern-ref to keep the fuzzer from using it. The implementation is not complete yet, and the next steps may take a bit. R=clemensb@chromium.org Bug: chromium:1137601 Change-Id: I74f1ed8faba44e42f63790d87f4a538dd59ac852 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465838Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#70476}
-
Clemens Backes authored
We now remember whether the memory was 64 bit, in in this case force the index value to be an i64 instead of an i32. This is only the decoding part of this change. TurboFan and Liftoff will have to be fixed separately to handle the i64 values correctly. R=manoskouk@chromium.org Bug: v8:10949 Change-Id: Ia504e7eb5a2a55caf8dfdbd0833481ef590c55bf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461239 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70473}
-
mathetake authored
CreateFrameFromInternal always creates StackFrame from the frame at the index zero, which is fine for the usage in Trap::origin, but is a bug for Trap::trace Change-Id: Ia9471f600c5165ffc1c165b2f114b40acbe5b1e9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465353 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#70465}
-
- 12 Oct, 2020 6 commits
-
-
Ng Zhi An authored
These are still not in proposal, so they should be behind the post-mvp flag. Bug: v8:10972 Change-Id: I1b53307f334ddd8e21a095c13d7f7abb8ce05203 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2465654 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70463}
-
Ng Zhi An authored
This implements i8x16.popcnt on arm64 and interpreter. Bug: v8:11002 Change-Id: Ia94a053d7e0a0c800057ac80865ba6f86ac7caf8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2461058Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70461}
-
Ng Zhi An authored
Implement on interpreter and x64. Bug: v8:10997 Change-Id: I3537ce54e1b56cc3b04d91cb07c430c35b88c3aa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2459109 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#70459}
-
Ng Zhi An authored
This flag allows you to filter printing Wasm code to one particular function index. Bug: v8:10791 Change-Id: I400ccaadb8330e5e31e2faefdeddb169cdc85f71 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2459259 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70457}
-
Ng Zhi An authored
Load lane loads a value from memory and replaces a single lane of a simd value. This implements the load (no stores yet) for x64 and interpreter. Bug: v8:10975 Change-Id: I95d1b5e781ee9adaec23dda749e514f2485eda10 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2444578 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70456}
-
Ng Zhi An authored
These instructions are not in the proposal, and will be unlikely to be requested (poor performance, insufficient use cases). As we get more instruction suggestions, these are sitting around on useful opcodes and we have to play musical chairs every time we prototype a new instruction. Bug: v8:10933 Change-Id: Ic7ce4e514c343d821f76b8c071e41f9bddfbd1ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2457669Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70455}
-
- 09 Oct, 2020 4 commits
-
-
Samuel Groß authored
This change tags pointers in the external pointer table with a type dependent value in order to prevent type confusions between different external pointers. Bug: v8:10391 Change-Id: I5a83178e5ac46d49a99c91047816926120d801d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2443133Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Samuel Groß <saelo@google.com> Cr-Commit-Position: refs/heads/master@{#70430}
-
Clemens Backes authored
Always install the Abort builtin first, because heap validation might get triggered while we compile the wasm-to-js wrapper, and it would find an illegal WasmJSFunctionData object otherwise. TBR=manoskouk@chromium.org Bug: v8:9495 Change-Id: I959eb3b6e9944db8b7ad7ecd0a51eefdab98c751 No-Tree-Checks: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2463230Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70426}
-
Manos Koukoutos authored
Changes: - Add wasm-to-js wrapper field to WasmJSFunction. A WasmJSFunction might be called with call_ref without being imported to a module, and this provides a call target for this scenario. The wrapper is only compiled if --experimental-wasm-typed-funcref is set. - Add CompileWasmToJSWrapper in wasm-compiler. - Rename BuildLoadFunctionDataFromExportedFunction -> BuildLoadFunctionDataFromJSFunction to reflect its wider usage. - Rename BuildWasmImportCallWrapper -> BuildWasmToJsWrapper to reflect this function is now also used by CompileWasmToJSWrapper (unrelated to imports). - (Drive-by) Remove dead arguments from wasm-module-builder.js. Bug: v8:9495 Change-Id: I23468b69d42310cb8e96da5286ce68c701188876 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2459371Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70421}
-
Etienne Pierre-doray authored
This is a reland of 84eec6e9 Original change's description: > [wasm] Use NumOutstandingCompilations() in BackgroundCompileJob:GetMaxConcurrency() > > This simplifies current_compile_job_ since ScheduleCompileJobForNewUnits > is only called on the main thread. > > From pinpoint: > v8:wasm:sync_instantiate:wall_time: 19.1% improvement > v8-gc-incremental-step: 20.5% improvement > https://pinpoint-dot-chromeperf.appspot.com/job/152920d8520000 > > Change-Id: Id560080937f5439cf3321ce9306c7cae49e74798 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2442383 > Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70386} Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng Change-Id: Ic989b64f130a00ce52228cdd2f57f4c1ade354f2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2458147 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70418}
-
- 08 Oct, 2020 5 commits
-
-
Clemens Backes authored
It turns out that most LEBs are rather small (especially when used for locals). This CL adds a fast path for single-byte LEBs which is supposed to be inlined into callers. The more expensive slow path is then explicitly outlined to avoid excessive binary size growth. R=thibaudm@chromium.org Change-Id: I0dcdf597b9be3055acc2b878b6bee3fa21839758 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449974 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#70408}
-
Clemens Backes authored
Remove one "mode" of LEB decoding by eliminating the {AdvancePCFlag}, and doing the PC advance in the caller instead. The returned length is now always zero in case of an error, thus remove the respective checks from the unit tests. The returned length does not really matter if we ran into an error. R=thibaudm@chromium.org Change-Id: Ibfd94dd981cefa2fc24c7af560c85afd1c826f2c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449972Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70404}
-
Clemens Backes authored
Found some more direct calls to {Decoder::error} which should be wrapped in {DecodeError} to do some less work in boolean validation mode. R=thibaudm@chromium.org Bug: v8:10969 Change-Id: I5f7b5553a0c0cc2123904380625d50f25ea1ffc2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456686Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70401}
-
Ng Zhi An authored
Prototype these 4 instructions: - i64x2.widen_low_i32x4_s - i64x2.widen_high_i32x4_s - i64x2.widen_low_i32x4_u - i64x2.widen_high_i32x4_u Bug: v8:10972 Change-Id: I3cc3bfdd6dfd0f0bab1dfef63399ed9fa68bd2d2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2441369Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70395}
-
Ng Zhi An authored
The immediates would have been checked by the validation, so we can skip masking them. Bug: v8:10696 Change-Id: I18e4746b1eb08a2436311a633341be0c88f52139 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2453456 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70394}
-
- 07 Oct, 2020 5 commits
-
-
Ng Zhi An authored
The existing macro assembler define Pinsrb, which expects 3 arguments: - XMMRegister dst - Register/Operand src - uint8_t imm which overwrites dst with src at lane specified by imm. That means we cannot use the AVX version, which has 4 arguments, and does not overwrite dst. This refactoring defines the 4 argument AVX version instead, and if AVX is not supported, fall back to the SSE version, and ensure that the value is copied over into dst first. For convenience, we define an overload with 3 arguments that duplicates dst, this replicates the SSE behavior, so that not all callers have to be updated. Bug: v8:10975, v8:10933 Change-Id: I6f9b9d37fa08d3f5cff4f040ae7d5e1f0cf36455 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2444096 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70392}
-
Clemens Backes authored
This reverts commit 84eec6e9. Reason for revert: TSan issues (lock order inversion): https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20TSAN%20-%20isolates/11658 Original change's description: > [wasm] Use NumOutstandingCompilations() in BackgroundCompileJob:GetMaxConcurrency() > > This simplifies current_compile_job_ since ScheduleCompileJobForNewUnits > is only called on the main thread. > > From pinpoint: > v8:wasm:sync_instantiate:wall_time: 19.1% improvement > v8-gc-incremental-step: 20.5% improvement > https://pinpoint-dot-chromeperf.appspot.com/job/152920d8520000 > > Change-Id: Id560080937f5439cf3321ce9306c7cae49e74798 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2442383 > Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70386} TBR=clemensb@chromium.org,etiennep@chromium.org Change-Id: Iaa7df7fbfc56fcc7bf8400671f13210a1984885f No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2456768Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70388}
-
Etienne Pierre-doray authored
This simplifies current_compile_job_ since ScheduleCompileJobForNewUnits is only called on the main thread. From pinpoint: v8:wasm:sync_instantiate:wall_time: 19.1% improvement v8-gc-incremental-step: 20.5% improvement https://pinpoint-dot-chromeperf.appspot.com/job/152920d8520000 Change-Id: Id560080937f5439cf3321ce9306c7cae49e74798 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2442383 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70386}
-
Jakob Kummerow authored
This is a "minimal" change to achieve the required goal: seeing that there is only one place where we need to indicate that memory should be reserved with MAP_JIT, we can add a value to the Permissions enum instead of adding a second, orthogonal parameter. That way we avoid changing public API functions, which makes this CL easier to undo once we have platform-independent w^x in Wasm. Bug: chromium:1117591 Change-Id: I6333d69ab29d5900c689f08dcc892a5f1c1159b8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2435365 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70379}
-
Clemens Backes authored
Methods defined within a class declaration are always inline by default, hence remove the redundant annotations. R=thibaudm@chromium.org Change-Id: I08e86996bad9596936220da849cdfaec5fffe1f9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2449970Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#70368}
-
- 06 Oct, 2020 2 commits
-
-
Ng Zhi An authored
Only implemented and tested on arm64 and interpreter. Moved a helper function (Clamp, renamed to Saturate) into src/utils to be able to reuse this in interpreter and tests. Bug: v8:10971 Change-Id: Iaffcd36d27e0e8ab11e167befa96eef8e59f1c81 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2438990Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70360}
-
Michael Achenbach authored
This reverts commit b88e7d21. Reason for revert: Speculative revert for: https://ci.chromium.org/p/v8/builders/ci/V8%20Blink%20Linux/7243 Original change's description: > [wasm] Share export wrappers across modules > > Add a map in {IsolateInfo} to share export wrappers across modules. Each > entry is a weak handle which uses the finalizer to remove itself from > the map after the last strong reference dies. > > R=clemensb@chromium.org > > Bug: chromium:862123 > Change-Id: I1f3a6af6aa4c4e42abfe587354ca14f9da916d91 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2448465 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70348} TBR=ulan@chromium.org,clemensb@chromium.org,thibaudm@chromium.org Change-Id: I5ccf4830301939b2b5d7a0d0d769ab9b90536619 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:862123 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2453730Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#70358}
-