[llvm] [X86] Use RORX over SHR imm (PR #77964)
Phoebe Wang via llvm-commits
llvm-commits at lists.llvm.org
Sat Jan 13 18:08:01 PST 2024
================
@@ -891,6 +911,64 @@ let Predicates = [HasBMI2] in {
(RORX32ri GR32:$src, (ROT32L2R_imm8 imm:$shamt))>;
def : Pat<(rotl GR64:$src, (i8 imm:$shamt)),
(RORX64ri GR64:$src, (ROT64L2R_imm8 imm:$shamt))>;
+
+ // A right shift by less than a smaller register size that is then
+ // truncated to that register size can be replaced by RORX to
+ // preserve flags with the same execution cost
----------------
phoebewang wrote:
Add `.` in the end.
https://github.com/llvm/llvm-project/pull/77964
More information about the llvm-commits
mailing list