[PATCH] MIPS gas: wrong handling of .gpvalue

Thiemo Seufer ica2_ts@csv.ica.uni-stuttgart.de
Thu May 30 11:48:00 GMT 2002


Hi All,

The .gpvalue pseudo-op allows to define an GP relative offset
in NewABI code. It hasn't anything to do with the cpreturn offset.
This patch fixes it, but handling of anything else than the default
value is still missing.


Thiemo


2002-05-30  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	/gas/ChangeLog
	* config/tc-mips.c (mips_gprel_offset): New variable.
	(s_gpvalue): Use it.


--- source-orig/gas/config/tc-mips.c	Thu May 30 16:44:40 2002
+++ source/gas/config/tc-mips.c	Tue May 28 20:24:23 2002
@@ -423,6 +437,7 @@ static offsetT mips_cprestore_offset = -
 static offsetT mips_cpreturn_offset = -1;
 static int mips_cpreturn_register = -1;
 static int mips_gp_register = GP;
+static int mips_gprel_offset = 0;
 
 /* Whether mips_cprestore_offset has been set in the current function
    (or whether it has already been warned about, if not).  */
@@ -11791,7 +11997,7 @@ s_gpvalue (ignore)
       return;
     }
 
-  mips_cpreturn_offset = get_absolute_expression ();
+  mips_gprel_offset = get_absolute_expression ();
 
   demand_empty_rest_of_line ();
 }



More information about the Binutils mailing list