blob: 35b5df7c9dde705709fe2100f1c43468d1ae8240 [file] [log] [blame]
/* PR target/100637 */
/* { dg-do compile } */
/* { dg-options "-O2 -msse2" } */
typedef unsigned char __attribute__((__vector_size__ (4))) __v4qu;
typedef char __attribute__((__vector_size__ (4))) __v4qi;
__v4qu au, bu;
__v4qi as, bs;
__v4qu uu (__v4qu a, __v4qu b) { return (a > b) ? au : bu; }
__v4qu us (__v4qi a, __v4qi b) { return (a > b) ? au : bu; }
__v4qi su (__v4qu a, __v4qu b) { return (a > b) ? as : bs; }
__v4qi ss (__v4qi a, __v4qi b) { return (a > b) ? as : bs; }
/* { dg-final { scan-assembler-times "pcmpeqb" 2 } } */
/* { dg-final { scan-assembler-times "pcmpgtb" 2 } } */