[llvm] [X86] LowerShift - track the number and location of constant shift elements. (PR #120270)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 17 13:32:20 PST 2024


RKSimon wrote:

Anything out of bounds on IR shift nodes is always undefined. For the IR representation the way to handle this is to use a mixture of umax to clamp a ashr shift amounts and ICMP/select to set out of bounds logical shift amounts. We then need to match these patterns when lowering to SSE instructions. 

https://github.com/llvm/llvm-project/pull/120270


More information about the llvm-commits mailing list