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