111
|
1 /* { dg-do compile } */
|
|
2 /* { dg-options "-O2" } */
|
|
3
|
|
4 /* Check that we can perform this in a single INS without doing any DUPs. */
|
|
5
|
|
6 #include <arm_neon.h>
|
|
7
|
|
8 float16x8_t
|
|
9 foo (float16x8_t a, float16x8_t b)
|
|
10 {
|
|
11 return vsetq_lane_f16 (vgetq_lane_f16 (b, 2), a, 3);
|
|
12 }
|
|
13
|
|
14 float16x4_t
|
|
15 bar (float16x4_t a, float16x4_t b)
|
|
16 {
|
|
17 return vset_lane_f16 (vget_lane_f16 (b, 2), a, 3);
|
|
18 }
|
|
19
|
|
20 /* { dg-final { scan-assembler-times "ins\\t" 2 } } */
|
|
21 /* { dg-final { scan-assembler-not "dup\\t" } } */
|