summaryrefslogtreecommitdiff
path: root/toolchain/binutils/patches/2.18/700-pr5322-dont-adjust-p_vaddr_offset.patch
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/binutils/patches/2.18/700-pr5322-dont-adjust-p_vaddr_offset.patch')
-rw-r--r--toolchain/binutils/patches/2.18/700-pr5322-dont-adjust-p_vaddr_offset.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/toolchain/binutils/patches/2.18/700-pr5322-dont-adjust-p_vaddr_offset.patch b/toolchain/binutils/patches/2.18/700-pr5322-dont-adjust-p_vaddr_offset.patch
new file mode 100644
index 0000000..2f6a625
--- /dev/null
+++ b/toolchain/binutils/patches/2.18/700-pr5322-dont-adjust-p_vaddr_offset.patch
@@ -0,0 +1,20 @@
+--- a/bfd/elf.c 2009-07-14 14:30:19.000000000 +0200
++++ b/bfd/elf.c 2009-07-14 21:11:42.000000000 +0200
+@@ -5362,12 +5449,16 @@
+ *pointer_to_map = map;
+ pointer_to_map = &map->next;
+
++#if 0
++ /* FIXME: It is wrong when section flags are changed. See
++ PR binutils/5233. */
+ if (matching_lma != map->p_paddr
+ && !map->includes_filehdr && !map->includes_phdrs)
+ /* There is some padding before the first section in the
+ segment. So, we must account for that in the output
+ segment's vma. */
+ map->p_vaddr_offset = matching_lma - map->p_paddr;
++#endif
+
+ free (sections);
+ continue;
+