4 #as
: --pic
--no
-underscore
--em
=criself
-I
$srcdir
/$subdir
5 #ld
: --shared -m crislinux
--hash
-style
=sysv
8 # PR
16044 is about
a (compile
-time
-non
-local
) hidden
function symbol
,
9 # entered as an undef reference
with a R_CRIS_32_PLT_GOTREL relocation
10 # referring to a hidden symbol
, later defined
. Here
, we invalidly
11 # incremented the h
->plt
.refcount (from
-1) as part of that relocation
12 # processing
. There are some PLTGOT relocations
. As there are no
13 # circumstances requiring a PLT entry
for this symbol
, its PLT entry
14 # can be eliminated
and the PLTGOT relocations can be made to a
static
15 # element
in the GOT
, relocated
with the absolute
-to
-relative
16 # R_CRIS_RELATIVE relocation without symbol lookup
. As part of
17 # eliminating unneeded PLT
entries (and PLTGOT to
"static" GOT
18 # elimination
), a later pass noticed the inconsistency through an
21 # The key points
in this dump that may need future adjustments are the
22 # single dynamic relocation
, that the dsofn symbol it points to
, is
23 # local
, its absence from the dynamic symbol table
and that the
24 # relocation
and symbol values match
.
26 Relocation section
'\.rela\.dyn' at offset
0x
[0-9a
-f
]+ contains
1 entry
:
27 Offset
[ ]+Info
[ ]+Type
[ ]+Sym\
.Value Sym\
. Name \
+ Addend
28 [0-9a
-f
]+ 0+[0-9a
-f
]+ R_CRIS_RELATIVE
[ ]+128
30 Symbol table
'\.dynsym' contains
4 entries
:
31 +Num
: +Value
+Size
+Type
+Bind
+Vis
+Ndx
+Name
32 +0: 0+ +0 +NOTYPE
+LOCAL
+DEFAULT
+UND
33 +1: [0-9a
-f
]+ +0 +SECTION
+LOCAL
+DEFAULT
+5
34 +2: [0-9a
-f
]+ +0 +FUNC
+GLOBAL
+DEFAULT
+5 export_1
35 +3: [0-9a
-f
]+ +0 +FUNC
+GLOBAL
+DEFAULT
+5 export_2
37 Symbol table
'\.symtab' contains
[0-9]+ entries
:
39 +[0-9]+: 0+128 +2 FUNC
+ LOCAL
+ DEFAULT
+ 5 dsofn