[NativeAOT] Fix stack trace iteration over exceptions#105877
[NativeAOT] Fix stack trace iteration over exceptions#105877janvorli merged 7 commits intodotnet:mainfrom
Conversation
|
That would not work. |
|
/azp run runtime-nativeaot-outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Hmm, the test failures do look suspicious. I'll check it in detail when all the pipelines finish running. Cursory look at the source code suggests that we may need to remove this: runtime/src/coreclr/nativeaot/Runtime/StackFrameIterator.cpp Lines 814 to 817 in 3e572e9 |
|
/azp run runtime-nativeaot-outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
There are 6 test failures:
The AV in There's nothing in |
|
/azp run runtime-nativeaot-outerloop |
|
Azure Pipelines successfully started running 1 pipeline(s). |
janvorli
left a comment
There was a problem hiding this comment.
LGTM modulo a nit regarding the comment.
Fixes #101364
The test
b08944bon x86 in Release causes thebomb()method to be inlined. The stack trace iterator then incorrectly adjusts the pointer to the faulting instruction by-1which causes thetryblock not to be matched.On x64 the inlined generated code for the
bomb()method ended up beingOn x86 it is
Hence, for x64 the previous instruction to the faulting instruction was still in the
tryregion. On x86 that's not the case.