blob: 2b383fc964298335b4732c6038dee8b18b62785c [file] [log] [blame] [edit]
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5
; RUN: llc < %s -mtriple=i386-unknown-unknown -mattr=+sse -O3 | FileCheck %s --check-prefixes=X86
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=-sse2,+sse -O3 | FileCheck %s --check-prefixes=X64-SSE1
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+sse2,+sse -O3 | FileCheck %s --check-prefixes=X64-SSE2
define void @store_v2f32_constant(ptr %v) {
; X86-LABEL: store_v2f32_constant:
; X86: # %bb.0:
; X86-NEXT: movl {{[0-9]+}}(%esp), %eax
; X86-NEXT: movaps {{.*#+}} xmm0 = [2.56E+2,5.12E+2,u,u]
; X86-NEXT: movlps %xmm0, (%eax)
; X86-NEXT: retl
;
; X64-SSE1-LABEL: store_v2f32_constant:
; X64-SSE1: # %bb.0:
; X64-SSE1-NEXT: movaps {{.*#+}} xmm0 = [2.56E+2,5.12E+2,u,u]
; X64-SSE1-NEXT: movlps %xmm0, (%rdi)
; X64-SSE1-NEXT: retq
;
; X64-SSE2-LABEL: store_v2f32_constant:
; X64-SSE2: # %bb.0:
; X64-SSE2-NEXT: movsd {{.*#+}} xmm0 = [2.56E+2,5.12E+2,0.0E+0,0.0E+0]
; X64-SSE2-NEXT: movsd %xmm0, (%rdi)
; X64-SSE2-NEXT: retq
store <2 x float> <float 2.560000e+02, float 5.120000e+02>, ptr %v, align 4
ret void
}