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: [PATCH] MIPS/GAS: Fix DWARF-2 with branch swapping for MIPS16 code


"Maciej W. Rozycki" <macro@codesourcery.com> writes:
>> - this:
>> 
>> > +  Advance PC by 16 to 0x5c
>> 
>> depends on the target alignment of .text; it passes for GNU/Linux
>> targets but fails on ELF ones.  I think we should stub out the
>> exact numbers, since they're incidental to the test.
>
>  Hmm, does it?  I did verify it both on a GNU/Linux and an ELF target.  It 
> still passes for me, except that:
>
> +  Advance PC by 24 to 0x64
>
> is required instead as with my intended-to-be-sent-originally change.  
> Likewise:
>
> +  Advance PC by 23 to 0x40
>
> for the MIPS16 dump.  Which target is failing for you?  Perhaps the cause 
> was merely the outdated version of the change, sigh...

Ah, could be.  It was mips64-elf.  Maybe I'd got confused and the
original didn't pass for GNU/Linux after all.  Sorry about that.

>  I have regenerated and revalidated the change now and I'm ready to push 
> it, but I'd prefer the final DWARF-2 instructions to be matched exactly.  
> I made the effort to make the source alignment-agnostic and I'd prefer to 
> keep the final offsets to be verified literally so that any unexpected 
> discrepancies are caught.

Agreed.

> 2011-07-02  Maciej W. Rozycki  <macro@codesourcery.com>
>
> 	gas/
> 	* config/tc-mips.c (append_insn): Make sure DWARF-2 location
> 	information is properly adjusted for branches that get swapped.
>
> 	gas/testsuite/
> 	* gas/mips/loc-swap.d: New test case for DWARF-2 location with
> 	branch swapping.
> 	* gas/mips/loc-swap-dis.d: Likewise.
> 	* gas/mips/mips16\@loc-swap.d: Likewise, MIPS16 version.
> 	* gas/mips/mips16\@loc-swap-dis.d: Likewise.
> 	* gas/mips/loc-swap.s: Source for the new tests.
> 	* gas/mips/mips.exp: Run the new tests.

OK.

Richard


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