2aa9aad989
* ldlang.c (lang_process): Rerun lang_do_assignments before starting garbage collection. * ldexp.c (fold_name): Generate a reloc for defined symbols found without an associated output section during the mark phase. (exp_fold_tree_1): Continue processing an expression, even if we are unable to fold it, if we are in the first two evaluation phases. * ldexp.h (enum lang_phase_type): Add descriptions of the phases. * ld-gc/pr13683.c: New test source file. * ld-gc/pr13683.d: New test control and output file. * ld-gc/gc.exp: Run the pr13683 test. * ld-cris/tls-gc-68: Update expected symbol table dump. * ld-cris/tls-gc-69: Likewise. * ld-cris/tls-gc-70: Likewise. * ld-cris/tls-gc-71: Likewise. * ld-cris/tls-gc-75: Likewise. * ld-cris/tls-gc-76.d: Likewise. * ld-cris/tls-gc-79.d: Likewise.
35 lines
1003 B
Makefile
35 lines
1003 B
Makefile
#source: start1.s
|
|
#source: tls128.s
|
|
#source: tls-gd-3.s
|
|
#source: tls-x.s
|
|
#as: --no-underscore --em=criself
|
|
#ld: -m crislinux --gc-sections
|
|
#objdump: -s -t -r -p
|
|
|
|
# An executable with a single R_CRIS_32_GD, with gc. Check that we
|
|
# have nothing left but the start symbol and its code. Can't get rid
|
|
# of the GOT just yet.
|
|
|
|
.*: file format elf32-cris
|
|
|
|
Program Header:
|
|
LOAD off 0x0+ vaddr 0x0+80000 paddr 0x0+80000 align 2\*\*13
|
|
filesz 0x0+78 memsz 0x0+78 flags r-x
|
|
LOAD off 0x0+78 vaddr 0x0+82078 paddr 0x0+82078 align 2\*\*13
|
|
filesz 0x0+c memsz 0x0+c flags rw-
|
|
private flags = 0:
|
|
|
|
SYMBOL TABLE:
|
|
0+80074 l d .text 0+ .text
|
|
0+82078 l d .got 0+ .got
|
|
0+82084 l \*ABS\* 0+ __bss_start
|
|
0+82084 l \*ABS\* 0+ _edata
|
|
0+82078 l O .got 0+ _GLOBAL_OFFSET_TABLE_
|
|
0+820a0 l \*ABS\* 0+ _end
|
|
0+80074 g .text 0+ _start
|
|
|
|
Contents of section .text:
|
|
80074 41b20+ .*
|
|
Contents of section .got:
|
|
82078 0+ 0+ 0+ .*
|