summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr14796-2.c
blob: c0a91dc955bfc9483fb959fc84e9b71dda3aff77 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* { dg-do compile } */
/* { dg-require-effective-target int32plus } */
/* { dg-options "-fdump-tree-gimple" } */

int f (int a) {
	return (a << 31) << 6;
}

unsigned int g (unsigned int a) {
	return (a >> 7) >> 25;
}

int h (int b) {
	return (b >> 30) >> 30;
}

long long j (long long c) {
	return (c >> 35) << 35;
}
/* { dg-final { scan-tree-dump-times "= 0" 2 "gimple" } } */
/* { dg-final { scan-tree-dump "b >> 31" "gimple" } } */
/* { dg-final { scan-tree-dump "c & -(34359738368|0x800000000)" "gimple" } } */
/* { dg-final { cleanup-tree-dump "gimple" } } */