[llvm] [X86][DAGCombine] Avoid deleting temporary nodes in `getNegatedExpression` (PR #139029)
Yingwei Zheng via llvm-commits
llvm-commits at lists.llvm.org
Wed May 7 22:58:40 PDT 2025
================
@@ -54678,12 +54678,19 @@ SDValue X86TargetLowering::getNegatedExpression(SDValue Op, SelectionDAG &DAG,
if (!Flags.hasNoSignedZeros())
break;
+ // Because getCheaperNegatedExpression can delete nodes we need a handle to
+ // keep temporary nodes alive.
+ std::list<HandleSDNode> Handles;
----------------
dtcxzyw wrote:
`std::optional<HandleSDNode> Handles[3]` may be better.
https://github.com/llvm/llvm-project/pull/139029
More information about the llvm-commits
mailing list