[PATCH] D141256: [DAGCombine]Don't check for Undef/Poison if the node is deleted

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 9 14:09:17 PST 2023


lebedev.ri requested changes to this revision.
lebedev.ri added a comment.
This revision now requires changes to proceed.

This isn't right, we'll no longer be sure that we dropped flags.
I think something like this should be closer to the truth:

  diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  index 78cbfe1356f7..a87415c3f5ed 100644
  --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  @@ -14289,6 +14289,7 @@ SDValue DAGCombiner::visitBUILD_PAIR(SDNode *N) {
   
   SDValue DAGCombiner::visitFREEZE(SDNode *N) {
     SDValue N0 = N->getOperand(0);
  +  HandleSDNode N0Handle(N0);
   
     if (DAG.isGuaranteedNotToBeUndefOrPoison(N0, /*PoisonOnly*/ false))
       return N0;


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D141256/new/

https://reviews.llvm.org/D141256



More information about the llvm-commits mailing list