Issue 149853
Summary [VectorCombine] Don't use Builder.Create* methods when replacing flags
Labels llvm::vectorcombine
Assignees
Reporter RKSimon
    As detailed here: https://github.com/llvm/llvm-project/pull/148350#discussion_r2217774107

> Since we use IRBuilder<InstSimplifyFolder> in VectorCombine, the result may point to an existing cast instruction instead of CastOp (NewOp). Therefore, it may propagate flags into an incorrect instruction. I recommend using CastInst::Create instead of Builder.CreateCast.

Technically we only need to update the instructions where we're replacing the flags, but probably we want to be consistent at least per-fold if not everywhere.

CC @rhyadav @dtcxzyw 
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to