1 #include <bfd_stdint.h>
2 
3 extern void bar (void);
4 extern void foo (void);
5 extern void foo_alias (void);
6 extern void check_ptr_eq (void *, void *);
7 
8 #if defined(__GNUC__) && (__GNUC__ * 1000 + __GNUC_MINOR__) >= 4005
9 __attribute__ ((noinline, noclone))
10 #else
11 __attribute__ ((noinline))
12 #endif
13 int
foo_p(void)14 foo_p (void)
15 {
16   return (intptr_t) &foo == 0x12345678 ? 1 : 0;
17 }
18 
19 int
main(void)20 main (void)
21 {
22   foo ();
23   foo_p ();
24   bar ();
25   check_ptr_eq (&foo, &foo_alias);
26   return 0;
27 }
28