[llvm-dev] InstCombiner bug (original) (raw)
John Regehr via llvm-dev llvm-dev at lists.llvm.org
Tue Feb 4 09:29:12 PST 2020
- Previous message: [llvm-dev] InstCombiner bug
- Next message: [llvm-dev] Reporting source errors from MCCodeEmitter::encodeInstruction() ?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Looks definitely a bug, please report it, thanks!
John
On 2/4/20 10:09 AM, Rob Springer via llvm-dev wrote:
I believe there's a bug in InstCombiner::reassociateShiftAmtsOfTwoSameDirectionShifts(), illustrated by https://rise4fun.com/Alive/ne8y. I'll post a bug on the tracker as soon as I can get an account set up.
Short form: when identifying the two shifts to combine, it does so while ignoring any zero-extensions of those values. In this case, the values are both i1 zero-extended to i3s, so when taking their sum, SimplifyAddInst emits an xor, causing the shift to basically disappear. I could write more, but the Alive link is probably more concise. Let me know what you think / if there's some followup needed, etc. Thanks!
LLVM Developers mailing list llvm-dev at lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
- Previous message: [llvm-dev] InstCombiner bug
- Next message: [llvm-dev] Reporting source errors from MCCodeEmitter::encodeInstruction() ?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]