This is the mail archive of the binutils@sourceware.org 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]

Re: ld/emulparams/sparc*.sh NOP missing in all but one file


On 05/26/2010 12:34 PM, Joel Sherrill wrote:
Hi,

I am noticing semi-random values for SPARC
executables when inserting nops for alignment
between methods.  Doing a grep, I see that
only one emulparams file for SPARC has a NOP
pattern

elf64_sparc.sh:NOP=0x01000000

Shouldn't the rest of the sparc files have this
also?

I have modified elf32_sparc.sh to add this line:

NOP=0x01000000

That is showing up as the =XXX fill pattern in the
ld scripts.  But it does not seem ld in binutils 2.20.1
is honoring it.  This is the disassembly from objdump.
Even the address for the call is bogus.

4000db40:       81 c7 e0 08     ret
4000db44:       81 e8 00 00     restore
4000db48:       40 00 dc 74     call  40044d18 <_end+0x268c0>
4000db4c:       40 00 dc 94     call  40044d9c <_end+0x26944>
4000db50:       40 00 dc 8c     call  40044d80 <_end+0x26928>
4000db54:       40 00 dc 8c     call  40044d84 <_end+0x2692c>
4000db58:       40 00 dc b4     call  40044e28 <_end+0x269d0>
4000db5c:       40 00 dc a8     call  40044dfc <_end+0x269a4>
4000db60:       40 00 dc cc     call  40044e90 <_end+0x26a38>

Any ideas on what to look for that might be going wrong?

--joel


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