Change ARM scheduling default to list-hybrid if the target supports floating point...
[oota-llvm.git] / test / CodeGen / ARM / fabss.ll
1 ; RUN: llc < %s -march=arm -mattr=+vfp2 | FileCheck %s -check-prefix=VFP2
2 ; RUN: llc < %s -march=arm -mattr=+neon | FileCheck %s -check-prefix=NFP0
3 ; RUN: llc < %s -march=arm -mcpu=cortex-a8 | FileCheck %s -check-prefix=CORTEXA8
4 ; RUN: llc < %s -march=arm -mcpu=cortex-a9 | FileCheck %s -check-prefix=CORTEXA9
5
6 define float @test(float %a, float %b) {
7 entry:
8         %dum = fadd float %a, %b
9         %0 = tail call float @fabsf(float %dum)
10         %dum1 = fadd float %0, %b
11         ret float %dum1
12 }
13
14 declare float @fabsf(float)
15
16 ; VFP2: test:
17 ; VFP2:         vabs.f32        s1, s1
18
19 ; NFP1: test:
20 ; NFP1:         vabs.f32        d1, d1
21 ; NFP0: test:
22 ; NFP0:         vabs.f32        s1, s1
23
24 ; CORTEXA8: test:
25 ; CORTEXA8:     vabs.f32        d1, d1
26 ; CORTEXA9: test:
27 ; CORTEXA9:     vabs.f32        s0, s0