(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.target/
aarch64/
sve/
const_pred_1.C
/* { dg-do compile } */
/* { dg-options "-O2 -msve-vector-bits=256" } */

#include <stdint.h>

typedef int8_t vnx16qi __attribute__((vector_size(32)));

vnx16qi
foo (vnx16qi x, vnx16qi y)
{
  return (vnx16qi) { -1, 0, 0, -1, -1, -1, 0, 0,
		     -1, -1, -1, -1, 0, 0, 0, 0,
		     -1, -1, -1, -1, -1, -1, -1, -1,
		     0, 0, 0, 0, 0, 0, 0, 0 } ? x : y;
}

/* { dg-final { scan-assembler {\tldr\tp[0-9]+,} } } */
/* { dg-final { scan-assembler {\t\.byte\t57\n\t\.byte\t15\n\t\.byte\t(255|-1)\n\t\.byte\t0\n} } } */