From 3d1320464fd4f474d6ff98585613ebdde7844526 Mon Sep 17 00:00:00 2001 From: Andy Ayers Date: Tue, 8 Jun 2021 17:59:13 -0700 Subject: JIT: fix OSR reporting for special stack slots (#53897) Revise the reporting of the special stack slots for OSR to be more uniform. * Always record the original method FP-relative offset. * Always apply the same adjustment for original method slosts i the OSR frame * Handle caller-SP relative adjustment in `lvaToCallerSPRelativeOffset` In particular, this fixes #43534 where we were reporting the wrong caller SP for the profiler exit hook. --- src/coreclr/inc/patchpointinfo.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/coreclr/inc') diff --git a/src/coreclr/inc/patchpointinfo.h b/src/coreclr/inc/patchpointinfo.h index e01446beb42..1445d8f79bc 100644 --- a/src/coreclr/inc/patchpointinfo.h +++ b/src/coreclr/inc/patchpointinfo.h @@ -66,6 +66,11 @@ struct PatchpointInfo return m_genericContextArgOffset; } + bool HasGenericContextArgOffset() const + { + return m_genericContextArgOffset != -1; + } + void SetGenericContextArgOffset(int offset) { m_genericContextArgOffset = offset; -- cgit v1.2.3