This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

fix alpha ld nop fill


I'd previously missed the fact that the fill string is always
big-endian, and thus the existing definition was incorrect.

Also take advantage of Alan's new arbitrary fill length to
emit unop+nop pairs, which runs slightly better on EV4s.  Not
that there are too many of those still running, but hey, it
doesn't hurt.

I applied a similar patch to the 2.12 branch, since even with
the 4 byte definition it was wrong there too.


r~

        * emulparams/elf64alpha.sh (NOP): Adjust for big-endian 
        definition.  Emit a unop+nop pair.

Index: emulparams/elf64alpha.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/elf64alpha.sh,v
retrieving revision 1.9
diff -c -p -d -r1.9 elf64alpha.sh
*** elf64alpha.sh	2002/02/12 14:50:07	1.9
--- elf64alpha.sh	2002/02/15 23:38:07
*************** ARCH=alpha
*** 11,17 ****
  MACHINE=
  GENERATE_SHLIB_SCRIPT=yes
  DATA_PLT=
! NOP=0x2ffe0000		# unop
  
  OTHER_READONLY_SECTIONS="
    .reginfo      ${RELOCATING-0} : { *(.reginfo) }"
--- 11,19 ----
  MACHINE=
  GENERATE_SHLIB_SCRIPT=yes
  DATA_PLT=
! # Note that the number is always big-endian, thus we have to 
! # reverse the digit string.
! NOP=0x0000fe2f1f04ff47		# unop; nop
  
  OTHER_READONLY_SECTIONS="
    .reginfo      ${RELOCATING-0} : { *(.reginfo) }"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]