1*1424dfb3Schristos #include <stdio.h>
2*1424dfb3Schristos #include <bfd_stdint.h>
3*1424dfb3Schristos 
4*1424dfb3Schristos extern uintptr_t bar;
5*1424dfb3Schristos 
6*1424dfb3Schristos uintptr_t *
7*1424dfb3Schristos __attribute__ ((noinline, noclone))
get_bar(void)8*1424dfb3Schristos get_bar (void)
9*1424dfb3Schristos {
10*1424dfb3Schristos   return &bar;
11*1424dfb3Schristos }
12*1424dfb3Schristos 
13*1424dfb3Schristos int
main()14*1424dfb3Schristos main ()
15*1424dfb3Schristos {
16*1424dfb3Schristos   if ((uintptr_t) get_bar () == -0x80000001LL)
17*1424dfb3Schristos     printf ("PASS\n");
18*1424dfb3Schristos   return 0;
19*1424dfb3Schristos }
20