[MIPS] fix CRT_CALL_STATIC_FUNCTION macro

Maciej W. Rozycki macro@linux-mips.org
Fri Feb 6 10:33:00 GMT 2015


On Thu, 5 Feb 2015, Petar Jovanovic wrote:

> > > This is a follow-up to a change [1] in glibc. It fixes the issue [2] 
> > > when jal can not reach a target in different region.
> > Is it not a problem that can be solved with rearranging the order of
> sections in output?
> 
> Is not this more clean solution to it? Otherwise we need to make sure that
> __do_global_ctors_aux and call to it from _init () are in the same region.

 I think you're right, JAL is not a PC-relative jump, so whether the 
target is in range or not will depend solely on the load address of the 
executable rather than the distance between a jump and its target.

 I also think it's best to include such observations right away along a 
patch submission so that reviewers do not have to wonder if the problem 
has been well understood and alternatives considered in cases like here 
where you clearly cause performance loss and code size growth.

 I have no further comments on your change; while I cannot approve it v2 
looks reasonable to me.  Thanks for your submission.

  Maciej



More information about the Gcc-patches mailing list