[llvm] ed0074b - [X86] freeze-binary.ll - tweak freeze_mul_nsw test to avoid mul by pow-2

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Sun Aug 14 05:36:17 PDT 2022


Author: Simon Pilgrim
Date: 2022-08-14T13:35:56+01:00
New Revision: ed0074bd8624c507871f56f2e6ab0886759bd150

URL: https://github.com/llvm/llvm-project/commit/ed0074bd8624c507871f56f2e6ab0886759bd150
DIFF: https://github.com/llvm/llvm-project/commit/ed0074bd8624c507871f56f2e6ab0886759bd150.diff

LOG: [X86] freeze-binary.ll - tweak freeze_mul_nsw test to avoid mul by pow-2

Enabling freeze(shl()) -> shl(freeze()) was affecting this test

Added: 
    

Modified: 
    llvm/test/CodeGen/X86/freeze-binary.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/X86/freeze-binary.ll b/llvm/test/CodeGen/X86/freeze-binary.ll
index 8ed94b482959..9f83976cfe79 100644
--- a/llvm/test/CodeGen/X86/freeze-binary.ll
+++ b/llvm/test/CodeGen/X86/freeze-binary.ll
@@ -272,19 +272,19 @@ define i32 @freeze_mul_nsw(i32 %a0) nounwind {
 ; X86-LABEL: freeze_mul_nsw:
 ; X86:       # %bb.0:
 ; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
-; X86-NEXT:    addl %eax, %eax
-; X86-NEXT:    shll $2, %eax
+; X86-NEXT:    leal (%eax,%eax,2), %eax
+; X86-NEXT:    leal (%eax,%eax,4), %eax
 ; X86-NEXT:    retl
 ;
 ; X64-LABEL: freeze_mul_nsw:
 ; X64:       # %bb.0:
 ; X64-NEXT:    # kill: def $edi killed $edi def $rdi
-; X64-NEXT:    leal (%rdi,%rdi), %eax
-; X64-NEXT:    shll $2, %eax
+; X64-NEXT:    leal (%rdi,%rdi,2), %eax
+; X64-NEXT:    leal (%rax,%rax,4), %eax
 ; X64-NEXT:    retq
-  %x = mul nsw i32 %a0, 2
+  %x = mul nsw i32 %a0, 3
   %y = freeze i32 %x
-  %z = mul i32 %y, 4
+  %z = mul i32 %y, 5
   ret i32 %z
 }
 


        


More information about the llvm-commits mailing list