This is the mail archive of the
mailing list for the binutils project.
Re: [applied mips patch] fix relax-swapN tests
At Mon, 26 Jan 2004 18:47:51 +0100 (CET), Maciej W. Rozycki wrote:
> I'm glad you've found a workaround for the objdump's inconsistency here
> -- for whatever reason it insisted to print "nop" at the end for a mips2
> object, while it printed "..." for a mips1 one. Thanks.
> Perhaps the inconsistency would be worth investigating...
Well, so, in general, it prints "nop" when it has one word (4 bytes)
of contiguous 0 in location (where it expects instructions), or "..."
when it has 2 or more words.
Typically what happens with these tests is that, depending on target,
they have different forced section alignments/paddings, e.g. some
pad/align to 16 bytes, some only to 4.
the disassembler will start dumping a new stream of instructions -- to
be interpreted as nop or ... -- after the last label (i don't
understand the mechanics, it just happens that way). So, the question
becomes, given alignment/padding enforced by the assembler, how many
words of 0 show up after the final label?
Without having looked, i'd guess that the final label's offset, hence
the amount of padding present after it, changes because of assembly
differences between mips1 and mips2.