#include <bfd_stdint.h>

extern void bar (void);
extern void foo (void);
extern void foo_alias (void);
extern void check_ptr_eq (void *, void *);

#if defined(__GNUC__) && (__GNUC__ * 1000 + __GNUC_MINOR__) >= 4005
__attribute__ ((noinline, noclone))
#else
__attribute__ ((noinline))
#endif
int
foo_p (void)
{
  return (intptr_t) &foo == 0x12345678 ? 1 : 0;
}

int
main (void)
{
  foo ();
  foo_p ();
  bar ();
  check_ptr_eq (&foo, &foo_alias);
  return 0;
}
