Skip to content

Conversation

@janvorli
Copy link
Member

Local labels in the JIT_ByRefWriteBarrier were not wrapped in the LOCAL_LABEL macro. That causes incorrect unwinding in case an access violation occurs inside of this function. The closest label before the failure point is considered to be the actual function, but it obviously doesn't have the right unwind info.

I have modified all local labels in the same .S file that way.

Close #89585

@janvorli janvorli added this to the 8.0.0 milestone Aug 22, 2023
@janvorli janvorli requested a review from jkotas August 22, 2023 23:47
@janvorli janvorli self-assigned this Aug 22, 2023
@jkotas
Copy link
Member

jkotas commented Aug 22, 2023

Conflict in issues.targets

Local labels in the JIT_ByRefWriteBarrier were not wrapped in the
LOCAL_LABEL macro. That causes incorrect unwinding in case an
access violation occurs inside of this function. The closest label
before the failure point is considered to be the actual function,
but it obviously doesn't have the right unwind info.

Close dotnet#89585
@janvorli janvorli force-pushed the fix-jit-byrefbarrier-unwinding branch from f8220b2 to f177ebd Compare August 22, 2023 23:57
@janvorli janvorli merged commit b765e78 into dotnet:main Aug 23, 2023
@jkotas
Copy link
Member

jkotas commented Aug 23, 2023

Is this 8.0 backport candidate?

@janvorli
Copy link
Member Author

/backport to release/8.0

@github-actions
Copy link
Contributor

@ghost ghost locked as resolved and limited conversation to collaborators Sep 23, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

JIT: Runtime_82535 crashes on osx x64

2 participants