aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopPeel.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@sifive.com>2022-03-02 09:42:43 -0800
committerCraig Topper <craig.topper@sifive.com>2022-03-02 09:47:06 -0800
commita1f8349d770f7fc84e6109e6b398c42707506fd9 (patch)
tree65b85571a9d9222f201b43da90101d565fa3882c /llvm/lib/Transforms/Utils/LoopPeel.cpp
parentac93f95861268c058d3f3bffd447a594a793c6b3 (diff)
downloadllvm-a1f8349d770f7fc84e6109e6b398c42707506fd9.zip
llvm-a1f8349d770f7fc84e6109e6b398c42707506fd9.tar.gz
llvm-a1f8349d770f7fc84e6109e6b398c42707506fd9.tar.bz2
[RISCV] Don't combine ROTR ((GREV x, 24), 16)->(GREV x, 8) on RV64.
This miscompile was introduced in D119527. This was a special pattern for rotate+bswap on RV32. It doesn't work for RV64 since the rotate needs to be half the bitwidth. The equivalent pattern for RV64 is ROTR ((GREV x, 56), 32) so match that instead. This could be generalized further as noted in the new FIXME. Reviewed By: Chenbing.Zheng Differential Revision: https://reviews.llvm.org/D120686
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopPeel.cpp')
0 files changed, 0 insertions, 0 deletions