| /* PR target/100637 */ |
| /* { dg-do compile } */ |
| /* { dg-options "-O2 -msse2" } */ |
| |
| typedef short vec __attribute__((vector_size(4))); |
| |
| vec lt (vec a, vec b) { return a < b; } |
| vec le (vec a, vec b) { return a <= b; } |
| vec eq (vec a, vec b) { return a == b; } |
| vec ne (vec a, vec b) { return a != b; } |
| vec ge (vec a, vec b) { return a >= b; } |
| vec gt (vec a, vec b) { return a > b; } |
| |
| typedef unsigned short uvec __attribute__((vector_size(4))); |
| |
| vec ltu (uvec a, uvec b) { return a < b; } |
| vec leu (uvec a, uvec b) { return a <= b; } |
| vec geu (uvec a, uvec b) { return a >= b; } |
| vec gtu (uvec a, uvec b) { return a > b; } |
| |
| /* { dg-final { scan-assembler-not "cmpw" } } */ |