llvm-for-llvmta/test/CodeGen/X86/sse-align-11.ll

24 lines
1.0 KiB
LLVM

; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc < %s -mcpu=yonah -mtriple=i686-apple-darwin8 | FileCheck %s --check-prefix=i686-apple-darwin8
; RUN: llc < %s -mcpu=yonah -mtriple=i686-linux-gnu | FileCheck %s --check-prefix=i686-linux-gnu
; PR8969 - make 32-bit linux have a 16-byte aligned stack
define <4 x float> @foo(float %a, float %b, float %c, float %d) nounwind {
; i686-apple-darwin8-LABEL: foo:
; i686-apple-darwin8: ## %bb.0: ## %entry
; i686-apple-darwin8-NEXT: movaps {{[0-9]+}}(%esp), %xmm0
; i686-apple-darwin8-NEXT: retl
;
; i686-linux-gnu-LABEL: foo:
; i686-linux-gnu: # %bb.0: # %entry
; i686-linux-gnu-NEXT: movaps {{[0-9]+}}(%esp), %xmm0
; i686-linux-gnu-NEXT: retl
entry:
%tmp6 = insertelement <4 x float> undef, float %a, i32 0
%tmp7 = insertelement <4 x float> %tmp6, float %b, i32 1
%tmp8 = insertelement <4 x float> %tmp7, float %c, i32 2
%tmp9 = insertelement <4 x float> %tmp8, float %d, i32 3
ret <4 x float> %tmp9
}