Home | History | Annotate | Download | only in ARM
      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=NEON
      3 ; RUN: llc < %s -march=arm -mcpu=cortex-a8 | FileCheck %s -check-prefix=A8
      4 
      5 define float @t1(float %acc, float %a, float %b) {
      6 entry:
      7 ; VFP2: t1:
      8 ; VFP2: vnmls.f32
      9 
     10 ; NEON: t1:
     11 ; NEON: vnmls.f32
     12 
     13 ; A8: t1:
     14 ; A8: vmul.f32
     15 ; A8: vsub.f32
     16 	%0 = fmul float %a, %b
     17         %1 = fsub float %0, %acc
     18 	ret float %1
     19 }
     20 
     21 define double @t2(double %acc, double %a, double %b) {
     22 entry:
     23 ; VFP2: t2:
     24 ; VFP2: vnmls.f64
     25 
     26 ; NEON: t2:
     27 ; NEON: vnmls.f64
     28 
     29 ; A8: t2:
     30 ; A8: vmul.f64
     31 ; A8: vsub.f64
     32 	%0 = fmul double %a, %b
     33         %1 = fsub double %0, %acc
     34 	ret double %1
     35 }
     36