blob: 7fafe92f49042b64d24ad4d5219251645da3abfd [file] [log] [blame]
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* Check that we can perform this in a single INS without doing any DUPs. */
#include <arm_neon.h>
float16x8_t
foo (float16x8_t a, float16x8_t b)
{
return vsetq_lane_f16 (vgetq_lane_f16 (b, 2), a, 3);
}
float16x4_t
bar (float16x4_t a, float16x4_t b)
{
return vset_lane_f16 (vget_lane_f16 (b, 2), a, 3);
}
/* { dg-final { scan-assembler-times "ins\\t" 2 } } */
/* { dg-final { scan-assembler-not "dup\\t" } } */