2008-02-21 08:42:26 +01:00
|
|
|
; RUN: llvm-as < %s | llc -march=x86 -mattr=sse | grep movaps
|
2006-10-07 23:54:08 +02:00
|
|
|
; Test that the load is NOT folded into the intrinsic, which would zero the top
|
|
|
|
; elts of the loaded vector.
|
|
|
|
|
2008-02-21 08:42:26 +01:00
|
|
|
target datalayout = "e-p:32:32"
|
2006-10-07 23:54:08 +02:00
|
|
|
target triple = "i686-apple-darwin8.7.2"
|
|
|
|
|
2008-02-21 08:42:26 +01:00
|
|
|
define <4 x float> @test(<4 x float> %A, <4 x float>* %B) {
|
|
|
|
%BV = load <4 x float>* %B ; <<4 x float>> [#uses=1]
|
|
|
|
%tmp28 = tail call <4 x float> @llvm.x86.sse.sub.ss( <4 x float> %A, <4 x float> %BV ) ; <<4 x float>> [#uses=1]
|
|
|
|
ret <4 x float> %tmp28
|
2006-10-07 23:54:08 +02:00
|
|
|
}
|
|
|
|
|
2008-02-21 08:42:26 +01:00
|
|
|
declare <4 x float> @llvm.x86.sse.sub.ss(<4 x float>, <4 x float>)
|
|
|
|
|