Re: [PATCH] MIPS: dec: Avoid la pseudo-instruction in delay slots

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 20 Sep 2016, Ralf Baechle wrote:

> >  I take it it's a quest for a clean compilation with no warnings reported, 
> > as the message is otherwise harmless and correct code is produced here.
> > 
> >  Some of the systems affected are not necessarily fast (e.g. clocked at 
> > 12MHz), so I wonder if we shouldn't just bite the bullet and expand the 
> > %hi/%lo pair here.  Even with R4k DECstations we only support `-msym32' 
> > compilation only, due to R4k errata, so it's not like the higher parts 
> > will ever be needed for address calculation.
> > 
> >  Alternatively we could have a `.set warn'/`.set nowarn' setting in GAS, 
> > previously discussed I believe, although it would take a bit to propagate.
> 
> Yeah, I'm already looking into the other direction whenever this warning
> pops up - and it does so often.  I've even pondered submitting something
> like -Werror for gas ;-)

 Well, the GCC driver already handles it and catches warnings from GAS if 
requested, doesn't it?

> It's not very elegant but you could just open code everything, see below
> patch.  Compiles but not runtime tested due to lack of hardware.

 That's what I noted above and as also noted you only need the %hi/%lo 
variant due to the `-msym32' restriction for 64-bit DECstation kernels; 
the kernel is always linked to KSEG0.

 Alternatively for maximum safety perhaps we could define PTR_LA_EXPLICIT 
or suchlike with a suitable open-coded sequence for the pointer width 
chosen; note however that `-msym32' doesn't set any CPP's internal 
predefined macro, so we'd have to define our own to control this.

> Maciej, can you test this?

 I'll see what I can do; I've been travelling a lot lately.

  Maciej




[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux