summaryrefslogtreecommitdiff
path: root/test/CodeGen/ARM/fusedMAC.ll
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2012-06-21 06:10:00 +0000
committerLang Hames <lhames@gmail.com>2012-06-21 06:10:00 +0000
commitdc13d2ed2feb3fd9d4953a1dd49d6a93d6867bc5 (patch)
tree76a4b70def807ded900f6922d487b0f2012ef634 /test/CodeGen/ARM/fusedMAC.ll
parent1d4e62878e188704e4c599d50b4e3679a8189567 (diff)
downloadllvm-dc13d2ed2feb3fd9d4953a1dd49d6a93d6867bc5.tar.gz
llvm-dc13d2ed2feb3fd9d4953a1dd49d6a93d6867bc5.tar.bz2
llvm-dc13d2ed2feb3fd9d4953a1dd49d6a93d6867bc5.tar.xz
Add a missing llvm.fma -> VFNMS pattern to the ARM backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158902 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/ARM/fusedMAC.ll')
-rw-r--r--test/CodeGen/ARM/fusedMAC.ll9
1 files changed, 9 insertions, 0 deletions
diff --git a/test/CodeGen/ARM/fusedMAC.ll b/test/CodeGen/ARM/fusedMAC.ll
index 61e7d7b1a2..0cc1cddf21 100644
--- a/test/CodeGen/ARM/fusedMAC.ll
+++ b/test/CodeGen/ARM/fusedMAC.ll
@@ -141,6 +141,15 @@ entry:
ret double %tmp2
}
+define float @test_fnms_f32(float %a, float %b, float* %c) nounwind readnone ssp {
+; CHECK: test_fnms_f32
+; CHECK: vfnms.f32
+ %tmp1 = load float* %c, align 4
+ %tmp2 = fsub float -0.0, %tmp1
+ %tmp3 = tail call float @llvm.fma.f32(float %a, float %b, float %tmp2) nounwind readnone
+ ret float %tmp3
+}
+
define double @test_fnms_f64(double %a, double %b, double %c) nounwind readnone ssp {
entry:
; CHECK: test_fnms_f64