v8/src
Simon Zünd af62c4f0e5 [sparkplug] Allow sparkplug->ignition deopt in func entry
Adapted from https://crrev.com/c/3862264.

Add a new teardown trampoline for the case where a Sparkplug function is
deoptimized during its function entry stack check. In these cases, the
stack is in an incomplete setup state, so instead of forwarding to
interpreter re-entry, we undo the partial stack setup and forward to
the standard interpreter entry.

R=leszeks@chromium.org

Bug: chromium:1246907, chromium:1357554
Change-Id: I0795b20cdc60d3ba28bc32cd55bdf82d72f83aac
Also-by: leszeks@chromium.org
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3865144
Commit-Queue: Simon Zünd <szuend@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#82811}
2022-08-30 09:56:47 +00:00
..
api [shared-struct] Use PersistentHandles to convey shared values 2022-08-29 19:44:47 +00:00
asmjs [wasm] Introduce separate limits for memory64 2022-07-26 10:36:11 +00:00
ast Make bitfields only as wide as necessary for enums 2022-08-01 15:09:04 +00:00
base Aix: Fix typo in __linux_malloc, __linux_realloc arguments 2022-08-30 07:30:48 +00:00
baseline Revert "Reland "[ptr-compr][x64][compiler] Support load map in compressed" 2022-08-24 11:51:00 +00:00
bigint Reland "Remove some unused includes" 2022-07-05 16:44:13 +00:00
builtins [sparkplug] Allow sparkplug->ignition deopt in func entry 2022-08-30 09:56:47 +00:00
codegen PPC/s390: [builtins][masm] Move hot flags to the beginning of IsolateData 2022-08-29 15:21:26 +00:00
common Reland^2 "[ext-code-space] Enable Code-less embedded builtins" 2022-08-30 05:38:57 +00:00
compiler [sandbox] Unsandboxify CodeEntryPoint 2022-08-29 13:12:36 +00:00
compiler-dispatcher [compiler] Park main thread while awaiting compile tasks 2022-08-10 21:43:52 +00:00
d8 [shared-struct] Use PersistentHandles to convey shared values 2022-08-29 19:44:47 +00:00
date Fix Date BiDi format 2022-07-11 17:19:43 +00:00
debug [sparkplug] Allow sparkplug->ignition deopt in func entry 2022-08-30 09:56:47 +00:00
deoptimizer [base] Unify wrappers for malloc and friends 2022-08-29 19:03:46 +00:00
diagnostics [sandbox] Remove a number of native allocations from WasmInstanceObject 2022-08-29 09:53:35 +00:00
execution [heap] Move Verify* methods out of the heap class 2022-08-30 09:22:27 +00:00
extensions [api, heap] Deprecate v8::EmbedderHeapTracer 2022-08-24 09:03:00 +00:00
flags [heap] Add --fast-forward-schedule and disable it for experimenting 2022-08-30 06:55:08 +00:00
handles [shared-struct] Use PersistentHandles to convey shared values 2022-08-29 19:44:47 +00:00
heap [heap] Move Verify* methods out of the heap class 2022-08-30 09:22:27 +00:00
ic [runtime] return when failed access callback doesn't throw 2022-07-06 14:01:36 +00:00
init [change-array-by-copy] Implement Array.prototype.toSorted 2022-08-16 14:11:53 +00:00
inspector [api, heap] Deprecate v8::EmbedderHeapTracer 2022-08-24 09:03:00 +00:00
interpreter [Interpreter]Elide redundant load context bytecode 2022-08-23 07:20:36 +00:00
json [heap] Invoke internal GC callbacks before Heap verification 2022-08-17 09:00:28 +00:00
libplatform [libplatform] Spawn more tasks from DefaultJobState::Join 2022-08-03 14:59:28 +00:00
libsampler Reland "[riscv32] Add RISCV32 backend" 2022-08-04 12:47:44 +00:00
logging [maglev] Re-enable maglev code on the FBV 2022-08-26 13:53:57 +00:00
maglev [maglev] Fix colouring empty verticals 2022-08-29 15:18:15 +00:00
numbers [bigint] Fix object literal property keys like 0x0n 2022-05-20 11:21:15 +00:00
objects [heap] Move Verify* methods out of the heap class 2022-08-30 09:22:27 +00:00
parsing [heap] Invoke internal GC callbacks before Heap verification 2022-08-17 09:00:28 +00:00
profiler [heap] Move Verify* methods out of the heap class 2022-08-30 09:22:27 +00:00
protobuf
regexp Introduce Fixed{U}Int{8,16,32,64}Array types 2022-08-24 08:39:41 +00:00
roots Reland "Move some string allocation functions from Factory to FactoryBase" 2022-08-10 11:20:34 +00:00
runtime [wasm] Use v8_flags for accessing flag values 2022-08-29 12:43:46 +00:00
sandbox [sandbox] Fail with OOM when external pointer table can't be grown 2022-08-29 14:03:55 +00:00
sanitizer
snapshot [heap] Move Verify* methods out of the heap class 2022-08-30 09:22:27 +00:00
strings [cleanup] Cleanup StringStream::PrintFunction() 2022-07-21 12:48:19 +00:00
tasks Remove some unused includes (3) 2022-07-07 09:42:31 +00:00
temporal Revert "[Temporal] Use double/int32_t instead of int64_t for duration parsing" 2022-08-26 22:44:17 +00:00
third_party Fix vtunejit issues 2022-07-27 13:02:17 +00:00
torque [torque] Print bitfield source positions 2022-08-16 08:25:17 +00:00
tracing [v8] Fix data race in TRACE_EVENT macros. 2022-06-07 00:19:05 +00:00
trap-handler Fix atomic initialization to work with C++20. 2022-05-10 15:43:25 +00:00
utils [base] Unify wrappers for malloc and friends 2022-08-29 19:03:46 +00:00
wasm PPC/s390: [wasm] Keep call_indirect index on the stack 2022-08-29 17:42:36 +00:00
web-snapshot [web snapshot] Support BigInt 2022-08-10 13:15:15 +00:00
zone [maglev] Extend lifetimes of values used in a loop 2022-07-28 14:55:15 +00:00
DEPS [heap] Move Verify* methods out of the heap class 2022-08-30 09:22:27 +00:00
DIR_METADATA
OWNERS