This is the mail archive of the binutils@sources.redhat.com 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: MIPS gas relaxation still doesn't work


On Mon, Oct 14, 2002 at 02:58:04PM -0300, Alexandre Oliva wrote:
> On Oct 14, 2002, "H. J. Lu" <hjl@lucon.org> wrote:
> 
> > On Mon, Oct 14, 2002 at 02:43:26PM -0300, Alexandre Oliva wrote:
> >> On Oct 14, 2002, "H. J. Lu" <hjl@lucon.org> wrote:
> >> 
> >> > The problem here is when gcc fills the delay slot with nop, it kills
> >> > branch relaxation.
> >> 
> >> It wouldn't if only the delay slot was enclosed in .set nomacro.
> 
> > What do you mean by that?
> 
> Instead of:
> 
> .set noreorder
> .set nomacro
> b foo
> nop
> .set macro
> .set reorder
> 
> perhaps we could emit:
> 
> .set noreorder
> b foo
> .set nomacro
> nop
> .set macro
> .set reorder
> 
> 
> Since b foo wouldn't be affected by nomacro, branch relaxing could
> fix it up (the relaxations are delay-slot-safe).

Why do we need nop? Why do we need noreorder?


H.J.


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