1extern int printf (const char *, ...);
2
3extern int library_func1 (void);
4extern int library_func2 (void);
5extern int global;
6
7int
8main (void)
9{
10  int res = -1;
11
12  res += library_func1 ();
13  res += library_func2 ();
14
15  switch (res)
16    {
17    case 0:
18      if (global)
19	printf ("ifunc working correctly\n");
20      else
21	{
22	  printf ("wrong value returned by library_func2\n");
23	  res = -1;
24	}
25      break;
26
27    case 1:
28      if (global)
29	printf ("wrong value returned by library_func2\n");
30      else
31	{
32	  printf ("ifunc working correctly\n");
33	  res = 0;
34	}
35      break;
36
37    case 4:
38      printf ("non-ifunc testcase\n");
39      break;
40
41    default:
42      printf ("ifunc function not evaluated at run-time, res = %x\n", res);
43      break;
44    }
45  return res;
46}
47