entry:
; CHECK: foo:
; CHECK-NOT: movzwl
-; CHECK: movswl %ax, %eax
+; CHECK: movswl 4(%esp), %eax
; CHECK: xorl $21998, %eax
%0 = xor i16 %x, 21998
ret i16 %0
entry:
; CHECK: bar:
; CHECK-NOT: movzwl
-; CHECK: movswl %ax, %eax
+; CHECK: movswl 4(%esp), %eax
; CHECK: xorl $-10770, %eax
%0 = xor i16 %x, 54766
ret i16 %0
}
; CHECK: test2
; CHECK: movzbl
-; CHECK-NEXT: orl {{.*}}63
-; CHECK-NEXT: andl {{.*}}224
+; CHECK: orl $63
+; CHECK: andl $224
declare void @use(i32, i8)
ret void
}
; CHECK: test3
+; CHECK: movzbl 16(%esp), %eax
+; CHECK-NEXT: movl %eax, 4(%esp)
+; CHECK-NEXT: andl $224, %eax
+; CHECK-NEXT: movl %eax, (%esp)
+; CHECK-NEXT: call{{.*}}use