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 5define float @t1(float %acc, float %a, float %b) { 6entry: 7; VFP2: t1: 8; VFP2: vmls.f32 9 10; NEON: t1: 11; NEON: vmls.f32 12 13; A8: 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 21define double @t2(double %acc, double %a, double %b) { 22entry: 23; VFP2: t2: 24; VFP2: vmls.f64 25 26; NEON: t2: 27; NEON: vmls.f64 28 29; A8: 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