[all-commits] [llvm/llvm-project] 285009: [NFC][DebugInfo] Rewrite more call-sites to insert...
Jeremy Morse via All-commits
all-commits at lists.llvm.org
Mon Jan 27 12:36:41 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 285009f202ca8bfcc6b607eba0e919867559e725
https://github.com/llvm/llvm-project/commit/285009f202ca8bfcc6b607eba0e919867559e725
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-01-27 (Mon, 27 Jan 2025)
Changed paths:
M clang/lib/CodeGen/CGObjCRuntime.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
Log Message:
-----------
[NFC][DebugInfo] Rewrite more call-sites to insert with iterators (#124288)
As part of the "RemoveDIs" work to eliminate debug intrinsics, we're
replacing methods that use Instruction*'s as positions with iterators. The
call-sites updated in this patch are those where the dyn_cast_or_null cast
utility doesn't compose well with iterator insertion. It can distinguish
between nullptr and a "present" (non-null) Instruction pointer, but not
between a legal and illegal instruction iterator. This can lead to
end-iterator dereferences and thus crashes.
We can improve this in the future (as parent-pointers can now be accessed
from ilist nodes), but for the moment, add explicit tests for end()
iterators at the five call sites affected by this.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list