[PATCH] Fix DATA_SEGMENT_ALIGN
Jakub Jelinek
jakub@redhat.com
Mon Mar 4 07:21:00 GMT 2002
More information about the Binutils mailing list
Mon Mar 4 07:21:00 GMT 2002
- Previous message (by thread): [PATCH] SHF_MERGE fix
- Next message (by thread): [PATCH] Fix DATA_SEGMENT_ALIGN
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi! Somehow forgot to post this. If DATA_SEGMENT_ALIGN (X, Y); is not used in the linker script (e.g. because of -N), there is no point to use DATA_SEGMENT_END (). Ok to commit? 2002-02-15 Jakub Jelinek <jakub@redhat.com> * scripttempl/elf.sc: Only use DATA_SEGMENT_END() together with DATA_SEGMENT_ALIGN. --- ld/scripttempl/elf.sc.jj Tue Feb 12 15:10:29 2002 +++ ld/scripttempl/elf.sc Fri Feb 15 23:17:52 2002 @@ -70,9 +70,13 @@ if [ -z "$MACHINE" ]; then OUTPUT_ARCH=$ test -z "${ELFSIZE}" && ELFSIZE=32 test -z "${ALIGNMENT}" && ALIGNMENT="${ELFSIZE} / 8" test "$LD_FLAG" = "N" && DATA_ADDR=. +test -n "$CREATE_SHLIB" && test -n "$SHLIB_DATA_ADDR" && COMMONPAGESIZE="" +test -z "$CREATE_SHLIB" && test -n "$DATA_ADDR" && COMMONPAGESIZE="" DATA_SEGMENT_ALIGN="ALIGN(${MAXPAGESIZE}) + (. & (${MAXPAGESIZE} - 1))" -if [ -n "${COMMONPAGESIZE}" ]; then +DATA_SEGMENT_END="" +if test -n "${COMMONPAGESIZE}"; then DATA_SEGMENT_ALIGN="DATA_SEGMENT_ALIGN(${MAXPAGESIZE}, ${COMMONPAGESIZE})" + DATA_SEGMENT_END=". = DATA_SEGMENT_END (.);" fi INTERP=".interp ${RELOCATING-0} : { *(.interp) }" PLT=".plt ${RELOCATING-0} : { *(.plt) }" @@ -320,7 +324,7 @@ cat <<EOF ${RELOCATING+_end = .;} ${RELOCATING+${OTHER_BSS_END_SYMBOLS}} ${RELOCATING+PROVIDE (end = .);} - ${COMMONPAGESIZE+${RELOCATING+. = DATA_SEGMENT_END (.);}} + ${RELOCATING+${DATA_SEGMENT_END}} /* Stabs debugging sections. */ .stab 0 : { *(.stab) } Jakub
- Previous message (by thread): [PATCH] SHF_MERGE fix
- Next message (by thread): [PATCH] Fix DATA_SEGMENT_ALIGN
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list