blob: a47321db80b0d4846c5878f61692056c2b94c1c1 [file] [log] [blame]
/* { dg-do compile } */
/* { dg-options "-O" } */
#include <arm_neon.h>
poly64x2_t
foo (poly64x2_t a, poly64x2_t b)
{
return vtrn1q_p64 (a, b);
}
poly64x2_t
foo1 (poly64x2_t a, poly64x2_t b)
{
return vtrn2q_p64 (a, b);
}
poly64x2_t
foo2 (poly64x2_t a, poly64x2_t b)
{
return vuzp1q_p64 (a, b);
}
poly64x2_t
foo3 (poly64x2_t a, poly64x2_t b)
{
return vuzp2q_p64 (a, b);
}
poly64x2_t
foo4 (poly64x2_t a, poly64x2_t b)
{
return vzip1q_p64 (a, b);
}
poly64x2_t
foo5 (poly64x2_t a, poly64x2_t b)
{
return vzip2q_p64 (a, b);
}
/* { dg-final { scan-assembler-times {zip1\tv0.2d, v0.2d, v1.2d} 3 } } */
/* { dg-final { scan-assembler-times {zip2\tv0.2d, v0.2d, v1.2d} 3 } } */