-
Notifications
You must be signed in to change notification settings - Fork 15.3k
[Assignment Tracking] Change placeholder from undef to poison
#119760
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
Conversation
Empty metadata address components of `dbg.assign` can be represented as `poison` values instead of `undef` values.
|
@llvm/pr-subscribers-debuginfo @llvm/pr-subscribers-llvm-ir Author: Pedro Lobo (pedroclobo) ChangesEmpty metadata address components of Full diff: https://github.com/llvm/llvm-project/pull/119760.diff 1 Files Affected:
diff --git a/llvm/lib/IR/IntrinsicInst.cpp b/llvm/lib/IR/IntrinsicInst.cpp
index 002bab8e079e50..79795e5691f865 100644
--- a/llvm/lib/IR/IntrinsicInst.cpp
+++ b/llvm/lib/IR/IntrinsicInst.cpp
@@ -223,12 +223,12 @@ void DbgAssignIntrinsic::setAddress(Value *V) {
void DbgAssignIntrinsic::setKillAddress() {
if (isKillAddress())
return;
- setAddress(UndefValue::get(getAddress()->getType()));
+ setAddress(PoisonValue::get(getAddress()->getType()));
}
bool DbgAssignIntrinsic::isKillAddress() const {
Value *Addr = getAddress();
- return !Addr || isa<UndefValue>(Addr);
+ return !Addr || isa<PoisonValue>(Addr);
}
void DbgAssignIntrinsic::setValue(Value *V) {
|
|
cc @nunoplopes |
`undef` should continue to be used here to ensure compatibility with older IR.
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/162/builds/12486 Here is the relevant piece of the build log for the reference |
|
seems like a spurious failure; the build bot is green again. |
Empty metadata address components of
dbg.assigncan be represented aspoisonvalues instead ofundefvalues.