summaryrefslogtreecommitdiff
path: root/linkers
diff options
context:
space:
mode:
authorPeng Fan <van.freenix@gmail.com>2013-07-18 10:53:18 +0800
committerPeng Fan <van.freenix@gmail.com>2013-07-19 07:35:08 +0800
commite23ef3b6ab0e24a2da1e8145ac97eb35de2436b0 (patch)
tree34a4f6df8951b89ed8cbc9fa88bbbac27d23245e /linkers
parent4b31ced3e125101d85acbcce8566775bcfdeb46d (diff)
Fixed fsec
If one object file contains .rodata and .rodata.str1.4 sections, .rodata contains rela reloc entries, but .rodata.str1.4 do not contain reloc entris.'.rodata' and '.rodata.str1.4' will be both included in '.const'.Then using this patch to fix the rela problem Signed-off-by: Peng Fan <van.freenix@gmail.com>
Diffstat (limited to 'linkers')
-rw-r--r--linkers/rld-rap.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/linkers/rld-rap.cpp b/linkers/rld-rap.cpp
index 590d31e..ab57b3e 100644
--- a/linkers/rld-rap.cpp
+++ b/linkers/rld-rap.cpp
@@ -682,7 +682,8 @@ namespace rld
sec.relocs.end (),
reloc_offset_compare ());
- sec.rela = fsec.rela;
+ if (fsec.rela == true)
+ sec.rela = fsec.rela;
}
external::external (const uint32_t name,