1/* A const vector operand is forced into a register in 2 s390_expand_vcond. 3 This testcase once failed because the target mode (v2di) was picked 4 for the reg instead of the mode of the other comparison 5 operand. */ 6 7/* { dg-do compile { target { s390*-*-* } } } */ 8/* { dg-options "-O3 -mzarch -march=z13" } */ 9 10typedef __attribute__((vector_size(16))) long v2di; 11typedef __attribute__((vector_size(16))) double v2df; 12 13v2di 14foo (v2df a) 15{ 16 return a == (v2df){ 0.0, 0.0 }; 17} 18 19v2di 20bar (v2df a) 21{ 22 return (v2df){ 1.0, 1.0 } == (v2df){ 0.0, 0.0 }; 23} 24