aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.target/sh/pr51244-7.c
blob: d4d39745dac839a407b0c2ef5ed6a4bd2068d1af (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* Check that compare-branch is inverted properly.
   Example:
	clrt		->	clrt
	subc	r0,r6		subc	r0,r6
	mov	r3,r7		mov	r3,r7
	subc	r1,r7		subc	r1,r7
	mov	#0,r1		tst	r7,r7
	cmp/hi	r1,r7		bf	.L111
	bt	.L111		bra	.L197
	bra	.L197
	nop
*/
/* { dg-do compile }  */
/* { dg-options "-O2" } */
/* { dg-skip-if "" { "sh*-*-*" } { "-m5*" } { "" } } */
/* { dg-final { scan-assembler-not "cmp/hi" } } */
/* { dg-final { scan-assembler-not "mov\t#0" } } */

int other_func (long long);
int
test_00 (unsigned long long a, unsigned long long b)
{
  if ((a - b) > 0xFFFFFFFFLL)
    return other_func (a - b);
  return 20;
}