aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/validation/kill-load.c
blob: 45fb83e4bae786330e00b422dcbadf8f793d0893 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int keep(volatile int *p)	{ return *p && 0; }
int kill(int *p, int i)		{ return *p && 0; }
void ind(volatile int *p,int i)	{ int v = i++; if (i && 0) p[v]; }


/*
 * check-name: kill-load
 * check-command: test-linearize -Wno-decl $file
 * check-description:
 *	Check that loads are optimized away but only
 *	when needed:
 *	- non-volatile
 *	- bb unreachable.
 *
 * check-output-ignore
 * check-output-pattern-1-times: load\\.
 */