Skip to content

[Analysis] Remove getGuaranteedNonPoisonOps #127461

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

kazutakahirata
Copy link
Contributor

commit 0517772
Author: Philip Reames [email protected]
Date: Thu Dec 19 14:14:11 2024 -0800

  commit 0517772
  Author: Philip Reames <[email protected]>
  Date:   Thu Dec 19 14:14:11 2024 -0800
@llvmbot llvmbot added the llvm:analysis Includes value tracking, cost tables and constant folding label Feb 17, 2025
@llvmbot
Copy link
Member

llvmbot commented Feb 17, 2025

@llvm/pr-subscribers-llvm-analysis

Author: Kazu Hirata (kazutakahirata)

Changes

commit 0517772
Author: Philip Reames <[email protected]>
Date: Thu Dec 19 14:14:11 2024 -0800


Full diff: https://github.com/llvm/llvm-project/pull/127461.diff

2 Files Affected:

  • (modified) llvm/include/llvm/Analysis/ValueTracking.h (-5)
  • (modified) llvm/lib/Analysis/ValueTracking.cpp (-8)
diff --git a/llvm/include/llvm/Analysis/ValueTracking.h b/llvm/include/llvm/Analysis/ValueTracking.h
index 1b49f8a3e85b1..67f9f24c3b7a4 100644
--- a/llvm/include/llvm/Analysis/ValueTracking.h
+++ b/llvm/include/llvm/Analysis/ValueTracking.h
@@ -999,11 +999,6 @@ bool isGuaranteedToExecuteForEveryIteration(const Instruction *I,
 /// getGuaranteedNonPoisonOp.
 bool propagatesPoison(const Use &PoisonOp);
 
-/// Insert operands of I into Ops such that I will trigger undefined behavior
-/// if I is executed and that operand has a poison value.
-void getGuaranteedNonPoisonOps(const Instruction *I,
-                               SmallVectorImpl<const Value *> &Ops);
-
 /// Return true if the given instruction must trigger undefined behavior
 /// when I is executed with any operands which appear in KnownPoison holding
 /// a poison value at the point of execution.
diff --git a/llvm/lib/Analysis/ValueTracking.cpp b/llvm/lib/Analysis/ValueTracking.cpp
index e4454c42c7857..91a5f194db9dc 100644
--- a/llvm/lib/Analysis/ValueTracking.cpp
+++ b/llvm/lib/Analysis/ValueTracking.cpp
@@ -8193,14 +8193,6 @@ static bool handleGuaranteedNonPoisonOps(const Instruction *I,
   }
 }
 
-void llvm::getGuaranteedNonPoisonOps(const Instruction *I,
-                                     SmallVectorImpl<const Value *> &Operands) {
-  handleGuaranteedNonPoisonOps(I, [&](const Value *V) {
-    Operands.push_back(V);
-    return false;
-  });
-}
-
 bool llvm::mustTriggerUB(const Instruction *I,
                          const SmallPtrSetImpl<const Value *> &KnownPoison) {
   return handleGuaranteedNonPoisonOps(

@kazutakahirata kazutakahirata merged commit 6a30076 into llvm:main Feb 17, 2025
10 checks passed
@kazutakahirata kazutakahirata deleted the cleanup_001_remove_llvm_getGuaranteedNonPoisonOps branch February 17, 2025 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
llvm:analysis Includes value tracking, cost tables and constant folding
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants