v8/test
Jakob Linke 5d95bd39ca [maglev] Prevent lazy deopts during maglev's JumpLoop (=OSR)
The problem was that synchronous Maglev OSR potentially caused
code deoptimization during compilation dependency finalization; this
led to a lazy deopt when returning from the call to
Runtime_CompileOptimizedOSRFromMaglev. However, a lazy deopt is
disallowed at this point, since a) Maglev doesn't support marking an opcode as both lazy- and eager deopt, and b) the JumpLoop opcode
is already marked as eager deopt since that's how OSR is implemented
under the hood. See also the comment in runtime-compiler.cc.

We fix this by changing synchronous Maglev-to-Turbofan OSR
behavior s.t. actual OSR compilation is triggered from Ignition
(and not from Maglev). In other words, when synchronous OSR is
requested:

 1. trigger an eager deopt from Maglev to Ignition by returning a
    non-null code object from Runtime_CompileOptimizedOSRFromMaglev.
 2. Ignition handles the pending OSR compile request (through
    osr_urgency).

This CL also reverts previous partial fixes:

This reverts commit 21969e8e24.
This reverts commit 6bcbcfed5c.

Bug: chromium:1394279,v8:13585,v8:7700
Change-Id: I3d64aa39575ad806ba2623102092176ca160ef0b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4110740
Commit-Queue: Jakob Linke <jgruber@chromium.org>
Reviewed-by: Victor Gomes <victorgomes@chromium.org>
Cr-Commit-Position: refs/heads/main@{#84922}
2022-12-19 09:13:06 +00:00
..
benchmarks Microoptimizations in FastDtoa. 2022-12-16 15:03:39 +00:00
bigint [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
cctest [wasm] Add filter to NativeModule::RemoveCompiledCode 2022-12-18 16:44:01 +00:00
common [relaxed-simd] Fix ordering of relaxed FMA/FNMA operands 2022-12-16 19:12:44 +00:00
debugger Reland: "[wasm] Compile debug code lazily" 2022-12-15 14:59:13 +00:00
debugging [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
fuzzer [wasm] Do not validate asm.js code 2022-12-13 17:46:59 +00:00
fuzzilli [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
inspector [inspector] Improve description for Proxy objects. 2022-12-15 10:53:39 +00:00
intl [Intl] Impl LocaleInfo PR 63 2022-12-15 01:21:58 +00:00
js-perf-test [js-perf-test] Reduce input sizes for small BigInts 2022-10-06 14:23:53 +00:00
memory [snapshot] Fix the Memory.json benchmark 2021-04-28 07:54:34 +00:00
message Resolved an issue where an earlier error was not reported first in certain cases 2022-11-11 13:43:32 +00:00
mjsunit [maglev] Prevent lazy deopts during maglev's JumpLoop (=OSR) 2022-12-19 09:13:06 +00:00
mkgrokdump [heap] Rename safepoint scopes 2022-10-25 16:32:55 +00:00
mozilla [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
test262 [test262] Roll test262 2022-12-15 00:34:07 +00:00
torque Reland "Reland "[Torque] Generalize Torque literals to larger size"" 2022-02-04 09:40:24 +00:00
unittests [wasm] Move Int64Lowering to a later point 2022-12-16 16:17:36 +00:00
wasm-api-tests [heap] Enable conservative stack scanning on tests 2022-12-14 16:14:12 +00:00
wasm-js [wasm] Update spec tests 2022-12-16 13:05:33 +00:00
wasm-spec-tests [wasm] Update spec tests 2022-12-16 13:05:33 +00:00
webkit [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
BUILD.gn [test] Move cctest/interpreter to unittests 2022-06-10 08:37:10 +00:00
OWNERS