[llvm] [InstCombine] Swap out range metadata to range attribute for cttz/ctlz/ctpop (PR #88776)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 15 19:20:46 PDT 2024


================
@@ -450,6 +452,10 @@ void Instruction::dropPoisonGeneratingFlags() {
     cast<TruncInst>(this)->setHasNoUnsignedWrap(false);
     cast<TruncInst>(this)->setHasNoSignedWrap(false);
     break;
+
+  case Instruction::Call:
+  case Instruction::Invoke:
+    cast<CallBase>(this)->removeRetAttr(Attribute::Range);
----------------
nikic wrote:

In hasPoisonGeneratingFlags you can explicitly fetch the AttributeList of the call and do the check there.

https://github.com/llvm/llvm-project/pull/88776


More information about the llvm-commits mailing list