From 94f3d968152f1f6ee2a5c9603a408950eeb2c4c9 Mon Sep 17 00:00:00 2001 From: Nathan Sidwell Date: Tue, 19 Dec 2006 08:49:38 +0000 Subject: [PATCH] bfd/ * elf.c (assign_file_positions_for_load_sections): Adjust p_vaddr by p_vaddr_offset. Copy alignment & use if it is valid. (rewrite_elf_program_headers): Cope with leading padding in a segment that does not contain file or program headers. (copy_elf_program_header): Likewise. include/elf/ * internal.h (struct elf_segment_map): Add p_vaddr_offset field. --- include/elf/ChangeLog | 4 ++++ include/elf/internal.h | 2 ++ 2 files changed, 6 insertions(+) diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index 6481c7bc6..0c857ae0c 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,7 @@ +2006-12-19 Nathan Sidwell + + * internal.h (struct elf_segment_map): Add p_vaddr_offset field. + 2006-12-07 Kazu Hirata * m68k.h (EF_M68K_ISA_MASK, EF_M68K_ISA_A_NODIV, diff --git a/include/elf/internal.h b/include/elf/internal.h index d368a3fa6..f2161ff9d 100644 --- a/include/elf/internal.h +++ b/include/elf/internal.h @@ -235,6 +235,8 @@ struct elf_segment_map unsigned long p_flags; /* Program segment physical address. */ bfd_vma p_paddr; + /* Program segment virtual address offset from section vma. */ + bfd_vma p_vaddr_offset; /* Program segment alignment. */ bfd_vma p_align; /* Whether the p_flags field is valid; if not, the flags are based