4b627c1844
Since something like ".long foo - ." may be used as pointer, we make sure that PLT is used if foo is a function defined in a shared library. bfd/ PR ld/19031 * elf32-i386.c (elf_i386_check_relocs): Set pointer_equality_needed for R_386_PC32 reloc in non-code sections. ld/testsuite/ PR ld/19031 * ld-i386/i386.exp: Run PR ld/19031 test. * ld/testsuite/ld-i386/pr19031.out: New file. * ld/testsuite/ld-i386/pr19031a.c: Likewise. * ld/testsuite/ld-i386/pr19031b.S: Likewise. * ld/testsuite/ld-i386/pr19031c.c: Likewise.
15 lines
142 B
C
15 lines
142 B
C
#include <stdio.h>
|
|
|
|
extern void *h (void);
|
|
extern void *g (void);
|
|
|
|
int
|
|
main (void)
|
|
{
|
|
|
|
if (h () == g ())
|
|
printf ("OK\n");
|
|
|
|
return 0;
|
|
}
|