aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2006-05-27 00:47:45 +0000
committerAlan Modra <amodra@gmail.com>2006-05-27 00:47:45 +0000
commit3f570048d764dc9730cfbcf0b84b707333124f1c (patch)
tree0d017bdf1842c38aff61b0603ecac2b06363d6f1 /include
parent6a8d9e540a2f870b5a9bbbc778d47aa50866d5ac (diff)
downloadfsf-binutils-gdb-3f570048d764dc9730cfbcf0b84b707333124f1c.zip
fsf-binutils-gdb-3f570048d764dc9730cfbcf0b84b707333124f1c.tar.gz
fsf-binutils-gdb-3f570048d764dc9730cfbcf0b84b707333124f1c.tar.bz2
bfd/
* elf.c (assign_file_positions_for_load_sections): Retrieve maxpagesize from m->p_align if it is valid. Set p_vaddr, p_paddr and p_align earlier. Revert 2006-05-19 change to p_align. (copy_elf_program_header): Copy p_align. Set p_align_valid. include/elf/ * internal.h (elf_segment_map): Add p_align and p_align_valid.
Diffstat (limited to 'include')
-rw-r--r--include/elf/ChangeLog4
-rw-r--r--include/elf/internal.h7
2 files changed, 10 insertions, 1 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index f88b413..fb3476c 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,7 @@
+2006-05-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ * internal.h (struct elf_segment_map): Add p_align and p_align_valid.
+
2006-05-24 Carlos O'Donell <carlos@systemhalted.org>
Randolph Chung <randolph@tausq.org>
* hppa.h (R_PARISC_TLS_GD21L, R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL,
diff --git a/include/elf/internal.h b/include/elf/internal.h
index e4eba7d..ff27c88 100644
--- a/include/elf/internal.h
+++ b/include/elf/internal.h
@@ -1,6 +1,6 @@
/* ELF support for BFD.
Copyright 1991, 1992, 1993, 1994, 1995, 1997, 1998, 2000, 2001, 2002,
- 2003 Free Software Foundation, Inc.
+ 2003, 2006 Free Software Foundation, Inc.
Written by Fred Fish @ Cygnus Support, from information published
in "UNIX System V Release 4, Programmers Guide: ANSI C and
@@ -235,12 +235,17 @@ struct elf_segment_map
unsigned long p_flags;
/* Program segment physical address. */
bfd_vma p_paddr;
+ /* Program segment alignment. */
+ bfd_vma p_align;
/* Whether the p_flags field is valid; if not, the flags are based
on the section flags. */
unsigned int p_flags_valid : 1;
/* Whether the p_paddr field is valid; if not, the physical address
is based on the section lma values. */
unsigned int p_paddr_valid : 1;
+ /* Whether the p_align field is valid; if not, PT_LOAD segment
+ alignment is based on the default maximum page size. */
+ unsigned int p_align_valid : 1;
/* Whether this segment includes the file header. */
unsigned int includes_filehdr : 1;
/* Whether this segment includes the program headers. */