]>
Commit | Line | Data |
---|---|---|
4be8cf77 SP |
1 | /* { dg-require-effective-target arm_v8_1m_mve_fp_ok } */ |
2 | /* { dg-add-options arm_v8_1m_mve_fp } */ | |
3 | /* { dg-additional-options "-O2" } */ | |
9b8dc637 | 4 | /* { dg-final { check-function-bodies "**" "" } } */ |
4be8cf77 SP |
5 | |
6 | #include "arm_mve.h" | |
7 | ||
9b8dc637 AC |
8 | /* |
9 | **foo: | |
10 | ** ... | |
11 | ** vsub.f32 q[0-9]+, q[0-9]+, (?:ip|fp|r[0-9]+)(?: @.*|) | |
12 | ** ... | |
13 | */ | |
4be8cf77 SP |
14 | float32x4_t |
15 | foo (float32x4_t a, float32_t b) | |
16 | { | |
17 | return vsubq_n_f32 (a, b); | |
18 | } | |
19 | ||
4be8cf77 | 20 | |
9b8dc637 AC |
21 | /* |
22 | **foo1: | |
23 | ** ... | |
24 | ** vsub.f32 q[0-9]+, q[0-9]+, (?:ip|fp|r[0-9]+)(?: @.*|) | |
25 | ** ... | |
26 | */ | |
4be8cf77 SP |
27 | float32x4_t |
28 | foo1 (float32x4_t a, float32_t b) | |
29 | { | |
30 | return vsubq (a, b); | |
31 | } | |
32 | ||
9b8dc637 AC |
33 | /* |
34 | **foo2: | |
35 | ** ... | |
36 | ** vsub.f32 q[0-9]+, q[0-9]+, (?:ip|fp|r[0-9]+)(?: @.*|) | |
37 | ** ... | |
38 | */ | |
39 | float32x4_t | |
40 | foo2 (float32x4_t a) | |
41 | { | |
42 | return vsubq (a, 1.1); | |
43 | } | |
44 | ||
45 | /* { dg-final { scan-assembler-not "__ARM_undef" } } */ |