modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/20030821-1.c (about)

     1  /* PR target/11805.  */
     2  
     3  /* Consider the following sequence.
     4  
     5       (set (cc0)
     6  	  (and:HI (reg:HI 0)
     7  		  (const_int 1)))
     8  
     9       (set (pc)
    10  	  (if_then_else (le (cc0)
    11  			    (const_int 0))
    12  			(label_ref 17)
    13  			(pc)))
    14  
    15     On h8300, the first insn does not set the overflow flag, but the
    16     second requires the overflow flag.  As a result, when the final
    17     wants to output the jump insn, it cannot find a test insn that
    18     gives appropriate condition flags.  */
    19  
    20  unsigned char
    21  foo (unsigned char a)
    22  {
    23    return (a & 1) > 0;
    24  }