blob: 8fc13e78bc30c334b66b214d11ac242d1cb916df [file] [log] [blame]
Evan Chengd6a66562009-10-25 07:53:48 +00001; RUN: llc < %s -march=arm -mattr=+vfp2 | FileCheck %s -check-prefix=VFP2
2; RUN: llc < %s -march=arm -mattr=+neon -arm-use-neon-fp=0 | FileCheck %s -check-prefix=NEON
3; RUN: llc < %s -march=arm -mattr=+neon -arm-use-neon-fp=1 | FileCheck %s -check-prefix=NEONFP
David Goodwindd19ce42009-08-04 17:53:06 +00004
5define float @test(float %acc, float %a, float %b) {
6entry:
Evan Chengd6a66562009-10-25 07:53:48 +00007; VFP2: fnmacs
8; NEON: fnmacs
9
Jim Grosbach67420bf2009-10-31 22:57:36 +000010; NEONFP-NOT: vmls
Evan Chengd6a66562009-10-25 07:53:48 +000011; NEONFP-NOT: fcpys
Jim Grosbach67420bf2009-10-31 22:57:36 +000012; NEONFP: vmul.f32
13; NEONFP: vsub.f32
Evan Chengd6a66562009-10-25 07:53:48 +000014; NEONFP: fmrs
15
David Goodwindd19ce42009-08-04 17:53:06 +000016 %0 = fmul float %a, %b
17 %1 = fsub float %acc, %0
18 ret float %1
19}
20