blob: 9c39bee753be56b0bbf55bfbb85236f4977c5584 [file] [log] [blame]
Vincent Lejeune1ce13f52013-02-18 14:11:28 +00001;RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck %s
2
Vincent Lejeune4b5b8492013-06-05 20:27:35 +00003;CHECK: MULADD_IEEE * {{T[0-9]+\.[XYZW], T[0-9]+\.[XYZW], T[0-9]+\.[XYZW], T[0-9]+\.[XYZW]}}
Vincent Lejeune1ce13f52013-02-18 14:11:28 +00004
Nicolai Haehnledf3a20c2016-04-06 19:40:20 +00005define amdgpu_ps void @test(<4 x float> inreg %reg0) {
Vincent Lejeunef143af32013-11-11 22:10:24 +00006 %r0 = extractelement <4 x float> %reg0, i32 0
7 %r1 = extractelement <4 x float> %reg0, i32 1
8 %r2 = extractelement <4 x float> %reg0, i32 2
Vincent Lejeune1ce13f52013-02-18 14:11:28 +00009 %r3 = fmul float %r0, %r1
Vincent Lejeunef143af32013-11-11 22:10:24 +000010 %r4 = fadd float %r3, %r2
11 %vec = insertelement <4 x float> undef, float %r4, i32 0
Matt Arsenault82e5e1e2016-07-15 21:27:08 +000012 call void @llvm.r600.store.swizzle(<4 x float> %vec, i32 0, i32 0)
Vincent Lejeune1ce13f52013-02-18 14:11:28 +000013 ret void
14}
15
Vincent Lejeune1ce13f52013-02-18 14:11:28 +000016declare float @fabs(float ) readnone
Matt Arsenault82e5e1e2016-07-15 21:27:08 +000017declare void @llvm.r600.store.swizzle(<4 x float>, i32, i32)