Issue 71200
Summary LSR dropping nneg flag on zext in loop preheader
Labels new issue
Assignees
Reporter topperc
    When induction variables have been widened, the loop preheader often contains something like `%wide.trip.count = zext nneg %x`. If LSR changes the loop, the nneg attribute appears to get lost.

RISC-V now depends on the nneg flag to form ISD::SIGN_EXTEND in SelectionDAGBuilder instead of converting zext to sext in RISCVCodeGenPrepare::visitZExtInst so the loss of this flag hurts RISC-V.

I'll work on extracting a reproducer.

cc: @preames @nikic 
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to