Sam Parker | b0de00d | 2017-01-18 15:52:11 +0000 | [diff] [blame] | 1 | @ RUN: llvm-mc < %s -triple armv7a -mattr=+vfp3,+neon,+fp16,+hwdiv-arm,+hwdiv -filetype=obj | llvm-objdump -triple=arm -d - | FileCheck %s |
| 2 | @ RUN: llvm-mc < %s -triple armv7a -mattr=+vfp3,+neon,+fp16,+hwdiv-arm,+hwdiv -filetype=obj | llvm-objdump -triple=thumb -d - | FileCheck %s --check-prefix=CHECK-THUMB |
| 3 | |
| 4 | .eabi_attribute Tag_FP_arch, 0 // disallow vfp |
| 5 | |
| 6 | vfp2: |
| 7 | vmla.f32 s0, s1, s2 |
| 8 | |
| 9 | @CHECK-LABEL: vfp2 |
| 10 | @CHECK-NOT: 81 0a 00 ee vmla.f32 s0, s1, s2 |
| 11 | @CHECK: unknown |
| 12 | |
| 13 | vfp3: |
| 14 | vmov.f32 s0, #0.5 |
| 15 | |
| 16 | @CHECK-LABEL: vfp3 |
| 17 | @CHECK-NOT: 00 0a b6 ee vmov.f32 s0, #5.000000e-01 |
| 18 | |
| 19 | neon: |
| 20 | vmla.f32 d0, d1, d2 |
| 21 | |
| 22 | @CHECK-LABEL: neon |
| 23 | @CHECK-NOT: 12 0d 01 f2 vmla.f32 d0, d1, d2 |
| 24 | @CHECK: unknown |
| 25 | |
| 26 | fp16: |
| 27 | vcvt.f32.f16 q0, d2 |
| 28 | |
| 29 | @CHECK-LABEL: fp16 |
| 30 | @CHECK-NOT: 02 07 b6 f3 vcvt.f32.f16 q0, d2 |
| 31 | |
| 32 | div_arm: |
| 33 | udiv r0, r1, r2 |
| 34 | |
| 35 | @CHECK-LABEL: div_arm |
| 36 | @CHECK-NOT: 11 f2 30 e7 udiv r0, r1, r2 |
| 37 | @CHECK: unknown |
| 38 | |
| 39 | .thumb |
| 40 | div_thumb: |
| 41 | udiv r0, r1, r2 |
| 42 | |
| 43 | @CHECK-LABEL: div_thumb |
| 44 | @CHECK-THUMB-NOT: b1 fb f2 f0 udiv r0, r1, r2 |