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: MIPS: Always emit "dla" for loading DImode addresses


At Mon, 16 Sep 2002 19:05:01 +0000 (UTC), "Maciej W. Rozycki" wrote:
>  There is a bug since at least 2.95.3 that leads to a "la" being
> incorrectly emitted for loading DImode addresses in certain cases.  Using
> a "la" in such a case makes gas print a warning about the macro being used
> in the 64-bit mode ("la used to load 64-bit address").  The following
> patch fixes the problem. It also corrects a minor spacing issue. 
> 
>  The patch was run-time tested with a current 2.95.4 snapshot by building
> a MIPS64/Linux kernel.  It applies cleanly to the CVS trunk.  Please
> apply.
> 
> 2002-09-16  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
> 
> 	* config/mips/mips.md (call_value_multiple_internal2): Emit a 
> 	"dla" for loading a DImode address.
> 	(leadi): Ditto.

Good to see somebody else has noticed this (and, in more places than I
did)...  I sent the following patch last February:

	http://gcc.gnu.org/ml/gcc-patches/2002-02/msg01250.html

but nothing ever happened with it and I mostly forgot about it.  (it
was on my "Big List of Pending Patches," but i didn't make time to
ping... and it was fixed in my sources.  8-)

Maciej, do you have any other test cases that would show the problem?

I like mine, but I don't know that it's the best one in the world...
a test case that used a 'normal' 64-bit ABI would be better.  8-)
(assuming none others are fortcoming, Eric, permission to check in
that one once i verify that it still "works"?)


cgd


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