2016-04-02 01:40:25 +08:00
|
|
|
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
2017-05-10 23:52:59 +08:00
|
|
|
; RUN: llc < %s -mtriple=i386-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X86
|
|
|
|
; RUN: llc < %s -mtriple=x86_64-unknown -mattr=+sse2 | FileCheck %s --check-prefix=X64
|
2016-04-02 01:40:25 +08:00
|
|
|
|
2008-05-08 06:59:08 +08:00
|
|
|
define <2 x i64> @test1() nounwind {
|
2017-05-10 23:52:59 +08:00
|
|
|
; X86-LABEL: test1:
|
2017-12-05 01:18:51 +08:00
|
|
|
; X86: # %bb.0:
|
2017-05-10 23:52:59 +08:00
|
|
|
; X86-NEXT: movl $1, %eax
|
|
|
|
; X86-NEXT: movd %eax, %xmm0
|
|
|
|
; X86-NEXT: retl
|
|
|
|
;
|
|
|
|
; X64-LABEL: test1:
|
2017-12-05 01:18:51 +08:00
|
|
|
; X64: # %bb.0:
|
2017-05-10 23:52:59 +08:00
|
|
|
; X64-NEXT: movl $1, %eax
|
|
|
|
; X64-NEXT: movq %rax, %xmm0
|
|
|
|
; X64-NEXT: retq
|
2016-04-02 01:40:25 +08:00
|
|
|
ret <2 x i64> < i64 1, i64 0 >
|
Implement a readme entry, compiling
#include <xmmintrin.h>
__m128i doload64(short x) {return _mm_set_epi16(0,0,0,0,0,0,0,1);}
into:
movl $1, %eax
movd %eax, %xmm0
ret
instead of a constant pool load.
llvm-svn: 48063
2008-03-09 09:05:04 +08:00
|
|
|
}
|
|
|
|
|