diff --git a/llvm/lib/Transforms/Scalar/NewGVN.cpp b/llvm/lib/Transforms/Scalar/NewGVN.cpp --- a/llvm/lib/Transforms/Scalar/NewGVN.cpp +++ b/llvm/lib/Transforms/Scalar/NewGVN.cpp @@ -1606,7 +1606,8 @@ if (II->getIntrinsicID() == Intrinsic::ssa_copy) if (auto Res = performSymbolicPredicateInfoEvaluation(II)) return Res; - return ExprResult::some(createVariableOrConstant(ReturnedValue)); + return ExprResult::some( + createVariableOrConstant(lookupOperandLeader(ReturnedValue))); } }