diff options
-rw-r--r-- | ld/ChangeLog | 7 | ||||
-rw-r--r-- | ld/emulparams/elf64_aix.sh | 2 | ||||
-rw-r--r-- | ld/emulparams/elf64ppc.sh | 1 | ||||
-rw-r--r-- | ld/scripttempl/aix.sc | 2 |
4 files changed, 10 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 98e7d42..160a2d4 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2002-09-24 Alan Modra <amodra@bigpond.net.au> + + * emulparams/elf64ppc.sh (DATA_ADDR): Define. + * emulparams/elf64_aix.sh (DATA_ADDR): Don't use a fixed address + for start of .data, instead align up to 256M boundary. + * scripttempl/aix.sc: Likewise. + 2002-09-22 Mark Elbrecht <snowball3@softhome.net> * scripttempl/i386go32.sc: Handle bss unique sections. diff --git a/ld/emulparams/elf64_aix.sh b/ld/emulparams/elf64_aix.sh index 23ba731..df2b0aa 100644 --- a/ld/emulparams/elf64_aix.sh +++ b/ld/emulparams/elf64_aix.sh @@ -7,7 +7,7 @@ ARCH=ia64 MACHINE= MAXPAGESIZE=0x10000 TEXT_START_ADDR="0x10000000" -DATA_ADDR="0x20000000 + (. & (${MAXPAGESIZE} - 1))" +DATA_ADDR="ALIGN (0x10000000) + (. & (${MAXPAGESIZE} - 1))" GENERATE_SHLIB_SCRIPT=yes NOP=0x00300000010070000002000001000400 # a bundle full of nops OTHER_GOT_SECTIONS=" diff --git a/ld/emulparams/elf64ppc.sh b/ld/emulparams/elf64ppc.sh index 93a2a6a..7418555 100644 --- a/ld/emulparams/elf64ppc.sh +++ b/ld/emulparams/elf64ppc.sh @@ -5,6 +5,7 @@ GENERATE_SHLIB_SCRIPT=yes SCRIPT_NAME=elf OUTPUT_FORMAT="elf64-powerpc" TEXT_START_ADDR=0x10000000 +DATA_ADDR="ALIGN (0x10000000) + (. & (${MAXPAGESIZE} - 1))" MAXPAGESIZE=0x40000 COMMONPAGESIZE=0x1000 ARCH=powerpc:common64 diff --git a/ld/scripttempl/aix.sc b/ld/scripttempl/aix.sc index ce67f65..cdd3eac 100644 --- a/ld/scripttempl/aix.sc +++ b/ld/scripttempl/aix.sc @@ -24,7 +24,7 @@ SECTIONS *(.tb) ${RELOCATING+PROVIDE (_etext = .);} } - . = 0x20000000; + . = ALIGN (0x10000000); .data . : { ${RELOCATING+PROVIDE (_data = .);} *(.data) |