1 |
41 |
khays |
#source: dso-1.s
|
2 |
|
|
#source: dso-2.s
|
3 |
|
|
#as: --pic --no-underscore --em=criself
|
4 |
|
|
#ld: --shared -m crislinux --version-script $srcdir/$subdir/hide1
|
5 |
|
|
#readelf: -S -s -r
|
6 |
|
|
|
7 |
|
|
# Use "dsofn" from dso-1 in a GOTPLT reloc, but hide it in a
|
8 |
|
|
# version script. This will change the incoming GOTPLT reloc to
|
9 |
|
|
# instead be a (local) GOT reloc. There are no other .rela.got
|
10 |
|
|
# entries. This formerly SEGV:ed because .rela.got was created
|
11 |
|
|
# too late to have it mapped to an output section.
|
12 |
|
|
|
13 |
|
|
There are 13 section headers.*
|
14 |
|
|
#...
|
15 |
|
|
+\[ 1\] \.hash +HASH +.*
|
16 |
|
|
+\[ 2\] \.dynsym +DYNSYM +.*
|
17 |
|
|
+\[ 3\] \.dynstr +STRTAB +.*
|
18 |
|
|
+\[ 4\] \.gnu\.version +VERSYM +.*
|
19 |
|
|
+\[ 5\] \.gnu\.version_d +VERDEF +.*
|
20 |
|
|
+\[ 6\] \.rela\.dyn +RELA +.*
|
21 |
|
|
+\[ 7\] \.text +PROGBITS .*
|
22 |
|
|
+\[ 8\] \.dynamic +DYNAMIC +.*
|
23 |
|
|
+\[ 9\] \.got +PROGBITS .*
|
24 |
|
|
+\[10\] \.shstrtab +STRTAB +.*
|
25 |
|
|
+\[11\] \.symtab +SYMTAB +.*
|
26 |
|
|
+\[12\] \.strtab +STRTAB +.*
|
27 |
|
|
#...
|
28 |
|
|
Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 1 entries:
|
29 |
|
|
#...
|
30 |
|
|
00002[12][0-9a-f][048c] +0000000c R_CRIS_RELATIVE +00000150
|
31 |
|
|
#...
|
32 |
|
|
Symbol table '\.dynsym' contains 4 entries:
|
33 |
|
|
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
|
34 |
|
|
+0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND
|
35 |
|
|
+1: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +7
|
36 |
|
|
+2: 0+ +0 +OBJECT +GLOBAL +DEFAULT +ABS TST1
|
37 |
|
|
+3: 0+154 +0 +FUNC +GLOBAL +DEFAULT +7 export_1@@TST1
|
38 |
|
|
|
39 |
|
|
Symbol table '\.symtab' contains 18 entries:
|
40 |
|
|
+Num: +Value +Size +Type +Bind +Vis +Ndx +Name
|
41 |
|
|
+0: 0+ +0 +NOTYPE +LOCAL +DEFAULT +UND
|
42 |
|
|
+1: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +1
|
43 |
|
|
+2: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +2
|
44 |
|
|
+3: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +3
|
45 |
|
|
+4: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +4
|
46 |
|
|
+5: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +5
|
47 |
|
|
+6: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +6
|
48 |
|
|
+7: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +7
|
49 |
|
|
+8: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +8
|
50 |
|
|
+9: [0-9a-f]+ +0 +SECTION +LOCAL +DEFAULT +9
|
51 |
|
|
+10: 0+2..[046c] +0 +OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
|
52 |
|
|
+11: 0+2..[046c] +0 +NOTYPE +LOCAL +DEFAULT +ABS __bss_start
|
53 |
|
|
+12: 0+2..[046c] +0 +NOTYPE +LOCAL +DEFAULT +ABS _edata
|
54 |
|
|
+13: 0+2..[046c] +0 +OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
|
55 |
|
|
+14: 0+2..[046c] +0 +NOTYPE +LOCAL +DEFAULT +ABS _end
|
56 |
|
|
+15: 0+150 +2 +FUNC +LOCAL +DEFAULT +7 dsofn
|
57 |
|
|
+16: 0+ +0 +OBJECT +GLOBAL +DEFAULT +ABS TST1
|
58 |
|
|
+17: 0+154 +0 +FUNC +GLOBAL +DEFAULT +7 export_1
|