1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc < %s -mtriple=i386-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X86
3 ; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X64
5 ; These should both generate something like this:
12 define <2 x i64> @test3(i64 %arg) nounwind {
15 ; X86-NEXT: movl $1234567, %eax # imm = 0x12D687
16 ; X86-NEXT: andl {{[0-9]+}}(%esp), %eax
17 ; X86-NEXT: movd %eax, %xmm0
22 ; X64-NEXT: andl $1234567, %edi # imm = 0x12D687
23 ; X64-NEXT: movd %edi, %xmm0
25 %A = and i64 %arg, 1234567
26 %B = insertelement <2 x i64> zeroinitializer, i64 %A, i32 0
30 define <2 x i64> @test2(i64 %arg) nounwind {
33 ; X86-NEXT: movl $1234567, %eax # imm = 0x12D687
34 ; X86-NEXT: andl {{[0-9]+}}(%esp), %eax
35 ; X86-NEXT: movd %eax, %xmm0
40 ; X64-NEXT: andl $1234567, %edi # imm = 0x12D687
41 ; X64-NEXT: movd %edi, %xmm0
43 %A = and i64 %arg, 1234567
44 %B = insertelement <2 x i64> undef, i64 %A, i32 0