DescriptionFix unoptimized code calling a disabled code when --verify-on-transition is enabled.
Unoptimized code has a static call to optimized code.
Optimized code prologue goes to the OptimizeInvokedFunction runtime.
Callee schedule for background compilation and current code set the return entries return value.
Verify-on-transition triggers a safepoint, wherein the background compiler disables the old optimized code.
The OptimizedInvokedFunction stub calls through the disabled code.
FixCallersTarget see an unoptimized caller. BOOM
Similar problem without --verify-on-transition, except the safepoint comes from BackgroundCompiler::CompileOptimized.
Fixes #26927.
R=fschneider@google.com
Committed: https://github.com/dart-lang/sdk/commit/74e6376b5c602250083b168723374dac7027cdce
Patch Set 1 #Patch Set 2 : . #Patch Set 3 : dbc #
Messages
Total messages: 8 (3 generated)
|