-
Notifications
You must be signed in to change notification settings - Fork 12.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Verifier error if unwinding used in same module as _Unwind_Resume definition with debug info #57469
Comments
@llvm/issue-subscribers-debuginfo |
What's the right way to fix this? Inlining is clearly not relevant at this point in the pipeline, so should the call just get assigned some kind of dummy debug loc? |
I think you're correct, a dummy debug loc is the solution, by creating a DILocation in the functions scope with line number zero. There's precedent here: llvm-project/llvm/lib/CodeGen/SafeStack.cpp Line 788 in 9e6d1f4
|
Candidate patch: https://reviews.llvm.org/D133095 |
/cherry-pick 5134bd4 |
/branch llvm/llvm-project-release-prs/issue57469 |
…ume calls (PR57469) DwarfEhPrepare inserts calls to _Unwind_Resume into landing pads. If _Unwind_Resume happens to be defined in the same module and debug info is used, then this leads to a verifier error: inlinable function call in a function with debug info must have a !dbg location call void @_Unwind_Resume(ptr %exn.obj) #0 Fix this by assigning a dummy location to the call. (As this happens in the backend, inlining is not actually relevant here.) Fixes llvm/llvm-project#57469. Differential Revision: https://reviews.llvm.org/D133095 (cherry picked from commit 5134bd4)
/pull-request llvm/llvm-project-release-prs#141 |
…ume calls (PR57469) DwarfEhPrepare inserts calls to _Unwind_Resume into landing pads. If _Unwind_Resume happens to be defined in the same module and debug info is used, then this leads to a verifier error: inlinable function call in a function with debug info must have a !dbg location call void @_Unwind_Resume(ptr %exn.obj) #0 Fix this by assigning a dummy location to the call. (As this happens in the backend, inlining is not actually relevant here.) Fixes llvm#57469. Differential Revision: https://reviews.llvm.org/D133095 (cherry picked from commit 5134bd4)
…ume calls (PR57469) DwarfEhPrepare inserts calls to _Unwind_Resume into landing pads. If _Unwind_Resume happens to be defined in the same module and debug info is used, then this leads to a verifier error: inlinable function call in a function with debug info must have a !dbg location call void @_Unwind_Resume(ptr %exn.obj) #0 Fix this by assigning a dummy location to the call. (As this happens in the backend, inlining is not actually relevant here.) Fixes llvm/llvm-project#57469. Differential Revision: https://reviews.llvm.org/D133095 (cherry picked from commit 5134bd4)
…ume calls (PR57469) DwarfEhPrepare inserts calls to _Unwind_Resume into landing pads. If _Unwind_Resume happens to be defined in the same module and debug info is used, then this leads to a verifier error: inlinable function call in a function with debug info must have a !dbg location call void @_Unwind_Resume(ptr %exn.obj) #0 Fix this by assigning a dummy location to the call. (As this happens in the backend, inlining is not actually relevant here.) Fixes llvm/llvm-project#57469. Differential Revision: https://reviews.llvm.org/D133095 (cherry picked from commit 5134bd432f8c35c87f4c4dc3bb744d396adcab58)
…d_Resume calls Similar to the fix for llvm#57469, ensure that the other `_Unwind_Resume` call emitted by DwarfEHPrepare has a debug location if needed. This fixes nbdd0121/unwinding#34.
…d_Resume calls (#105513) Similar to the fix for #57469, ensure that the other `_Unwind_Resume` call emitted by DwarfEHPrepare has a debug location if needed. This fixes nbdd0121/unwinding#34.
…d_Resume calls (llvm#105513) Similar to the fix for llvm#57469, ensure that the other `_Unwind_Resume` call emitted by DwarfEHPrepare has a debug location if needed. This fixes nbdd0121/unwinding#34. (cherry picked from commit e76db25)
…d_Resume calls (llvm#105513) Similar to the fix for llvm#57469, ensure that the other `_Unwind_Resume` call emitted by DwarfEHPrepare has a debug location if needed. This fixes nbdd0121/unwinding#34.
…d_Resume calls (llvm#105513) Similar to the fix for llvm#57469, ensure that the other `_Unwind_Resume` call emitted by DwarfEHPrepare has a debug location if needed. This fixes nbdd0121/unwinding#34. (cherry picked from commit e76db25)
…d_Resume calls (llvm#105513) Similar to the fix for llvm#57469, ensure that the other `_Unwind_Resume` call emitted by DwarfEHPrepare has a debug location if needed. This fixes nbdd0121/unwinding#34.
Results in the following verifier error for the inserted
_Unwind_Resume
call:The text was updated successfully, but these errors were encountered: