[llvm] [GlobalISel] Introduce `G_POISON` (PR #127825)

Mateusz Sokół via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 22 14:23:23 PDT 2025


================
@@ -2733,7 +2734,8 @@ void CombinerHelper::applyCombineTruncOfShift(
 bool CombinerHelper::matchAnyExplicitUseIsUndef(MachineInstr &MI) const {
   return any_of(MI.explicit_uses(), [this](const MachineOperand &MO) {
     return MO.isReg() &&
-           getOpcodeDef(TargetOpcode::G_IMPLICIT_DEF, MO.getReg(), MRI);
+           (getOpcodeDef(TargetOpcode::G_IMPLICIT_DEF, MO.getReg(), MRI) ||
+            getOpcodeDef(TargetOpcode::G_POISON, MO.getReg(), MRI));
----------------
mtsokol wrote:

Done! In the next patch I can come up with some helpers where `getOpcodeDef` accepts a set of opcodes.

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


More information about the llvm-commits mailing list