Imported Upstream version 4.8.1
[platform/upstream/gcc48.git] / gcc / testsuite / gcc.target / sh / pr51244-6.c
1 /* Check that no unnecessary sign or zero extension insn is generated after
2    a negc or movrt insn that stores the inverted T bit in a reg.  */
3 /* { dg-do compile { target "sh*-*-*" } } */
4 /* { dg-options "-O1" } */
5 /* { dg-skip-if "" { "sh*-*-*" } { "-m1" "-m2" "-m3" "-m4al" "*nofpu" "-m4-340*" "-m4-400*" "-m4-500*" "-m5*" } { "" } }  */
6 /* { dg-final { scan-assembler-not "extu|exts" } } */
7
8 float
9 test_00 (float q[4], float m[9])
10 {
11   float s0 = m[0] + m[1];
12   float s1 = m[0] - m[1];
13
14   return q[s0 > s1 ?  0 : 1];
15 }