[PATCH 4.0/4 v3] MIPS/GAS: Propagate symbol attributes

Maciej W. Rozycki macro@codesourcery.com
Thu Dec 9 18:02:00 GMT 2010


On Thu, 9 Dec 2010, Richard Sandiford wrote:

> >  So it's not about whether we should treat these symbols as MIPS16 code
> > references or not, but to match the reality and not mislead the user into 
> > thinking standard MIPS code is being concerned.
> 
> You haven't answered my question, or at least not in a way that
> makes me understand it.  The testcase in your original message
> was a very artificial one, artificial enough that the correct
> disassembly is open to debate.  Do you have a real-world example
> of people writing code like this?

 OK, fair enough -- I did all kinds of weird assembly programming stuff in 
my life (mainly back in my MS-DOS days in early 1990s), so this kind of 
coding is nothing unusual to me, but no, I don't have a current real-world 
example that would absolutely require this kind of an arrangement to work.  
And I can understand your reluctance to make changes to generic parts of 
GAS for the lone purpose of getting things 100% right where that would 
hardly ever matter for anyone.

 Given code actually produced is already correct, I insist on including 
the test case itself though.  I'll see if I can make the disassembly right 
by interspersing the instructions with some otherwise unused labels.  
Would it be a solution that would satisfy you?

 Otherwise chances are the microMIPS change by its nature will fix the 
problem automatically -- I'll check that too before fiddling with the test 
case itself.  The thing is for the purpose of correct microMIPS 
disassembly Chao-ying was kind enough to provide a piece of code to scan 
the symbol table and see if a location is within the span of any function 
symbol with the microMIPS annotation present and switch to the microMIPS 
mode if so.  In the course of the recent rewrite I extended that approach 
to MIPS16 symbols as well.  I hope you agree that is reasonable too.

  Maciej



More information about the Binutils mailing list