Two sets of changes. Sorry they are intermingled.
[oota-llvm.git] / test / CodeGen / ARM / fmscs.ll
index 5338f44e979fbdf7b6cf92dc2f24992f47cccf54..7a70543dee6cf4b96891d5a1a09b4170fdb92627 100644 (file)
@@ -1,6 +1,7 @@
-; RUN: llvm-as < %s | llc -march=arm -mattr=+vfp2 | grep -E {fmscs\\W*s\[0-9\]+,\\W*s\[0-9\]+,\\W*s\[0-9\]+} | count 1
-; RUN: llvm-as < %s | llc -march=arm -mattr=+neon,+neonfp | grep -E {fmscs\\W*s\[0-9\]+,\\W*s\[0-9\]+,\\W*s\[0-9\]+} | count 1
-; RUN: llvm-as < %s | llc -march=arm -mattr=+neon,-neonfp | grep -E {fmscs\\W*s\[0-9\]+,\\W*s\[0-9\]+,\\W*s\[0-9\]+} | count 1
+; RUN: llc < %s -march=arm -mattr=+vfp2 | FileCheck %s -check-prefix=VFP2
+; RUN: llc < %s -march=arm -mattr=+neon | FileCheck %s -check-prefix=NFP0
+; RUN: llc < %s -march=arm -mcpu=cortex-a8 | FileCheck %s -check-prefix=CORTEXA8
+; RUN: llc < %s -march=arm -mcpu=cortex-a9 | FileCheck %s -check-prefix=CORTEXA9
 
 define float @test(float %acc, float %a, float %b) {
 entry:
@@ -9,3 +10,15 @@ entry:
        ret float %1
 }
 
+; VFP2: test:
+; VFP2:        vnmls.f32       s2, s1, s0
+
+; NFP1: test:
+; NFP1:        vnmls.f32       s2, s1, s0
+; NFP0: test:
+; NFP0:        vnmls.f32       s2, s1, s0
+
+; CORTEXA8: test:
+; CORTEXA8:    vnmls.f32       s2, s1, s0
+; CORTEXA9: test:
+; CORTEXA9:    vnmls.f32       s2, s1, s0