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