This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: PowerPC PIC code addressibility tweak


David Edelsohn wrote:
> 
> >>>>> Segher Boessenkool writes:
> 
> Segher> What document did you take this from?  I could only find this in the
> Segher> Book E and in the 7450 UM, but both specifically say this is special
> Segher> cased only for
> 
> Segher> bcl     20,31,$+4
> 
> Segher> so your second patch won't help (as it uses $+8 instead).
> 
>         The recommendation is in the PowerPC Microprocessor Family
> Programming Environments book.  The example is for $+4, but the effect is
> not pushing the link register stack.  At worst, the new instruction is no
> worse than the former one.

That's true, of course.

Another idea: why not generate something like

	bl $+4 ; blr

(and do something smart for the second case).

That would leave the return stack intact always (but might be bad for
branch prediction?)


Segher



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