"Error: constant too large" on mips gas

Maciej W. Rozycki macro@linux-mips.org
Mon Apr 11 18:23:00 GMT 2005


On Sat, 9 Apr 2005, Eric Christopher wrote:

> If he doesn't I'll throw it on my list along with the unpredictable
> errors for the sb1.

 Well, I think I've got this finally resolved -- for 2.16, that is.  It 
turned out we should probably accept values with bits 63:32 all set -- 
otherwise negation may not work for certain ranges of constants.  Here's 
the implementation:

gas/:
2005-04-11  Maciej W. Rozycki  <macro@linux-mips.org>

        * config/tc-mips.c (IS_ZEXT_32BIT_NUM): New macro.
        (normalize_address_expr): New function to sign-extend address
        offsets that fit into 32 bits in 32-bit mode.
        (macro_build_ldst_constoffset): Use normalize_address_expr()
        instead of a handcoded sequence.
        (load_register): Likewise.  Report oversized numbers in a useful
        way.
        (macro) [ld_st, ldd_std]: Reject all oversized offsets, not only
        for constant addresses.  Report oversized numbers in a useful way.
        (mips_ip): Use normalize_address_expr() for addresses.

gas/testsuite/:
2005-04-11  Maciej W. Rozycki  <macro@linux-mips.org>

        * gas/mips/ldstla-32.s: Exclude offsets that are now meant to fail
        and include more instructions/offsets that are meant to succeed.
        Use $4 instead $3 to avoid register dependencies.
        * gas/mips/ldstla-32.d: Update accordingly.
        * gas/mips/ldstla-32-shared.d: Likewise.
	* gas/mips/ldstla-32-mips3.d: New test based on the above, except 
	for mips3.
	* gas/mips/ldstla-32-mips3-shared.d: Similarly, for PIC.
	* gas/mips/ldstla-32-mips3.s: Source for the new tests.
        * gas/mips/ldstla-32-1.s: New test for offsets that are meant to
        fail.
	* gas/mips/ldstla-32-mips3-1.s: Likewise, for mips3.
        * gas/mips/ldstla-32-1.l: Stderr output for the new test.
	* gas/mips/ldstla-32-mips3-1.l: Likewise.
        * gas/mips/mips.exp: Run the new tests.

 I've tested it with mips64el-linux-gnu with no regressions.  OK to apply?

 I haven't updated documentation though, as I consider it a short-term 
hack for 2.16 only.  For 2.17, I think expr() should be modified to be 
able to do signed arithmetic/logic and perform operations modulo (1 << n), 
at least for reasonable values of n.  Therefore only that implementation 
would be able to specify the desired number ranges accepted rather than 
accept what happens to be implemented.

 Does it sound reasonable?  I hope so.

  Maciej

binutils-2.15.96-20050331-mips-gas-normalize.patch
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/config/tc-mips.c binutils-2.15.96-20050331/gas/config/tc-mips.c
--- binutils-2.15.96-20050331.macro/gas/config/tc-mips.c	2005-03-22 04:25:33.000000000 +0000
+++ binutils-2.15.96-20050331/gas/config/tc-mips.c	2005-04-11 18:03:55.000000000 +0000
@@ -861,6 +861,11 @@ static int mips_relax_branch;
   (((x) &~ (offsetT) 0x7fff) == 0					\
    || (((x) &~ (offsetT) 0x7fff) == ~ (offsetT) 0x7fff))
 
+/* Is the given value a zero-extended 32-bit value?  Or a negated one?  */
+#define IS_ZEXT_32BIT_NUM(x)						\
+  (((x) &~ (offsetT) 0xffffffff) == 0					\
+   || (((x) &~ (offsetT) 0xffffffff) == ~ (offsetT) 0xffffffff))
+
 /* Replace bits MASK << SHIFT of STRUCT with the equivalent bits in
    VALUE << SHIFT.  VALUE is evaluated exactly once.  */
 #define INSERT_BITS(STRUCT, VALUE, MASK, SHIFT) \
@@ -3253,6 +3258,33 @@ mips16_macro_build (expressionS *ep, con
   append_insn (&insn, ep, r);
 }
 
+static void
+/*
+ * Sign-extend 32-bit mode constants that have bit 31 set and all
+ * higher bits unset.
+ */
+normalize_constant_expr (expressionS *ex)
+{
+  if ((ex->X_op == O_constant && HAVE_32BIT_GPRS)
+      && IS_ZEXT_32BIT_NUM (ex->X_add_number))
+    ex->X_add_number = (((ex->X_add_number & 0xffffffff) ^ 0x80000000)
+			- 0x80000000);
+}
+
+/*
+ * Sign-extend 32-bit mode address offsets that have bit 31 set and
+ * all higher bits unset.
+ */
+static void
+normalize_address_expr (expressionS *ex)
+{
+  if (((ex->X_op == O_constant && HAVE_32BIT_ADDRESSES)
+	|| (ex->X_op == O_symbol && HAVE_32BIT_SYMBOLS))
+      && IS_ZEXT_32BIT_NUM (ex->X_add_number))
+    ex->X_add_number = (((ex->X_add_number & 0xffffffff) ^ 0x80000000)
+			- 0x80000000);
+}
+
 /*
  * Generate a "jalr" instruction with a relocation hint to the called
  * function.  This occurs in NewABI PIC code.
@@ -3338,15 +3370,8 @@ macro_build_ldst_constoffset (expression
   assert (ep->X_op == O_constant);
 
   /* Sign-extending 32-bit constants makes their handling easier.  */
-  if (! dbl && ! ((ep->X_add_number & ~((bfd_vma) 0x7fffffff))
-		  == ~((bfd_vma) 0x7fffffff)))
-    {
-      if (ep->X_add_number & ~((bfd_vma) 0xffffffff))
-	as_bad (_("constant too large"));
-
-      ep->X_add_number = (((ep->X_add_number & 0xffffffff) ^ 0x80000000)
-			  - 0x80000000);
-    }
+  if (!dbl)
+    normalize_constant_expr (ep);
 
   /* Right now, this routine can only handle signed 32-bit constants.  */
   if (! IS_SEXT_32BIT_NUM(ep->X_add_number + 0x8000))
@@ -3392,14 +3417,6 @@ set_at (int reg, int unsignedp)
     }
 }
 
-static void
-normalize_constant_expr (expressionS *ex)
-{
-  if (ex->X_op == O_constant && HAVE_32BIT_GPRS)
-    ex->X_add_number = (((ex->X_add_number & 0xffffffff) ^ 0x80000000)
-			- 0x80000000);
-}
-
 /* Warn if an expression is not a constant.  */
 
 static void
@@ -3504,15 +3521,8 @@ load_register (int reg, expressionS *ep,
       assert (ep->X_op == O_constant);
 
       /* Sign-extending 32-bit constants makes their handling easier.  */
-      if (! dbl && ! ((ep->X_add_number & ~((bfd_vma) 0x7fffffff))
-		      == ~((bfd_vma) 0x7fffffff)))
-	{
-	  if (ep->X_add_number & ~((bfd_vma) 0xffffffff))
-	    as_bad (_("constant too large"));
-
-	  ep->X_add_number = (((ep->X_add_number & 0xffffffff) ^ 0x80000000)
-			      - 0x80000000);
-	}
+      if (!dbl)
+	normalize_constant_expr (ep);
 
       if (IS_SEXT_16BIT_NUM (ep->X_add_number))
 	{
@@ -3541,10 +3551,11 @@ load_register (int reg, expressionS *ep,
 
   /* The value is larger than 32 bits.  */
 
-  if (HAVE_32BIT_GPRS)
+  if (!dbl || HAVE_32BIT_GPRS)
     {
-      as_bad (_("Number (0x%lx) larger than 32 bits"),
-	      (unsigned long) ep->X_add_number);
+      as_bad (_("Number (0x%lx%08lx) larger than 32 bits"),
+	      (unsigned long) (ep->X_add_number >> 32),
+	      (unsigned long) (ep->X_add_number & 0xffffffff));
       macro_build (ep, "addiu", "t,r,j", reg, 0, BFD_RELOC_LO16);
       return;
     }
@@ -5785,16 +5796,19 @@ macro (struct mips_cl_insn *ip)
 	  offset_expr.X_op = O_constant;
 	}
 
+      if (HAVE_32BIT_ADDRESSES
+	  && !IS_SEXT_32BIT_NUM (offset_expr.X_add_number))
+	as_bad (_("Number (0x%lx%08lx) larger than 32 bits"),
+		(unsigned long) (offset_expr.X_add_number >> 32),
+		(unsigned long) (offset_expr.X_add_number & 0xffffffff));
+
       /* A constant expression in PIC code can be handled just as it
 	 is in non PIC code.  */
       if (offset_expr.X_op == O_constant)
 	{
-	  if (HAVE_32BIT_ADDRESSES
-	      && !IS_SEXT_32BIT_NUM (offset_expr.X_add_number))
-	    as_bad (_("constant too large"));
-
 	  expr1.X_add_number = ((offset_expr.X_add_number + 0x8000)
 				& ~(bfd_vma) 0xffff);
+	  normalize_address_expr (&expr1);
 	  load_register (tempreg, &expr1, HAVE_64BIT_ADDRESSES);
 	  if (breg != 0)
 	    macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
@@ -6373,6 +6387,12 @@ macro (struct mips_cl_insn *ip)
 	  offset_expr.X_op = O_constant;
 	}
 
+      if (HAVE_32BIT_ADDRESSES
+	  && !IS_SEXT_32BIT_NUM (offset_expr.X_add_number))
+	as_bad (_("Number (0x%lx%08lx) larger than 32 bits"),
+		(unsigned long) (offset_expr.X_add_number >> 32),
+		(unsigned long) (offset_expr.X_add_number & 0xffffffff));
+
       /* Even on a big endian machine $fn comes before $fn+1.  We have
 	 to adjust when loading from memory.  We set coproc if we must
 	 load $fn+1 first.  */
@@ -8556,6 +8576,7 @@ do_msbd:
 
 	    case 'A':
 	      my_getExpression (&offset_expr, s);
+	      normalize_address_expr (&offset_expr);
 	      *imm_reloc = BFD_RELOC_32;
 	      s = expr_end;
 	      continue;
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-1.l binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-1.l
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-1.l	1970-01-01 00:00:00.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-1.l	2005-04-11 17:29:47.000000000 +0000
@@ -0,0 +1,81 @@
+.*: Assembler messages:
+.*:3: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:4: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:5: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:6: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:7: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:8: Error: Number \(0x100000000\) larger than 32 bits
+.*:10: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:11: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:12: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:13: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:14: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:15: Error: Number \(0x100000000\) larger than 32 bits
+.*:17: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:18: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:19: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:20: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:21: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:22: Error: Number \(0x100000000\) larger than 32 bits
+.*:24: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:25: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:26: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:27: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:28: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:29: Error: Number \(0x100000000\) larger than 32 bits
+.*:31: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:32: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:32: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:33: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:33: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:34: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:34: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:35: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:35: Error: Number \(0x200000000\) larger than 32 bits
+.*:36: Error: Number \(0x100000000\) larger than 32 bits
+.*:36: Error: Number \(0x100000000\) larger than 32 bits
+.*:38: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:39: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:39: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:40: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:40: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:41: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:41: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:42: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:42: Error: Number \(0x200000000\) larger than 32 bits
+.*:43: Error: Number \(0x100000000\) larger than 32 bits
+.*:43: Error: Number \(0x100000000\) larger than 32 bits
+.*:45: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:46: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:46: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:47: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:47: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:48: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:48: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:49: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:49: Error: Number \(0x200000000\) larger than 32 bits
+.*:50: Error: Number \(0x100000000\) larger than 32 bits
+.*:50: Error: Number \(0x100000000\) larger than 32 bits
+.*:52: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:53: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:53: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:54: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:54: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:55: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:55: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:56: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:56: Error: Number \(0x200000000\) larger than 32 bits
+.*:57: Error: Number \(0x100000000\) larger than 32 bits
+.*:57: Error: Number \(0x100000000\) larger than 32 bits
+.*:59: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:60: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:61: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:62: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:63: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:64: Error: Number \(0x100000000\) larger than 32 bits
+.*:66: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:67: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:68: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:69: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:70: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:71: Error: Number \(0x100000000\) larger than 32 bits
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-1.s binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-1.s
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-1.s	1970-01-01 00:00:00.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-1.s	2005-04-11 16:45:58.000000000 +0000
@@ -0,0 +1,73 @@
+
+	.text
+	ld $2, 0xfffffffeffffffff($4)
+	ld $2, 0xfffffffe00000000($4)
+	ld $2, 0xabcdef0123456789($4)
+	ld $2, 0x0123456789abcdef($4)
+	ld $2, 0x00000001ffffffff($4)
+	ld $2, 0x0000000100000000($4)
+
+	ld $2, 0xfffffffeffffffff
+	ld $2, 0xfffffffe00000000
+	ld $2, 0xabcdef0123456789
+	ld $2, 0x0123456789abcdef
+	ld $2, 0x00000001ffffffff
+	ld $2, 0x0000000100000000
+
+	sd $2, 0xfffffffeffffffff($4)
+	sd $2, 0xfffffffe00000000($4)
+	sd $2, 0xabcdef0123456789($4)
+	sd $2, 0x0123456789abcdef($4)
+	sd $2, 0x00000001ffffffff($4)
+	sd $2, 0x0000000100000000($4)
+
+	sd $2, 0xfffffffeffffffff
+	sd $2, 0xfffffffe00000000
+	sd $2, 0xabcdef0123456789
+	sd $2, 0x0123456789abcdef
+	sd $2, 0x00000001ffffffff
+	sd $2, 0x0000000100000000
+
+	lw $2, 0xfffffffeffffffff($4)
+	lw $2, 0xfffffffe00000000($4)
+	lw $2, 0xabcdef0123456789($4)
+	lw $2, 0x0123456789abcdef($4)
+	lw $2, 0x00000001ffffffff($4)
+	lw $2, 0x0000000100000000($4)
+
+	lw $2, 0xfffffffeffffffff
+	lw $2, 0xfffffffe00000000
+	lw $2, 0xabcdef0123456789
+	lw $2, 0x0123456789abcdef
+	lw $2, 0x00000001ffffffff
+	lw $2, 0x0000000100000000
+
+	sw $2, 0xfffffffeffffffff($4)
+	sw $2, 0xfffffffe00000000($4)
+	sw $2, 0xabcdef0123456789($4)
+	sw $2, 0x0123456789abcdef($4)
+	sw $2, 0x00000001ffffffff($4)
+	sw $2, 0x0000000100000000($4)
+
+	sw $2, 0xfffffffeffffffff
+	sw $2, 0xfffffffe00000000
+	sw $2, 0xabcdef0123456789
+	sw $2, 0x0123456789abcdef
+	sw $2, 0x00000001ffffffff
+	sw $2, 0x0000000100000000
+
+	la $2, 0xfffffffeffffffff($4)
+	la $2, 0xfffffffe00000000($4)
+	la $2, 0xabcdef0123456789($4)
+	la $2, 0x0123456789abcdef($4)
+	la $2, 0x00000001ffffffff($4)
+	la $2, 0x0000000100000000($4)
+
+	la $2, 0xfffffffeffffffff
+	la $2, 0xfffffffe00000000
+	la $2, 0xabcdef0123456789
+	la $2, 0x0123456789abcdef
+	la $2, 0x00000001ffffffff
+	la $2, 0x0000000100000000
+
+	.space 8
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3-1.l binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3-1.l
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3-1.l	1970-01-01 00:00:00.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3-1.l	2005-04-11 18:16:45.000000000 +0000
@@ -0,0 +1,101 @@
+.*: Assembler messages:
+.*:3: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:4: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:4: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:5: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:5: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:6: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:6: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:7: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:7: Error: Number \(0x200000000\) larger than 32 bits
+.*:8: Error: Number \(0x100000000\) larger than 32 bits
+.*:8: Error: Number \(0x100000000\) larger than 32 bits
+.*:10: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:11: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:11: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:12: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:12: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:13: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:13: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:14: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:14: Error: Number \(0x200000000\) larger than 32 bits
+.*:15: Error: Number \(0x100000000\) larger than 32 bits
+.*:15: Error: Number \(0x100000000\) larger than 32 bits
+.*:17: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:18: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:18: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:19: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:19: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:20: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:20: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:21: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:21: Error: Number \(0x200000000\) larger than 32 bits
+.*:22: Error: Number \(0x100000000\) larger than 32 bits
+.*:22: Error: Number \(0x100000000\) larger than 32 bits
+.*:24: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:25: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:25: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:26: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:26: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:27: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:27: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:28: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:28: Error: Number \(0x200000000\) larger than 32 bits
+.*:29: Error: Number \(0x100000000\) larger than 32 bits
+.*:29: Error: Number \(0x100000000\) larger than 32 bits
+.*:31: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:32: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:32: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:33: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:33: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:34: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:34: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:35: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:35: Error: Number \(0x200000000\) larger than 32 bits
+.*:36: Error: Number \(0x100000000\) larger than 32 bits
+.*:36: Error: Number \(0x100000000\) larger than 32 bits
+.*:38: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:39: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:39: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:40: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:40: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:41: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:41: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:42: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:42: Error: Number \(0x200000000\) larger than 32 bits
+.*:43: Error: Number \(0x100000000\) larger than 32 bits
+.*:43: Error: Number \(0x100000000\) larger than 32 bits
+.*:45: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:46: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:46: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:47: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:47: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:48: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:48: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:49: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:49: Error: Number \(0x200000000\) larger than 32 bits
+.*:50: Error: Number \(0x100000000\) larger than 32 bits
+.*:50: Error: Number \(0x100000000\) larger than 32 bits
+.*:52: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:53: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:53: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:54: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:54: Error: Number \(0xabcdef0123450000\) larger than 32 bits
+.*:55: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:55: Error: Number \(0x123456789ac0000\) larger than 32 bits
+.*:56: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:56: Error: Number \(0x200000000\) larger than 32 bits
+.*:57: Error: Number \(0x100000000\) larger than 32 bits
+.*:57: Error: Number \(0x100000000\) larger than 32 bits
+.*:59: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:60: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:61: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:62: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:63: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:64: Error: Number \(0x100000000\) larger than 32 bits
+.*:66: Error: Number \(0xfffffffeffffffff\) larger than 32 bits
+.*:67: Error: Number \(0xfffffffe00000000\) larger than 32 bits
+.*:68: Error: Number \(0xabcdef0123456789\) larger than 32 bits
+.*:69: Error: Number \(0x123456789abcdef\) larger than 32 bits
+.*:70: Error: Number \(0x1ffffffff\) larger than 32 bits
+.*:71: Error: Number \(0x100000000\) larger than 32 bits
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3-1.s binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3-1.s
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3-1.s	1970-01-01 00:00:00.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3-1.s	2005-04-11 16:46:05.000000000 +0000
@@ -0,0 +1,73 @@
+	.set	mips3
+	.text
+	ld $2, 0xfffffffeffffffff($4)
+	ld $2, 0xfffffffe00000000($4)
+	ld $2, 0xabcdef0123456789($4)
+	ld $2, 0x0123456789abcdef($4)
+	ld $2, 0x00000001ffffffff($4)
+	ld $2, 0x0000000100000000($4)
+
+	ld $2, 0xfffffffeffffffff
+	ld $2, 0xfffffffe00000000
+	ld $2, 0xabcdef0123456789
+	ld $2, 0x0123456789abcdef
+	ld $2, 0x00000001ffffffff
+	ld $2, 0x0000000100000000
+
+	sd $2, 0xfffffffeffffffff($4)
+	sd $2, 0xfffffffe00000000($4)
+	sd $2, 0xabcdef0123456789($4)
+	sd $2, 0x0123456789abcdef($4)
+	sd $2, 0x00000001ffffffff($4)
+	sd $2, 0x0000000100000000($4)
+
+	sd $2, 0xfffffffeffffffff
+	sd $2, 0xfffffffe00000000
+	sd $2, 0xabcdef0123456789
+	sd $2, 0x0123456789abcdef
+	sd $2, 0x00000001ffffffff
+	sd $2, 0x0000000100000000
+
+	lw $2, 0xfffffffeffffffff($4)
+	lw $2, 0xfffffffe00000000($4)
+	lw $2, 0xabcdef0123456789($4)
+	lw $2, 0x0123456789abcdef($4)
+	lw $2, 0x00000001ffffffff($4)
+	lw $2, 0x0000000100000000($4)
+
+	lw $2, 0xfffffffeffffffff
+	lw $2, 0xfffffffe00000000
+	lw $2, 0xabcdef0123456789
+	lw $2, 0x0123456789abcdef
+	lw $2, 0x00000001ffffffff
+	lw $2, 0x0000000100000000
+
+	sw $2, 0xfffffffeffffffff($4)
+	sw $2, 0xfffffffe00000000($4)
+	sw $2, 0xabcdef0123456789($4)
+	sw $2, 0x0123456789abcdef($4)
+	sw $2, 0x00000001ffffffff($4)
+	sw $2, 0x0000000100000000($4)
+
+	sw $2, 0xfffffffeffffffff
+	sw $2, 0xfffffffe00000000
+	sw $2, 0xabcdef0123456789
+	sw $2, 0x0123456789abcdef
+	sw $2, 0x00000001ffffffff
+	sw $2, 0x0000000100000000
+
+	la $2, 0xfffffffeffffffff($4)
+	la $2, 0xfffffffe00000000($4)
+	la $2, 0xabcdef0123456789($4)
+	la $2, 0x0123456789abcdef($4)
+	la $2, 0x00000001ffffffff($4)
+	la $2, 0x0000000100000000($4)
+
+	la $2, 0xfffffffeffffffff
+	la $2, 0xfffffffe00000000
+	la $2, 0xabcdef0123456789
+	la $2, 0x0123456789abcdef
+	la $2, 0x00000001ffffffff
+	la $2, 0x0000000100000000
+
+	.space 8
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d	1970-01-01 00:00:00.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d	2005-04-11 18:11:30.000000000 +0000
@@ -0,0 +1,271 @@
+#objdump: -d -mmips:4000
+#as: -KPIC -mabi=32
+#name: MIPS ld-st-la constants (ABI o32, mips3, shared)
+#source: ldstla-32-mips3.s
+
+.*: +file format elf32-.*mips
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	dc82ffff 	ld	v0,-1\(a0\)
+   4:	3c02abce 	lui	v0,0xabce
+   8:	00441021 	addu	v0,v0,a0
+   c:	dc42ef01 	ld	v0,-4351\(v0\)
+  10:	3c028000 	lui	v0,0x8000
+  14:	00441021 	addu	v0,v0,a0
+  18:	dc420000 	ld	v0,0\(v0\)
+  1c:	3c028000 	lui	v0,0x8000
+  20:	00441021 	addu	v0,v0,a0
+  24:	dc42ffff 	ld	v0,-1\(v0\)
+  28:	3c020123 	lui	v0,0x123
+  2c:	00441021 	addu	v0,v0,a0
+  30:	dc424567 	ld	v0,17767\(v0\)
+  34:	24020000 	li	v0,0
+  38:	00441021 	addu	v0,v0,a0
+  3c:	dc420000 	ld	v0,0\(v0\)
+  40:	24020000 	li	v0,0
+  44:	00441021 	addu	v0,v0,a0
+  48:	dc42ffff 	ld	v0,-1\(v0\)
+  4c:	3c02abce 	lui	v0,0xabce
+  50:	00441021 	addu	v0,v0,a0
+  54:	dc42ef01 	ld	v0,-4351\(v0\)
+  58:	3c028000 	lui	v0,0x8000
+  5c:	00441021 	addu	v0,v0,a0
+  60:	dc420000 	ld	v0,0\(v0\)
+  64:	3c028000 	lui	v0,0x8000
+  68:	00441021 	addu	v0,v0,a0
+  6c:	dc42ffff 	ld	v0,-1\(v0\)
+  70:	3c020123 	lui	v0,0x123
+  74:	00441021 	addu	v0,v0,a0
+  78:	dc424567 	ld	v0,17767\(v0\)
+  7c:	dc820000 	ld	v0,0\(a0\)
+  80:	dc02ffff 	ld	v0,-1\(zero\)
+  84:	3c02abce 	lui	v0,0xabce
+  88:	dc42ef01 	ld	v0,-4351\(v0\)
+  8c:	3c028000 	lui	v0,0x8000
+  90:	dc420000 	ld	v0,0\(v0\)
+  94:	3c028000 	lui	v0,0x8000
+  98:	dc42ffff 	ld	v0,-1\(v0\)
+  9c:	3c020123 	lui	v0,0x123
+  a0:	dc424567 	ld	v0,17767\(v0\)
+  a4:	24020000 	li	v0,0
+  a8:	dc420000 	ld	v0,0\(v0\)
+  ac:	24020000 	li	v0,0
+  b0:	dc42ffff 	ld	v0,-1\(v0\)
+  b4:	3c02abce 	lui	v0,0xabce
+  b8:	dc42ef01 	ld	v0,-4351\(v0\)
+  bc:	3c028000 	lui	v0,0x8000
+  c0:	dc420000 	ld	v0,0\(v0\)
+  c4:	3c028000 	lui	v0,0x8000
+  c8:	dc42ffff 	ld	v0,-1\(v0\)
+  cc:	3c020123 	lui	v0,0x123
+  d0:	dc424567 	ld	v0,17767\(v0\)
+  d4:	dc020000 	ld	v0,0\(zero\)
+  d8:	fc82ffff 	sd	v0,-1\(a0\)
+  dc:	3c01abce 	lui	at,0xabce
+  e0:	00240821 	addu	at,at,a0
+  e4:	fc22ef01 	sd	v0,-4351\(at\)
+  e8:	3c018000 	lui	at,0x8000
+  ec:	00240821 	addu	at,at,a0
+  f0:	fc220000 	sd	v0,0\(at\)
+  f4:	3c018000 	lui	at,0x8000
+  f8:	00240821 	addu	at,at,a0
+  fc:	fc22ffff 	sd	v0,-1\(at\)
+ 100:	3c010123 	lui	at,0x123
+ 104:	00240821 	addu	at,at,a0
+ 108:	fc224567 	sd	v0,17767\(at\)
+ 10c:	24010000 	li	at,0
+ 110:	00240821 	addu	at,at,a0
+ 114:	fc220000 	sd	v0,0\(at\)
+ 118:	24010000 	li	at,0
+ 11c:	00240821 	addu	at,at,a0
+ 120:	fc22ffff 	sd	v0,-1\(at\)
+ 124:	3c01abce 	lui	at,0xabce
+ 128:	00240821 	addu	at,at,a0
+ 12c:	fc22ef01 	sd	v0,-4351\(at\)
+ 130:	3c018000 	lui	at,0x8000
+ 134:	00240821 	addu	at,at,a0
+ 138:	fc220000 	sd	v0,0\(at\)
+ 13c:	3c018000 	lui	at,0x8000
+ 140:	00240821 	addu	at,at,a0
+ 144:	fc22ffff 	sd	v0,-1\(at\)
+ 148:	3c010123 	lui	at,0x123
+ 14c:	00240821 	addu	at,at,a0
+ 150:	fc224567 	sd	v0,17767\(at\)
+ 154:	fc820000 	sd	v0,0\(a0\)
+ 158:	fc02ffff 	sd	v0,-1\(zero\)
+ 15c:	3c01abce 	lui	at,0xabce
+ 160:	fc22ef01 	sd	v0,-4351\(at\)
+ 164:	3c018000 	lui	at,0x8000
+ 168:	fc220000 	sd	v0,0\(at\)
+ 16c:	3c018000 	lui	at,0x8000
+ 170:	fc22ffff 	sd	v0,-1\(at\)
+ 174:	3c010123 	lui	at,0x123
+ 178:	fc224567 	sd	v0,17767\(at\)
+ 17c:	24010000 	li	at,0
+ 180:	fc220000 	sd	v0,0\(at\)
+ 184:	24010000 	li	at,0
+ 188:	fc22ffff 	sd	v0,-1\(at\)
+ 18c:	3c01abce 	lui	at,0xabce
+ 190:	fc22ef01 	sd	v0,-4351\(at\)
+ 194:	3c018000 	lui	at,0x8000
+ 198:	fc220000 	sd	v0,0\(at\)
+ 19c:	3c018000 	lui	at,0x8000
+ 1a0:	fc22ffff 	sd	v0,-1\(at\)
+ 1a4:	3c010123 	lui	at,0x123
+ 1a8:	fc224567 	sd	v0,17767\(at\)
+ 1ac:	fc020000 	sd	v0,0\(zero\)
+ 1b0:	8c82ffff 	lw	v0,-1\(a0\)
+ 1b4:	3c02abce 	lui	v0,0xabce
+ 1b8:	00441021 	addu	v0,v0,a0
+ 1bc:	8c42ef01 	lw	v0,-4351\(v0\)
+ 1c0:	3c028000 	lui	v0,0x8000
+ 1c4:	00441021 	addu	v0,v0,a0
+ 1c8:	8c420000 	lw	v0,0\(v0\)
+ 1cc:	3c028000 	lui	v0,0x8000
+ 1d0:	00441021 	addu	v0,v0,a0
+ 1d4:	8c42ffff 	lw	v0,-1\(v0\)
+ 1d8:	3c020123 	lui	v0,0x123
+ 1dc:	00441021 	addu	v0,v0,a0
+ 1e0:	8c424567 	lw	v0,17767\(v0\)
+ 1e4:	24020000 	li	v0,0
+ 1e8:	00441021 	addu	v0,v0,a0
+ 1ec:	8c420000 	lw	v0,0\(v0\)
+ 1f0:	24020000 	li	v0,0
+ 1f4:	00441021 	addu	v0,v0,a0
+ 1f8:	8c42ffff 	lw	v0,-1\(v0\)
+ 1fc:	3c02abce 	lui	v0,0xabce
+ 200:	00441021 	addu	v0,v0,a0
+ 204:	8c42ef01 	lw	v0,-4351\(v0\)
+ 208:	3c028000 	lui	v0,0x8000
+ 20c:	00441021 	addu	v0,v0,a0
+ 210:	8c420000 	lw	v0,0\(v0\)
+ 214:	3c028000 	lui	v0,0x8000
+ 218:	00441021 	addu	v0,v0,a0
+ 21c:	8c42ffff 	lw	v0,-1\(v0\)
+ 220:	3c020123 	lui	v0,0x123
+ 224:	00441021 	addu	v0,v0,a0
+ 228:	8c424567 	lw	v0,17767\(v0\)
+ 22c:	8c820000 	lw	v0,0\(a0\)
+ 230:	8c02ffff 	lw	v0,-1\(zero\)
+ 234:	3c02abce 	lui	v0,0xabce
+ 238:	8c42ef01 	lw	v0,-4351\(v0\)
+ 23c:	3c028000 	lui	v0,0x8000
+ 240:	8c420000 	lw	v0,0\(v0\)
+ 244:	3c028000 	lui	v0,0x8000
+ 248:	8c42ffff 	lw	v0,-1\(v0\)
+ 24c:	3c020123 	lui	v0,0x123
+ 250:	8c424567 	lw	v0,17767\(v0\)
+ 254:	24020000 	li	v0,0
+ 258:	8c420000 	lw	v0,0\(v0\)
+ 25c:	24020000 	li	v0,0
+ 260:	8c42ffff 	lw	v0,-1\(v0\)
+ 264:	3c02abce 	lui	v0,0xabce
+ 268:	8c42ef01 	lw	v0,-4351\(v0\)
+ 26c:	3c028000 	lui	v0,0x8000
+ 270:	8c420000 	lw	v0,0\(v0\)
+ 274:	3c028000 	lui	v0,0x8000
+ 278:	8c42ffff 	lw	v0,-1\(v0\)
+ 27c:	3c020123 	lui	v0,0x123
+ 280:	8c424567 	lw	v0,17767\(v0\)
+ 284:	8c020000 	lw	v0,0\(zero\)
+ 288:	ac82ffff 	sw	v0,-1\(a0\)
+ 28c:	3c01abce 	lui	at,0xabce
+ 290:	00240821 	addu	at,at,a0
+ 294:	ac22ef01 	sw	v0,-4351\(at\)
+ 298:	3c018000 	lui	at,0x8000
+ 29c:	00240821 	addu	at,at,a0
+ 2a0:	ac220000 	sw	v0,0\(at\)
+ 2a4:	3c018000 	lui	at,0x8000
+ 2a8:	00240821 	addu	at,at,a0
+ 2ac:	ac22ffff 	sw	v0,-1\(at\)
+ 2b0:	3c010123 	lui	at,0x123
+ 2b4:	00240821 	addu	at,at,a0
+ 2b8:	ac224567 	sw	v0,17767\(at\)
+ 2bc:	24010000 	li	at,0
+ 2c0:	00240821 	addu	at,at,a0
+ 2c4:	ac220000 	sw	v0,0\(at\)
+ 2c8:	24010000 	li	at,0
+ 2cc:	00240821 	addu	at,at,a0
+ 2d0:	ac22ffff 	sw	v0,-1\(at\)
+ 2d4:	3c01abce 	lui	at,0xabce
+ 2d8:	00240821 	addu	at,at,a0
+ 2dc:	ac22ef01 	sw	v0,-4351\(at\)
+ 2e0:	3c018000 	lui	at,0x8000
+ 2e4:	00240821 	addu	at,at,a0
+ 2e8:	ac220000 	sw	v0,0\(at\)
+ 2ec:	3c018000 	lui	at,0x8000
+ 2f0:	00240821 	addu	at,at,a0
+ 2f4:	ac22ffff 	sw	v0,-1\(at\)
+ 2f8:	3c010123 	lui	at,0x123
+ 2fc:	00240821 	addu	at,at,a0
+ 300:	ac224567 	sw	v0,17767\(at\)
+ 304:	ac820000 	sw	v0,0\(a0\)
+ 308:	ac02ffff 	sw	v0,-1\(zero\)
+ 30c:	3c01abce 	lui	at,0xabce
+ 310:	ac22ef01 	sw	v0,-4351\(at\)
+ 314:	3c018000 	lui	at,0x8000
+ 318:	ac220000 	sw	v0,0\(at\)
+ 31c:	3c018000 	lui	at,0x8000
+ 320:	ac22ffff 	sw	v0,-1\(at\)
+ 324:	3c010123 	lui	at,0x123
+ 328:	ac224567 	sw	v0,17767\(at\)
+ 32c:	24010000 	li	at,0
+ 330:	ac220000 	sw	v0,0\(at\)
+ 334:	24010000 	li	at,0
+ 338:	ac22ffff 	sw	v0,-1\(at\)
+ 33c:	3c01abce 	lui	at,0xabce
+ 340:	ac22ef01 	sw	v0,-4351\(at\)
+ 344:	3c018000 	lui	at,0x8000
+ 348:	ac220000 	sw	v0,0\(at\)
+ 34c:	3c018000 	lui	at,0x8000
+ 350:	ac22ffff 	sw	v0,-1\(at\)
+ 354:	3c010123 	lui	at,0x123
+ 358:	ac224567 	sw	v0,17767\(at\)
+ 35c:	ac020000 	sw	v0,0\(zero\)
+ 360:	2482ffff 	addiu	v0,a0,-1
+ 364:	3c02abcd 	lui	v0,0xabcd
+ 368:	3442ef01 	ori	v0,v0,0xef01
+ 36c:	00441021 	addu	v0,v0,a0
+ 370:	3c028000 	lui	v0,0x8000
+ 374:	00441021 	addu	v0,v0,a0
+ 378:	3c027fff 	lui	v0,0x7fff
+ 37c:	3442ffff 	ori	v0,v0,0xffff
+ 380:	00441021 	addu	v0,v0,a0
+ 384:	3c020123 	lui	v0,0x123
+ 388:	34424567 	ori	v0,v0,0x4567
+ 38c:	00441021 	addu	v0,v0,a0
+ 390:	24820000 	addiu	v0,a0,0
+ 394:	2482ffff 	addiu	v0,a0,-1
+ 398:	3c02abcd 	lui	v0,0xabcd
+ 39c:	3442ef01 	ori	v0,v0,0xef01
+ 3a0:	00441021 	addu	v0,v0,a0
+ 3a4:	3c028000 	lui	v0,0x8000
+ 3a8:	00441021 	addu	v0,v0,a0
+ 3ac:	3c027fff 	lui	v0,0x7fff
+ 3b0:	3442ffff 	ori	v0,v0,0xffff
+ 3b4:	00441021 	addu	v0,v0,a0
+ 3b8:	3c020123 	lui	v0,0x123
+ 3bc:	34424567 	ori	v0,v0,0x4567
+ 3c0:	00441021 	addu	v0,v0,a0
+ 3c4:	24820000 	addiu	v0,a0,0
+ 3c8:	2402ffff 	li	v0,-1
+ 3cc:	3c02abcd 	lui	v0,0xabcd
+ 3d0:	3442ef01 	ori	v0,v0,0xef01
+ 3d4:	3c028000 	lui	v0,0x8000
+ 3d8:	3c027fff 	lui	v0,0x7fff
+ 3dc:	3442ffff 	ori	v0,v0,0xffff
+ 3e0:	3c020123 	lui	v0,0x123
+ 3e4:	34424567 	ori	v0,v0,0x4567
+ 3e8:	24020000 	li	v0,0
+ 3ec:	2402ffff 	li	v0,-1
+ 3f0:	3c02abcd 	lui	v0,0xabcd
+ 3f4:	3442ef01 	ori	v0,v0,0xef01
+ 3f8:	3c028000 	lui	v0,0x8000
+ 3fc:	3c027fff 	lui	v0,0x7fff
+ 400:	3442ffff 	ori	v0,v0,0xffff
+ 404:	3c020123 	lui	v0,0x123
+ 408:	34424567 	ori	v0,v0,0x4567
+ 40c:	24020000 	li	v0,0
+	\.\.\.
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3.d binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3.d
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3.d	1970-01-01 00:00:00.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3.d	2005-04-11 18:10:28.000000000 +0000
@@ -0,0 +1,271 @@
+#objdump: -d -mmips:4000
+#as: -mabi=32
+#name: MIPS ld-st-la constants (ABI o32, mips3)
+#source: ldstla-32-mips3.s
+
+.*: +file format elf32-.*mips
+
+Disassembly of section \.text:
+
+00000000 <\.text>:
+   0:	dc82ffff 	ld	v0,-1\(a0\)
+   4:	3c02abce 	lui	v0,0xabce
+   8:	00441021 	addu	v0,v0,a0
+   c:	dc42ef01 	ld	v0,-4351\(v0\)
+  10:	3c028000 	lui	v0,0x8000
+  14:	00441021 	addu	v0,v0,a0
+  18:	dc420000 	ld	v0,0\(v0\)
+  1c:	3c028000 	lui	v0,0x8000
+  20:	00441021 	addu	v0,v0,a0
+  24:	dc42ffff 	ld	v0,-1\(v0\)
+  28:	3c020123 	lui	v0,0x123
+  2c:	00441021 	addu	v0,v0,a0
+  30:	dc424567 	ld	v0,17767\(v0\)
+  34:	24020000 	li	v0,0
+  38:	00441021 	addu	v0,v0,a0
+  3c:	dc420000 	ld	v0,0\(v0\)
+  40:	24020000 	li	v0,0
+  44:	00441021 	addu	v0,v0,a0
+  48:	dc42ffff 	ld	v0,-1\(v0\)
+  4c:	3c02abce 	lui	v0,0xabce
+  50:	00441021 	addu	v0,v0,a0
+  54:	dc42ef01 	ld	v0,-4351\(v0\)
+  58:	3c028000 	lui	v0,0x8000
+  5c:	00441021 	addu	v0,v0,a0
+  60:	dc420000 	ld	v0,0\(v0\)
+  64:	3c028000 	lui	v0,0x8000
+  68:	00441021 	addu	v0,v0,a0
+  6c:	dc42ffff 	ld	v0,-1\(v0\)
+  70:	3c020123 	lui	v0,0x123
+  74:	00441021 	addu	v0,v0,a0
+  78:	dc424567 	ld	v0,17767\(v0\)
+  7c:	dc820000 	ld	v0,0\(a0\)
+  80:	dc02ffff 	ld	v0,-1\(zero\)
+  84:	3c02abce 	lui	v0,0xabce
+  88:	dc42ef01 	ld	v0,-4351\(v0\)
+  8c:	3c028000 	lui	v0,0x8000
+  90:	dc420000 	ld	v0,0\(v0\)
+  94:	3c028000 	lui	v0,0x8000
+  98:	dc42ffff 	ld	v0,-1\(v0\)
+  9c:	3c020123 	lui	v0,0x123
+  a0:	dc424567 	ld	v0,17767\(v0\)
+  a4:	24020000 	li	v0,0
+  a8:	dc420000 	ld	v0,0\(v0\)
+  ac:	24020000 	li	v0,0
+  b0:	dc42ffff 	ld	v0,-1\(v0\)
+  b4:	3c02abce 	lui	v0,0xabce
+  b8:	dc42ef01 	ld	v0,-4351\(v0\)
+  bc:	3c028000 	lui	v0,0x8000
+  c0:	dc420000 	ld	v0,0\(v0\)
+  c4:	3c028000 	lui	v0,0x8000
+  c8:	dc42ffff 	ld	v0,-1\(v0\)
+  cc:	3c020123 	lui	v0,0x123
+  d0:	dc424567 	ld	v0,17767\(v0\)
+  d4:	dc020000 	ld	v0,0\(zero\)
+  d8:	fc82ffff 	sd	v0,-1\(a0\)
+  dc:	3c01abce 	lui	at,0xabce
+  e0:	00240821 	addu	at,at,a0
+  e4:	fc22ef01 	sd	v0,-4351\(at\)
+  e8:	3c018000 	lui	at,0x8000
+  ec:	00240821 	addu	at,at,a0
+  f0:	fc220000 	sd	v0,0\(at\)
+  f4:	3c018000 	lui	at,0x8000
+  f8:	00240821 	addu	at,at,a0
+  fc:	fc22ffff 	sd	v0,-1\(at\)
+ 100:	3c010123 	lui	at,0x123
+ 104:	00240821 	addu	at,at,a0
+ 108:	fc224567 	sd	v0,17767\(at\)
+ 10c:	24010000 	li	at,0
+ 110:	00240821 	addu	at,at,a0
+ 114:	fc220000 	sd	v0,0\(at\)
+ 118:	24010000 	li	at,0
+ 11c:	00240821 	addu	at,at,a0
+ 120:	fc22ffff 	sd	v0,-1\(at\)
+ 124:	3c01abce 	lui	at,0xabce
+ 128:	00240821 	addu	at,at,a0
+ 12c:	fc22ef01 	sd	v0,-4351\(at\)
+ 130:	3c018000 	lui	at,0x8000
+ 134:	00240821 	addu	at,at,a0
+ 138:	fc220000 	sd	v0,0\(at\)
+ 13c:	3c018000 	lui	at,0x8000
+ 140:	00240821 	addu	at,at,a0
+ 144:	fc22ffff 	sd	v0,-1\(at\)
+ 148:	3c010123 	lui	at,0x123
+ 14c:	00240821 	addu	at,at,a0
+ 150:	fc224567 	sd	v0,17767\(at\)
+ 154:	fc820000 	sd	v0,0\(a0\)
+ 158:	fc02ffff 	sd	v0,-1\(zero\)
+ 15c:	3c01abce 	lui	at,0xabce
+ 160:	fc22ef01 	sd	v0,-4351\(at\)
+ 164:	3c018000 	lui	at,0x8000
+ 168:	fc220000 	sd	v0,0\(at\)
+ 16c:	3c018000 	lui	at,0x8000
+ 170:	fc22ffff 	sd	v0,-1\(at\)
+ 174:	3c010123 	lui	at,0x123
+ 178:	fc224567 	sd	v0,17767\(at\)
+ 17c:	24010000 	li	at,0
+ 180:	fc220000 	sd	v0,0\(at\)
+ 184:	24010000 	li	at,0
+ 188:	fc22ffff 	sd	v0,-1\(at\)
+ 18c:	3c01abce 	lui	at,0xabce
+ 190:	fc22ef01 	sd	v0,-4351\(at\)
+ 194:	3c018000 	lui	at,0x8000
+ 198:	fc220000 	sd	v0,0\(at\)
+ 19c:	3c018000 	lui	at,0x8000
+ 1a0:	fc22ffff 	sd	v0,-1\(at\)
+ 1a4:	3c010123 	lui	at,0x123
+ 1a8:	fc224567 	sd	v0,17767\(at\)
+ 1ac:	fc020000 	sd	v0,0\(zero\)
+ 1b0:	8c82ffff 	lw	v0,-1\(a0\)
+ 1b4:	3c02abce 	lui	v0,0xabce
+ 1b8:	00441021 	addu	v0,v0,a0
+ 1bc:	8c42ef01 	lw	v0,-4351\(v0\)
+ 1c0:	3c028000 	lui	v0,0x8000
+ 1c4:	00441021 	addu	v0,v0,a0
+ 1c8:	8c420000 	lw	v0,0\(v0\)
+ 1cc:	3c028000 	lui	v0,0x8000
+ 1d0:	00441021 	addu	v0,v0,a0
+ 1d4:	8c42ffff 	lw	v0,-1\(v0\)
+ 1d8:	3c020123 	lui	v0,0x123
+ 1dc:	00441021 	addu	v0,v0,a0
+ 1e0:	8c424567 	lw	v0,17767\(v0\)
+ 1e4:	24020000 	li	v0,0
+ 1e8:	00441021 	addu	v0,v0,a0
+ 1ec:	8c420000 	lw	v0,0\(v0\)
+ 1f0:	24020000 	li	v0,0
+ 1f4:	00441021 	addu	v0,v0,a0
+ 1f8:	8c42ffff 	lw	v0,-1\(v0\)
+ 1fc:	3c02abce 	lui	v0,0xabce
+ 200:	00441021 	addu	v0,v0,a0
+ 204:	8c42ef01 	lw	v0,-4351\(v0\)
+ 208:	3c028000 	lui	v0,0x8000
+ 20c:	00441021 	addu	v0,v0,a0
+ 210:	8c420000 	lw	v0,0\(v0\)
+ 214:	3c028000 	lui	v0,0x8000
+ 218:	00441021 	addu	v0,v0,a0
+ 21c:	8c42ffff 	lw	v0,-1\(v0\)
+ 220:	3c020123 	lui	v0,0x123
+ 224:	00441021 	addu	v0,v0,a0
+ 228:	8c424567 	lw	v0,17767\(v0\)
+ 22c:	8c820000 	lw	v0,0\(a0\)
+ 230:	8c02ffff 	lw	v0,-1\(zero\)
+ 234:	3c02abce 	lui	v0,0xabce
+ 238:	8c42ef01 	lw	v0,-4351\(v0\)
+ 23c:	3c028000 	lui	v0,0x8000
+ 240:	8c420000 	lw	v0,0\(v0\)
+ 244:	3c028000 	lui	v0,0x8000
+ 248:	8c42ffff 	lw	v0,-1\(v0\)
+ 24c:	3c020123 	lui	v0,0x123
+ 250:	8c424567 	lw	v0,17767\(v0\)
+ 254:	24020000 	li	v0,0
+ 258:	8c420000 	lw	v0,0\(v0\)
+ 25c:	24020000 	li	v0,0
+ 260:	8c42ffff 	lw	v0,-1\(v0\)
+ 264:	3c02abce 	lui	v0,0xabce
+ 268:	8c42ef01 	lw	v0,-4351\(v0\)
+ 26c:	3c028000 	lui	v0,0x8000
+ 270:	8c420000 	lw	v0,0\(v0\)
+ 274:	3c028000 	lui	v0,0x8000
+ 278:	8c42ffff 	lw	v0,-1\(v0\)
+ 27c:	3c020123 	lui	v0,0x123
+ 280:	8c424567 	lw	v0,17767\(v0\)
+ 284:	8c020000 	lw	v0,0\(zero\)
+ 288:	ac82ffff 	sw	v0,-1\(a0\)
+ 28c:	3c01abce 	lui	at,0xabce
+ 290:	00240821 	addu	at,at,a0
+ 294:	ac22ef01 	sw	v0,-4351\(at\)
+ 298:	3c018000 	lui	at,0x8000
+ 29c:	00240821 	addu	at,at,a0
+ 2a0:	ac220000 	sw	v0,0\(at\)
+ 2a4:	3c018000 	lui	at,0x8000
+ 2a8:	00240821 	addu	at,at,a0
+ 2ac:	ac22ffff 	sw	v0,-1\(at\)
+ 2b0:	3c010123 	lui	at,0x123
+ 2b4:	00240821 	addu	at,at,a0
+ 2b8:	ac224567 	sw	v0,17767\(at\)
+ 2bc:	24010000 	li	at,0
+ 2c0:	00240821 	addu	at,at,a0
+ 2c4:	ac220000 	sw	v0,0\(at\)
+ 2c8:	24010000 	li	at,0
+ 2cc:	00240821 	addu	at,at,a0
+ 2d0:	ac22ffff 	sw	v0,-1\(at\)
+ 2d4:	3c01abce 	lui	at,0xabce
+ 2d8:	00240821 	addu	at,at,a0
+ 2dc:	ac22ef01 	sw	v0,-4351\(at\)
+ 2e0:	3c018000 	lui	at,0x8000
+ 2e4:	00240821 	addu	at,at,a0
+ 2e8:	ac220000 	sw	v0,0\(at\)
+ 2ec:	3c018000 	lui	at,0x8000
+ 2f0:	00240821 	addu	at,at,a0
+ 2f4:	ac22ffff 	sw	v0,-1\(at\)
+ 2f8:	3c010123 	lui	at,0x123
+ 2fc:	00240821 	addu	at,at,a0
+ 300:	ac224567 	sw	v0,17767\(at\)
+ 304:	ac820000 	sw	v0,0\(a0\)
+ 308:	ac02ffff 	sw	v0,-1\(zero\)
+ 30c:	3c01abce 	lui	at,0xabce
+ 310:	ac22ef01 	sw	v0,-4351\(at\)
+ 314:	3c018000 	lui	at,0x8000
+ 318:	ac220000 	sw	v0,0\(at\)
+ 31c:	3c018000 	lui	at,0x8000
+ 320:	ac22ffff 	sw	v0,-1\(at\)
+ 324:	3c010123 	lui	at,0x123
+ 328:	ac224567 	sw	v0,17767\(at\)
+ 32c:	24010000 	li	at,0
+ 330:	ac220000 	sw	v0,0\(at\)
+ 334:	24010000 	li	at,0
+ 338:	ac22ffff 	sw	v0,-1\(at\)
+ 33c:	3c01abce 	lui	at,0xabce
+ 340:	ac22ef01 	sw	v0,-4351\(at\)
+ 344:	3c018000 	lui	at,0x8000
+ 348:	ac220000 	sw	v0,0\(at\)
+ 34c:	3c018000 	lui	at,0x8000
+ 350:	ac22ffff 	sw	v0,-1\(at\)
+ 354:	3c010123 	lui	at,0x123
+ 358:	ac224567 	sw	v0,17767\(at\)
+ 35c:	ac020000 	sw	v0,0\(zero\)
+ 360:	2482ffff 	addiu	v0,a0,-1
+ 364:	3c02abcd 	lui	v0,0xabcd
+ 368:	3442ef01 	ori	v0,v0,0xef01
+ 36c:	00441021 	addu	v0,v0,a0
+ 370:	3c028000 	lui	v0,0x8000
+ 374:	00441021 	addu	v0,v0,a0
+ 378:	3c027fff 	lui	v0,0x7fff
+ 37c:	3442ffff 	ori	v0,v0,0xffff
+ 380:	00441021 	addu	v0,v0,a0
+ 384:	3c020123 	lui	v0,0x123
+ 388:	34424567 	ori	v0,v0,0x4567
+ 38c:	00441021 	addu	v0,v0,a0
+ 390:	24820000 	addiu	v0,a0,0
+ 394:	2482ffff 	addiu	v0,a0,-1
+ 398:	3c02abcd 	lui	v0,0xabcd
+ 39c:	3442ef01 	ori	v0,v0,0xef01
+ 3a0:	00441021 	addu	v0,v0,a0
+ 3a4:	3c028000 	lui	v0,0x8000
+ 3a8:	00441021 	addu	v0,v0,a0
+ 3ac:	3c027fff 	lui	v0,0x7fff
+ 3b0:	3442ffff 	ori	v0,v0,0xffff
+ 3b4:	00441021 	addu	v0,v0,a0
+ 3b8:	3c020123 	lui	v0,0x123
+ 3bc:	34424567 	ori	v0,v0,0x4567
+ 3c0:	00441021 	addu	v0,v0,a0
+ 3c4:	24820000 	addiu	v0,a0,0
+ 3c8:	2402ffff 	li	v0,-1
+ 3cc:	3c02abcd 	lui	v0,0xabcd
+ 3d0:	3442ef01 	ori	v0,v0,0xef01
+ 3d4:	3c028000 	lui	v0,0x8000
+ 3d8:	3c027fff 	lui	v0,0x7fff
+ 3dc:	3442ffff 	ori	v0,v0,0xffff
+ 3e0:	3c020123 	lui	v0,0x123
+ 3e4:	34424567 	ori	v0,v0,0x4567
+ 3e8:	24020000 	li	v0,0
+ 3ec:	2402ffff 	li	v0,-1
+ 3f0:	3c02abcd 	lui	v0,0xabcd
+ 3f4:	3442ef01 	ori	v0,v0,0xef01
+ 3f8:	3c028000 	lui	v0,0x8000
+ 3fc:	3c027fff 	lui	v0,0x7fff
+ 400:	3442ffff 	ori	v0,v0,0xffff
+ 404:	3c020123 	lui	v0,0x123
+ 408:	34424567 	ori	v0,v0,0x4567
+ 40c:	24020000 	li	v0,0
+	\.\.\.
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3.s binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3.s
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-mips3.s	1970-01-01 00:00:00.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-mips3.s	2005-04-11 16:45:44.000000000 +0000
@@ -0,0 +1,133 @@
+	.set	mips3
+	.text
+	ld $2, 0xffffffffffffffff($4)
+	ld $2, 0xffffffffabcdef01($4)
+	ld $2, 0xffffffff80000000($4)
+	ld $2, 0xffffffff7fffffff($4)
+	ld $2, 0xffffffff01234567($4)
+	ld $2, 0xffffffff00000000($4)
+	ld $2, 0xffffffff($4)
+	ld $2, 0xabcdef01($4)
+	ld $2, 0x80000000($4)
+	ld $2, 0x7fffffff($4)
+	ld $2, 0x01234567($4)
+	ld $2, 0x00000000($4)
+
+	ld $2, 0xffffffffffffffff
+	ld $2, 0xffffffffabcdef01
+	ld $2, 0xffffffff80000000
+	ld $2, 0xffffffff7fffffff
+	ld $2, 0xffffffff01234567
+	ld $2, 0xffffffff00000000
+	ld $2, 0xffffffff
+	ld $2, 0xabcdef01
+	ld $2, 0x80000000
+	ld $2, 0x7fffffff
+	ld $2, 0x01234567
+	ld $2, 0x00000000
+
+	sd $2, 0xffffffffffffffff($4)
+	sd $2, 0xffffffffabcdef01($4)
+	sd $2, 0xffffffff80000000($4)
+	sd $2, 0xffffffff7fffffff($4)
+	sd $2, 0xffffffff01234567($4)
+	sd $2, 0xffffffff00000000($4)
+	sd $2, 0xffffffff($4)
+	sd $2, 0xabcdef01($4)
+	sd $2, 0x80000000($4)
+	sd $2, 0x7fffffff($4)
+	sd $2, 0x01234567($4)
+	sd $2, 0x00000000($4)
+
+	sd $2, 0xffffffffffffffff
+	sd $2, 0xffffffffabcdef01
+	sd $2, 0xffffffff80000000
+	sd $2, 0xffffffff7fffffff
+	sd $2, 0xffffffff01234567
+	sd $2, 0xffffffff00000000
+	sd $2, 0xffffffff
+	sd $2, 0xabcdef01
+	sd $2, 0x80000000
+	sd $2, 0x7fffffff
+	sd $2, 0x01234567
+	sd $2, 0x00000000
+
+	lw $2, 0xffffffffffffffff($4)
+	lw $2, 0xffffffffabcdef01($4)
+	lw $2, 0xffffffff80000000($4)
+	lw $2, 0xffffffff7fffffff($4)
+	lw $2, 0xffffffff01234567($4)
+	lw $2, 0xffffffff00000000($4)
+	lw $2, 0xffffffff($4)
+	lw $2, 0xabcdef01($4)
+	lw $2, 0x80000000($4)
+	lw $2, 0x7fffffff($4)
+	lw $2, 0x01234567($4)
+	lw $2, 0x00000000($4)
+
+	lw $2, 0xffffffffffffffff
+	lw $2, 0xffffffffabcdef01
+	lw $2, 0xffffffff80000000
+	lw $2, 0xffffffff7fffffff
+	lw $2, 0xffffffff01234567
+	lw $2, 0xffffffff00000000
+	lw $2, 0xffffffff
+	lw $2, 0xabcdef01
+	lw $2, 0x80000000
+	lw $2, 0x7fffffff
+	lw $2, 0x01234567
+	lw $2, 0x00000000
+
+	sw $2, 0xffffffffffffffff($4)
+	sw $2, 0xffffffffabcdef01($4)
+	sw $2, 0xffffffff80000000($4)
+	sw $2, 0xffffffff7fffffff($4)
+	sw $2, 0xffffffff01234567($4)
+	sw $2, 0xffffffff00000000($4)
+	sw $2, 0xffffffff($4)
+	sw $2, 0xabcdef01($4)
+	sw $2, 0x80000000($4)
+	sw $2, 0x7fffffff($4)
+	sw $2, 0x01234567($4)
+	sw $2, 0x00000000($4)
+
+	sw $2, 0xffffffffffffffff
+	sw $2, 0xffffffffabcdef01
+	sw $2, 0xffffffff80000000
+	sw $2, 0xffffffff7fffffff
+	sw $2, 0xffffffff01234567
+	sw $2, 0xffffffff00000000
+	sw $2, 0xffffffff
+	sw $2, 0xabcdef01
+	sw $2, 0x80000000
+	sw $2, 0x7fffffff
+	sw $2, 0x01234567
+	sw $2, 0x00000000
+
+	la $2, 0xffffffffffffffff($4)
+	la $2, 0xffffffffabcdef01($4)
+	la $2, 0xffffffff80000000($4)
+	la $2, 0xffffffff7fffffff($4)
+	la $2, 0xffffffff01234567($4)
+	la $2, 0xffffffff00000000($4)
+	la $2, 0xffffffff($4)
+	la $2, 0xabcdef01($4)
+	la $2, 0x80000000($4)
+	la $2, 0x7fffffff($4)
+	la $2, 0x01234567($4)
+	la $2, 0x00000000($4)
+
+	la $2, 0xffffffffffffffff
+	la $2, 0xffffffffabcdef01
+	la $2, 0xffffffff80000000
+	la $2, 0xffffffff7fffffff
+	la $2, 0xffffffff01234567
+	la $2, 0xffffffff00000000
+	la $2, 0xffffffff
+	la $2, 0xabcdef01
+	la $2, 0x80000000
+	la $2, 0x7fffffff
+	la $2, 0x01234567
+	la $2, 0x00000000
+
+	.space 8
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-shared.d binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-shared.d
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32-shared.d	2003-10-01 02:07:48.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32-shared.d	2005-04-11 18:04:12.000000000 +0000
@@ -1,5 +1,5 @@
 #objdump: -d
-#as: -KPIC -32
+#as: -KPIC -mabi=32
 #name: MIPS ld-st-la constants (ABI o32, shared)
 #source: ldstla-32.s
 
@@ -8,73 +8,313 @@
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	3c0189ac 	lui	at,0x89ac
-   4:	00610821 	addu	at,v1,at
-   8:	8c22cdef 	lw	v0,-12817\(at\)
-   c:	8c23cdf3 	lw	v1,-12813\(at\)
-  10:	3c012345 	lui	at,0x2345
-  14:	00610821 	addu	at,v1,at
-  18:	8c226789 	lw	v0,26505\(at\)
-  1c:	8c23678d 	lw	v1,26509\(at\)
-  20:	3c018000 	lui	at,0x8000
-  24:	00610821 	addu	at,v1,at
-  28:	8c220000 	lw	v0,0\(at\)
-  2c:	8c230004 	lw	v1,4\(at\)
-  30:	3c010000 	lui	at,0x0
-  34:	00610821 	addu	at,v1,at
-  38:	8c220000 	lw	v0,0\(at\)
-  3c:	8c230004 	lw	v1,4\(at\)
-  40:	3c018000 	lui	at,0x8000
-  44:	00610821 	addu	at,v1,at
-  48:	8c22ffff 	lw	v0,-1\(at\)
-  4c:	8c230003 	lw	v1,3\(at\)
-  50:	3c01abce 	lui	at,0xabce
-  54:	00610821 	addu	at,v1,at
-  58:	8c22ef01 	lw	v0,-4351\(at\)
-  5c:	8c23ef05 	lw	v1,-4347\(at\)
-  60:	3c010123 	lui	at,0x123
-  64:	00610821 	addu	at,v1,at
-  68:	8c224567 	lw	v0,17767\(at\)
-  6c:	8c23456b 	lw	v1,17771\(at\)
-  70:	3c0189ac 	lui	at,0x89ac
-  74:	00610821 	addu	at,v1,at
-  78:	ac22cdef 	sw	v0,-12817\(at\)
-  7c:	ac23cdf3 	sw	v1,-12813\(at\)
-  80:	3c012345 	lui	at,0x2345
-  84:	00610821 	addu	at,v1,at
-  88:	ac226789 	sw	v0,26505\(at\)
-  8c:	ac23678d 	sw	v1,26509\(at\)
-  90:	3c018000 	lui	at,0x8000
-  94:	00610821 	addu	at,v1,at
-  98:	ac220000 	sw	v0,0\(at\)
-  9c:	ac230004 	sw	v1,4\(at\)
-  a0:	3c010000 	lui	at,0x0
-  a4:	00610821 	addu	at,v1,at
-  a8:	ac220000 	sw	v0,0\(at\)
-  ac:	ac230004 	sw	v1,4\(at\)
-  b0:	3c018000 	lui	at,0x8000
-  b4:	00610821 	addu	at,v1,at
-  b8:	ac22ffff 	sw	v0,-1\(at\)
-  bc:	ac230003 	sw	v1,3\(at\)
-  c0:	3c01abce 	lui	at,0xabce
-  c4:	00610821 	addu	at,v1,at
-  c8:	ac22ef01 	sw	v0,-4351\(at\)
-  cc:	ac23ef05 	sw	v1,-4347\(at\)
-  d0:	3c010123 	lui	at,0x123
-  d4:	00610821 	addu	at,v1,at
-  d8:	ac224567 	sw	v0,17767\(at\)
-  dc:	ac23456b 	sw	v1,17771\(at\)
-  e0:	3c028000 	lui	v0,0x8000
-  e4:	00431021 	addu	v0,v0,v1
-  e8:	8c420000 	lw	v0,0\(v0\)
-  ec:	3c020123 	lui	v0,0x123
-  f0:	00431021 	addu	v0,v0,v1
-  f4:	8c424567 	lw	v0,17767\(v0\)
-  f8:	3c010123 	lui	at,0x123
-  fc:	00230821 	addu	at,at,v1
- 100:	ac224567 	sw	v0,17767\(at\)
- 104:	3c027fff 	lui	v0,0x7fff
- 108:	3442ffff 	ori	v0,v0,0xffff
- 10c:	3c020123 	lui	v0,0x123
- 110:	34424567 	ori	v0,v0,0x4567
+   0:	8c82ffff 	lw	v0,-1\(a0\)
+   4:	8c830003 	lw	v1,3\(a0\)
+   8:	3c01abce 	lui	at,0xabce
+   c:	00810821 	addu	at,a0,at
+  10:	8c22ef01 	lw	v0,-4351\(at\)
+  14:	8c23ef05 	lw	v1,-4347\(at\)
+  18:	3c018000 	lui	at,0x8000
+  1c:	00810821 	addu	at,a0,at
+  20:	8c220000 	lw	v0,0\(at\)
+  24:	8c230004 	lw	v1,4\(at\)
+  28:	3c018000 	lui	at,0x8000
+  2c:	00810821 	addu	at,a0,at
+  30:	8c22ffff 	lw	v0,-1\(at\)
+  34:	8c230003 	lw	v1,3\(at\)
+  38:	3c010123 	lui	at,0x123
+  3c:	00810821 	addu	at,a0,at
+  40:	8c224567 	lw	v0,17767\(at\)
+  44:	8c23456b 	lw	v1,17771\(at\)
+  48:	3c010000 	lui	at,0x0
+  4c:	00810821 	addu	at,a0,at
+  50:	8c220000 	lw	v0,0\(at\)
+  54:	8c230004 	lw	v1,4\(at\)
+  58:	3c010000 	lui	at,0x0
+  5c:	00810821 	addu	at,a0,at
+  60:	8c22ffff 	lw	v0,-1\(at\)
+  64:	8c230003 	lw	v1,3\(at\)
+  68:	3c01abce 	lui	at,0xabce
+  6c:	00810821 	addu	at,a0,at
+  70:	8c22ef01 	lw	v0,-4351\(at\)
+  74:	8c23ef05 	lw	v1,-4347\(at\)
+  78:	3c018000 	lui	at,0x8000
+  7c:	00810821 	addu	at,a0,at
+  80:	8c220000 	lw	v0,0\(at\)
+  84:	8c230004 	lw	v1,4\(at\)
+  88:	3c018000 	lui	at,0x8000
+  8c:	00810821 	addu	at,a0,at
+  90:	8c22ffff 	lw	v0,-1\(at\)
+  94:	8c230003 	lw	v1,3\(at\)
+  98:	3c010123 	lui	at,0x123
+  9c:	00810821 	addu	at,a0,at
+  a0:	8c224567 	lw	v0,17767\(at\)
+  a4:	8c23456b 	lw	v1,17771\(at\)
+  a8:	8c820000 	lw	v0,0\(a0\)
+  ac:	8c830004 	lw	v1,4\(a0\)
+  b0:	8c02ffff 	lw	v0,-1\(zero\)
+  b4:	8c030003 	lw	v1,3\(zero\)
+  b8:	3c01abce 	lui	at,0xabce
+  bc:	8c22ef01 	lw	v0,-4351\(at\)
+  c0:	8c23ef05 	lw	v1,-4347\(at\)
+  c4:	3c018000 	lui	at,0x8000
+  c8:	8c220000 	lw	v0,0\(at\)
+  cc:	8c230004 	lw	v1,4\(at\)
+  d0:	3c018000 	lui	at,0x8000
+  d4:	8c22ffff 	lw	v0,-1\(at\)
+  d8:	8c230003 	lw	v1,3\(at\)
+  dc:	3c010123 	lui	at,0x123
+  e0:	8c224567 	lw	v0,17767\(at\)
+  e4:	8c23456b 	lw	v1,17771\(at\)
+  e8:	3c010000 	lui	at,0x0
+  ec:	8c220000 	lw	v0,0\(at\)
+  f0:	8c230004 	lw	v1,4\(at\)
+  f4:	3c010000 	lui	at,0x0
+  f8:	8c22ffff 	lw	v0,-1\(at\)
+  fc:	8c230003 	lw	v1,3\(at\)
+ 100:	3c01abce 	lui	at,0xabce
+ 104:	8c22ef01 	lw	v0,-4351\(at\)
+ 108:	8c23ef05 	lw	v1,-4347\(at\)
+ 10c:	3c018000 	lui	at,0x8000
+ 110:	8c220000 	lw	v0,0\(at\)
+ 114:	8c230004 	lw	v1,4\(at\)
+ 118:	3c018000 	lui	at,0x8000
+ 11c:	8c22ffff 	lw	v0,-1\(at\)
+ 120:	8c230003 	lw	v1,3\(at\)
+ 124:	3c010123 	lui	at,0x123
+ 128:	8c224567 	lw	v0,17767\(at\)
+ 12c:	8c23456b 	lw	v1,17771\(at\)
+ 130:	8c020000 	lw	v0,0\(zero\)
+ 134:	8c030004 	lw	v1,4\(zero\)
+ 138:	ac82ffff 	sw	v0,-1\(a0\)
+ 13c:	ac830003 	sw	v1,3\(a0\)
+ 140:	3c01abce 	lui	at,0xabce
+ 144:	00810821 	addu	at,a0,at
+ 148:	ac22ef01 	sw	v0,-4351\(at\)
+ 14c:	ac23ef05 	sw	v1,-4347\(at\)
+ 150:	3c018000 	lui	at,0x8000
+ 154:	00810821 	addu	at,a0,at
+ 158:	ac220000 	sw	v0,0\(at\)
+ 15c:	ac230004 	sw	v1,4\(at\)
+ 160:	3c018000 	lui	at,0x8000
+ 164:	00810821 	addu	at,a0,at
+ 168:	ac22ffff 	sw	v0,-1\(at\)
+ 16c:	ac230003 	sw	v1,3\(at\)
+ 170:	3c010123 	lui	at,0x123
+ 174:	00810821 	addu	at,a0,at
+ 178:	ac224567 	sw	v0,17767\(at\)
+ 17c:	ac23456b 	sw	v1,17771\(at\)
+ 180:	3c010000 	lui	at,0x0
+ 184:	00810821 	addu	at,a0,at
+ 188:	ac220000 	sw	v0,0\(at\)
+ 18c:	ac230004 	sw	v1,4\(at\)
+ 190:	3c010000 	lui	at,0x0
+ 194:	00810821 	addu	at,a0,at
+ 198:	ac22ffff 	sw	v0,-1\(at\)
+ 19c:	ac230003 	sw	v1,3\(at\)
+ 1a0:	3c01abce 	lui	at,0xabce
+ 1a4:	00810821 	addu	at,a0,at
+ 1a8:	ac22ef01 	sw	v0,-4351\(at\)
+ 1ac:	ac23ef05 	sw	v1,-4347\(at\)
+ 1b0:	3c018000 	lui	at,0x8000
+ 1b4:	00810821 	addu	at,a0,at
+ 1b8:	ac220000 	sw	v0,0\(at\)
+ 1bc:	ac230004 	sw	v1,4\(at\)
+ 1c0:	3c018000 	lui	at,0x8000
+ 1c4:	00810821 	addu	at,a0,at
+ 1c8:	ac22ffff 	sw	v0,-1\(at\)
+ 1cc:	ac230003 	sw	v1,3\(at\)
+ 1d0:	3c010123 	lui	at,0x123
+ 1d4:	00810821 	addu	at,a0,at
+ 1d8:	ac224567 	sw	v0,17767\(at\)
+ 1dc:	ac23456b 	sw	v1,17771\(at\)
+ 1e0:	ac820000 	sw	v0,0\(a0\)
+ 1e4:	ac830004 	sw	v1,4\(a0\)
+ 1e8:	ac02ffff 	sw	v0,-1\(zero\)
+ 1ec:	ac030003 	sw	v1,3\(zero\)
+ 1f0:	3c01abce 	lui	at,0xabce
+ 1f4:	ac22ef01 	sw	v0,-4351\(at\)
+ 1f8:	ac23ef05 	sw	v1,-4347\(at\)
+ 1fc:	3c018000 	lui	at,0x8000
+ 200:	ac220000 	sw	v0,0\(at\)
+ 204:	ac230004 	sw	v1,4\(at\)
+ 208:	3c018000 	lui	at,0x8000
+ 20c:	ac22ffff 	sw	v0,-1\(at\)
+ 210:	ac230003 	sw	v1,3\(at\)
+ 214:	3c010123 	lui	at,0x123
+ 218:	ac224567 	sw	v0,17767\(at\)
+ 21c:	ac23456b 	sw	v1,17771\(at\)
+ 220:	3c010000 	lui	at,0x0
+ 224:	ac220000 	sw	v0,0\(at\)
+ 228:	ac230004 	sw	v1,4\(at\)
+ 22c:	3c010000 	lui	at,0x0
+ 230:	ac22ffff 	sw	v0,-1\(at\)
+ 234:	ac230003 	sw	v1,3\(at\)
+ 238:	3c01abce 	lui	at,0xabce
+ 23c:	ac22ef01 	sw	v0,-4351\(at\)
+ 240:	ac23ef05 	sw	v1,-4347\(at\)
+ 244:	3c018000 	lui	at,0x8000
+ 248:	ac220000 	sw	v0,0\(at\)
+ 24c:	ac230004 	sw	v1,4\(at\)
+ 250:	3c018000 	lui	at,0x8000
+ 254:	ac22ffff 	sw	v0,-1\(at\)
+ 258:	ac230003 	sw	v1,3\(at\)
+ 25c:	3c010123 	lui	at,0x123
+ 260:	ac224567 	sw	v0,17767\(at\)
+ 264:	ac23456b 	sw	v1,17771\(at\)
+ 268:	ac020000 	sw	v0,0\(zero\)
+ 26c:	ac030004 	sw	v1,4\(zero\)
+ 270:	8c82ffff 	lw	v0,-1\(a0\)
+ 274:	3c02abce 	lui	v0,0xabce
+ 278:	00441021 	addu	v0,v0,a0
+ 27c:	8c42ef01 	lw	v0,-4351\(v0\)
+ 280:	3c028000 	lui	v0,0x8000
+ 284:	00441021 	addu	v0,v0,a0
+ 288:	8c420000 	lw	v0,0\(v0\)
+ 28c:	3c028000 	lui	v0,0x8000
+ 290:	00441021 	addu	v0,v0,a0
+ 294:	8c42ffff 	lw	v0,-1\(v0\)
+ 298:	3c020123 	lui	v0,0x123
+ 29c:	00441021 	addu	v0,v0,a0
+ 2a0:	8c424567 	lw	v0,17767\(v0\)
+ 2a4:	24020000 	li	v0,0
+ 2a8:	00441021 	addu	v0,v0,a0
+ 2ac:	8c420000 	lw	v0,0\(v0\)
+ 2b0:	24020000 	li	v0,0
+ 2b4:	00441021 	addu	v0,v0,a0
+ 2b8:	8c42ffff 	lw	v0,-1\(v0\)
+ 2bc:	3c02abce 	lui	v0,0xabce
+ 2c0:	00441021 	addu	v0,v0,a0
+ 2c4:	8c42ef01 	lw	v0,-4351\(v0\)
+ 2c8:	3c028000 	lui	v0,0x8000
+ 2cc:	00441021 	addu	v0,v0,a0
+ 2d0:	8c420000 	lw	v0,0\(v0\)
+ 2d4:	3c028000 	lui	v0,0x8000
+ 2d8:	00441021 	addu	v0,v0,a0
+ 2dc:	8c42ffff 	lw	v0,-1\(v0\)
+ 2e0:	3c020123 	lui	v0,0x123
+ 2e4:	00441021 	addu	v0,v0,a0
+ 2e8:	8c424567 	lw	v0,17767\(v0\)
+ 2ec:	8c820000 	lw	v0,0\(a0\)
+ 2f0:	8c02ffff 	lw	v0,-1\(zero\)
+ 2f4:	3c02abce 	lui	v0,0xabce
+ 2f8:	8c42ef01 	lw	v0,-4351\(v0\)
+ 2fc:	3c028000 	lui	v0,0x8000
+ 300:	8c420000 	lw	v0,0\(v0\)
+ 304:	3c028000 	lui	v0,0x8000
+ 308:	8c42ffff 	lw	v0,-1\(v0\)
+ 30c:	3c020123 	lui	v0,0x123
+ 310:	8c424567 	lw	v0,17767\(v0\)
+ 314:	24020000 	li	v0,0
+ 318:	8c420000 	lw	v0,0\(v0\)
+ 31c:	24020000 	li	v0,0
+ 320:	8c42ffff 	lw	v0,-1\(v0\)
+ 324:	3c02abce 	lui	v0,0xabce
+ 328:	8c42ef01 	lw	v0,-4351\(v0\)
+ 32c:	3c028000 	lui	v0,0x8000
+ 330:	8c420000 	lw	v0,0\(v0\)
+ 334:	3c028000 	lui	v0,0x8000
+ 338:	8c42ffff 	lw	v0,-1\(v0\)
+ 33c:	3c020123 	lui	v0,0x123
+ 340:	8c424567 	lw	v0,17767\(v0\)
+ 344:	8c020000 	lw	v0,0\(zero\)
+ 348:	00000000 	nop
+ 34c:	ac82ffff 	sw	v0,-1\(a0\)
+ 350:	3c01abce 	lui	at,0xabce
+ 354:	00240821 	addu	at,at,a0
+ 358:	ac22ef01 	sw	v0,-4351\(at\)
+ 35c:	3c018000 	lui	at,0x8000
+ 360:	00240821 	addu	at,at,a0
+ 364:	ac220000 	sw	v0,0\(at\)
+ 368:	3c018000 	lui	at,0x8000
+ 36c:	00240821 	addu	at,at,a0
+ 370:	ac22ffff 	sw	v0,-1\(at\)
+ 374:	3c010123 	lui	at,0x123
+ 378:	00240821 	addu	at,at,a0
+ 37c:	ac224567 	sw	v0,17767\(at\)
+ 380:	24010000 	li	at,0
+ 384:	00240821 	addu	at,at,a0
+ 388:	ac220000 	sw	v0,0\(at\)
+ 38c:	24010000 	li	at,0
+ 390:	00240821 	addu	at,at,a0
+ 394:	ac22ffff 	sw	v0,-1\(at\)
+ 398:	3c01abce 	lui	at,0xabce
+ 39c:	00240821 	addu	at,at,a0
+ 3a0:	ac22ef01 	sw	v0,-4351\(at\)
+ 3a4:	3c018000 	lui	at,0x8000
+ 3a8:	00240821 	addu	at,at,a0
+ 3ac:	ac220000 	sw	v0,0\(at\)
+ 3b0:	3c018000 	lui	at,0x8000
+ 3b4:	00240821 	addu	at,at,a0
+ 3b8:	ac22ffff 	sw	v0,-1\(at\)
+ 3bc:	3c010123 	lui	at,0x123
+ 3c0:	00240821 	addu	at,at,a0
+ 3c4:	ac224567 	sw	v0,17767\(at\)
+ 3c8:	ac820000 	sw	v0,0\(a0\)
+ 3cc:	ac02ffff 	sw	v0,-1\(zero\)
+ 3d0:	3c01abce 	lui	at,0xabce
+ 3d4:	ac22ef01 	sw	v0,-4351\(at\)
+ 3d8:	3c018000 	lui	at,0x8000
+ 3dc:	ac220000 	sw	v0,0\(at\)
+ 3e0:	3c018000 	lui	at,0x8000
+ 3e4:	ac22ffff 	sw	v0,-1\(at\)
+ 3e8:	3c010123 	lui	at,0x123
+ 3ec:	ac224567 	sw	v0,17767\(at\)
+ 3f0:	24010000 	li	at,0
+ 3f4:	ac220000 	sw	v0,0\(at\)
+ 3f8:	24010000 	li	at,0
+ 3fc:	ac22ffff 	sw	v0,-1\(at\)
+ 400:	3c01abce 	lui	at,0xabce
+ 404:	ac22ef01 	sw	v0,-4351\(at\)
+ 408:	3c018000 	lui	at,0x8000
+ 40c:	ac220000 	sw	v0,0\(at\)
+ 410:	3c018000 	lui	at,0x8000
+ 414:	ac22ffff 	sw	v0,-1\(at\)
+ 418:	3c010123 	lui	at,0x123
+ 41c:	ac224567 	sw	v0,17767\(at\)
+ 420:	ac020000 	sw	v0,0\(zero\)
+ 424:	2482ffff 	addiu	v0,a0,-1
+ 428:	3c02abcd 	lui	v0,0xabcd
+ 42c:	3442ef01 	ori	v0,v0,0xef01
+ 430:	00441021 	addu	v0,v0,a0
+ 434:	3c028000 	lui	v0,0x8000
+ 438:	00441021 	addu	v0,v0,a0
+ 43c:	3c027fff 	lui	v0,0x7fff
+ 440:	3442ffff 	ori	v0,v0,0xffff
+ 444:	00441021 	addu	v0,v0,a0
+ 448:	3c020123 	lui	v0,0x123
+ 44c:	34424567 	ori	v0,v0,0x4567
+ 450:	00441021 	addu	v0,v0,a0
+ 454:	24820000 	addiu	v0,a0,0
+ 458:	2482ffff 	addiu	v0,a0,-1
+ 45c:	3c02abcd 	lui	v0,0xabcd
+ 460:	3442ef01 	ori	v0,v0,0xef01
+ 464:	00441021 	addu	v0,v0,a0
+ 468:	3c028000 	lui	v0,0x8000
+ 46c:	00441021 	addu	v0,v0,a0
+ 470:	3c027fff 	lui	v0,0x7fff
+ 474:	3442ffff 	ori	v0,v0,0xffff
+ 478:	00441021 	addu	v0,v0,a0
+ 47c:	3c020123 	lui	v0,0x123
+ 480:	34424567 	ori	v0,v0,0x4567
+ 484:	00441021 	addu	v0,v0,a0
+ 488:	24820000 	addiu	v0,a0,0
+ 48c:	2402ffff 	li	v0,-1
+ 490:	3c02abcd 	lui	v0,0xabcd
+ 494:	3442ef01 	ori	v0,v0,0xef01
+ 498:	3c028000 	lui	v0,0x8000
+ 49c:	3c027fff 	lui	v0,0x7fff
+ 4a0:	3442ffff 	ori	v0,v0,0xffff
+ 4a4:	3c020123 	lui	v0,0x123
+ 4a8:	34424567 	ori	v0,v0,0x4567
+ 4ac:	24020000 	li	v0,0
+ 4b0:	2402ffff 	li	v0,-1
+ 4b4:	3c02abcd 	lui	v0,0xabcd
+ 4b8:	3442ef01 	ori	v0,v0,0xef01
+ 4bc:	3c028000 	lui	v0,0x8000
+ 4c0:	3c027fff 	lui	v0,0x7fff
+ 4c4:	3442ffff 	ori	v0,v0,0xffff
+ 4c8:	3c020123 	lui	v0,0x123
+ 4cc:	34424567 	ori	v0,v0,0x4567
+ 4d0:	24020000 	li	v0,0
 	\.\.\.
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32.d binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32.d
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32.d	2003-10-01 02:07:48.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32.d	2005-04-11 18:04:12.000000000 +0000
@@ -1,5 +1,5 @@
 #objdump: -d
-#as: -32
+#as: -mabi=32
 #name: MIPS ld-st-la constants (ABI o32)
 #source: ldstla-32.s
 
@@ -8,73 +8,313 @@
 Disassembly of section \.text:
 
 00000000 <\.text>:
-   0:	3c0189ac 	lui	at,0x89ac
-   4:	00610821 	addu	at,v1,at
-   8:	8c22cdef 	lw	v0,-12817\(at\)
-   c:	8c23cdf3 	lw	v1,-12813\(at\)
-  10:	3c012345 	lui	at,0x2345
-  14:	00610821 	addu	at,v1,at
-  18:	8c226789 	lw	v0,26505\(at\)
-  1c:	8c23678d 	lw	v1,26509\(at\)
-  20:	3c018000 	lui	at,0x8000
-  24:	00610821 	addu	at,v1,at
-  28:	8c220000 	lw	v0,0\(at\)
-  2c:	8c230004 	lw	v1,4\(at\)
-  30:	3c010000 	lui	at,0x0
-  34:	00610821 	addu	at,v1,at
-  38:	8c220000 	lw	v0,0\(at\)
-  3c:	8c230004 	lw	v1,4\(at\)
-  40:	3c018000 	lui	at,0x8000
-  44:	00610821 	addu	at,v1,at
-  48:	8c22ffff 	lw	v0,-1\(at\)
-  4c:	8c230003 	lw	v1,3\(at\)
-  50:	3c01abce 	lui	at,0xabce
-  54:	00610821 	addu	at,v1,at
-  58:	8c22ef01 	lw	v0,-4351\(at\)
-  5c:	8c23ef05 	lw	v1,-4347\(at\)
-  60:	3c010123 	lui	at,0x123
-  64:	00610821 	addu	at,v1,at
-  68:	8c224567 	lw	v0,17767\(at\)
-  6c:	8c23456b 	lw	v1,17771\(at\)
-  70:	3c0189ac 	lui	at,0x89ac
-  74:	00610821 	addu	at,v1,at
-  78:	ac22cdef 	sw	v0,-12817\(at\)
-  7c:	ac23cdf3 	sw	v1,-12813\(at\)
-  80:	3c012345 	lui	at,0x2345
-  84:	00610821 	addu	at,v1,at
-  88:	ac226789 	sw	v0,26505\(at\)
-  8c:	ac23678d 	sw	v1,26509\(at\)
-  90:	3c018000 	lui	at,0x8000
-  94:	00610821 	addu	at,v1,at
-  98:	ac220000 	sw	v0,0\(at\)
-  9c:	ac230004 	sw	v1,4\(at\)
-  a0:	3c010000 	lui	at,0x0
-  a4:	00610821 	addu	at,v1,at
-  a8:	ac220000 	sw	v0,0\(at\)
-  ac:	ac230004 	sw	v1,4\(at\)
-  b0:	3c018000 	lui	at,0x8000
-  b4:	00610821 	addu	at,v1,at
-  b8:	ac22ffff 	sw	v0,-1\(at\)
-  bc:	ac230003 	sw	v1,3\(at\)
-  c0:	3c01abce 	lui	at,0xabce
-  c4:	00610821 	addu	at,v1,at
-  c8:	ac22ef01 	sw	v0,-4351\(at\)
-  cc:	ac23ef05 	sw	v1,-4347\(at\)
-  d0:	3c010123 	lui	at,0x123
-  d4:	00610821 	addu	at,v1,at
-  d8:	ac224567 	sw	v0,17767\(at\)
-  dc:	ac23456b 	sw	v1,17771\(at\)
-  e0:	3c028000 	lui	v0,0x8000
-  e4:	00431021 	addu	v0,v0,v1
-  e8:	8c420000 	lw	v0,0\(v0\)
-  ec:	3c020123 	lui	v0,0x123
-  f0:	00431021 	addu	v0,v0,v1
-  f4:	8c424567 	lw	v0,17767\(v0\)
-  f8:	3c010123 	lui	at,0x123
-  fc:	00230821 	addu	at,at,v1
- 100:	ac224567 	sw	v0,17767\(at\)
- 104:	3c027fff 	lui	v0,0x7fff
- 108:	3442ffff 	ori	v0,v0,0xffff
- 10c:	3c020123 	lui	v0,0x123
- 110:	34424567 	ori	v0,v0,0x4567
+   0:	8c82ffff 	lw	v0,-1\(a0\)
+   4:	8c830003 	lw	v1,3\(a0\)
+   8:	3c01abce 	lui	at,0xabce
+   c:	00810821 	addu	at,a0,at
+  10:	8c22ef01 	lw	v0,-4351\(at\)
+  14:	8c23ef05 	lw	v1,-4347\(at\)
+  18:	3c018000 	lui	at,0x8000
+  1c:	00810821 	addu	at,a0,at
+  20:	8c220000 	lw	v0,0\(at\)
+  24:	8c230004 	lw	v1,4\(at\)
+  28:	3c018000 	lui	at,0x8000
+  2c:	00810821 	addu	at,a0,at
+  30:	8c22ffff 	lw	v0,-1\(at\)
+  34:	8c230003 	lw	v1,3\(at\)
+  38:	3c010123 	lui	at,0x123
+  3c:	00810821 	addu	at,a0,at
+  40:	8c224567 	lw	v0,17767\(at\)
+  44:	8c23456b 	lw	v1,17771\(at\)
+  48:	3c010000 	lui	at,0x0
+  4c:	00810821 	addu	at,a0,at
+  50:	8c220000 	lw	v0,0\(at\)
+  54:	8c230004 	lw	v1,4\(at\)
+  58:	3c010000 	lui	at,0x0
+  5c:	00810821 	addu	at,a0,at
+  60:	8c22ffff 	lw	v0,-1\(at\)
+  64:	8c230003 	lw	v1,3\(at\)
+  68:	3c01abce 	lui	at,0xabce
+  6c:	00810821 	addu	at,a0,at
+  70:	8c22ef01 	lw	v0,-4351\(at\)
+  74:	8c23ef05 	lw	v1,-4347\(at\)
+  78:	3c018000 	lui	at,0x8000
+  7c:	00810821 	addu	at,a0,at
+  80:	8c220000 	lw	v0,0\(at\)
+  84:	8c230004 	lw	v1,4\(at\)
+  88:	3c018000 	lui	at,0x8000
+  8c:	00810821 	addu	at,a0,at
+  90:	8c22ffff 	lw	v0,-1\(at\)
+  94:	8c230003 	lw	v1,3\(at\)
+  98:	3c010123 	lui	at,0x123
+  9c:	00810821 	addu	at,a0,at
+  a0:	8c224567 	lw	v0,17767\(at\)
+  a4:	8c23456b 	lw	v1,17771\(at\)
+  a8:	8c820000 	lw	v0,0\(a0\)
+  ac:	8c830004 	lw	v1,4\(a0\)
+  b0:	8c02ffff 	lw	v0,-1\(zero\)
+  b4:	8c030003 	lw	v1,3\(zero\)
+  b8:	3c01abce 	lui	at,0xabce
+  bc:	8c22ef01 	lw	v0,-4351\(at\)
+  c0:	8c23ef05 	lw	v1,-4347\(at\)
+  c4:	3c018000 	lui	at,0x8000
+  c8:	8c220000 	lw	v0,0\(at\)
+  cc:	8c230004 	lw	v1,4\(at\)
+  d0:	3c018000 	lui	at,0x8000
+  d4:	8c22ffff 	lw	v0,-1\(at\)
+  d8:	8c230003 	lw	v1,3\(at\)
+  dc:	3c010123 	lui	at,0x123
+  e0:	8c224567 	lw	v0,17767\(at\)
+  e4:	8c23456b 	lw	v1,17771\(at\)
+  e8:	3c010000 	lui	at,0x0
+  ec:	8c220000 	lw	v0,0\(at\)
+  f0:	8c230004 	lw	v1,4\(at\)
+  f4:	3c010000 	lui	at,0x0
+  f8:	8c22ffff 	lw	v0,-1\(at\)
+  fc:	8c230003 	lw	v1,3\(at\)
+ 100:	3c01abce 	lui	at,0xabce
+ 104:	8c22ef01 	lw	v0,-4351\(at\)
+ 108:	8c23ef05 	lw	v1,-4347\(at\)
+ 10c:	3c018000 	lui	at,0x8000
+ 110:	8c220000 	lw	v0,0\(at\)
+ 114:	8c230004 	lw	v1,4\(at\)
+ 118:	3c018000 	lui	at,0x8000
+ 11c:	8c22ffff 	lw	v0,-1\(at\)
+ 120:	8c230003 	lw	v1,3\(at\)
+ 124:	3c010123 	lui	at,0x123
+ 128:	8c224567 	lw	v0,17767\(at\)
+ 12c:	8c23456b 	lw	v1,17771\(at\)
+ 130:	8c020000 	lw	v0,0\(zero\)
+ 134:	8c030004 	lw	v1,4\(zero\)
+ 138:	ac82ffff 	sw	v0,-1\(a0\)
+ 13c:	ac830003 	sw	v1,3\(a0\)
+ 140:	3c01abce 	lui	at,0xabce
+ 144:	00810821 	addu	at,a0,at
+ 148:	ac22ef01 	sw	v0,-4351\(at\)
+ 14c:	ac23ef05 	sw	v1,-4347\(at\)
+ 150:	3c018000 	lui	at,0x8000
+ 154:	00810821 	addu	at,a0,at
+ 158:	ac220000 	sw	v0,0\(at\)
+ 15c:	ac230004 	sw	v1,4\(at\)
+ 160:	3c018000 	lui	at,0x8000
+ 164:	00810821 	addu	at,a0,at
+ 168:	ac22ffff 	sw	v0,-1\(at\)
+ 16c:	ac230003 	sw	v1,3\(at\)
+ 170:	3c010123 	lui	at,0x123
+ 174:	00810821 	addu	at,a0,at
+ 178:	ac224567 	sw	v0,17767\(at\)
+ 17c:	ac23456b 	sw	v1,17771\(at\)
+ 180:	3c010000 	lui	at,0x0
+ 184:	00810821 	addu	at,a0,at
+ 188:	ac220000 	sw	v0,0\(at\)
+ 18c:	ac230004 	sw	v1,4\(at\)
+ 190:	3c010000 	lui	at,0x0
+ 194:	00810821 	addu	at,a0,at
+ 198:	ac22ffff 	sw	v0,-1\(at\)
+ 19c:	ac230003 	sw	v1,3\(at\)
+ 1a0:	3c01abce 	lui	at,0xabce
+ 1a4:	00810821 	addu	at,a0,at
+ 1a8:	ac22ef01 	sw	v0,-4351\(at\)
+ 1ac:	ac23ef05 	sw	v1,-4347\(at\)
+ 1b0:	3c018000 	lui	at,0x8000
+ 1b4:	00810821 	addu	at,a0,at
+ 1b8:	ac220000 	sw	v0,0\(at\)
+ 1bc:	ac230004 	sw	v1,4\(at\)
+ 1c0:	3c018000 	lui	at,0x8000
+ 1c4:	00810821 	addu	at,a0,at
+ 1c8:	ac22ffff 	sw	v0,-1\(at\)
+ 1cc:	ac230003 	sw	v1,3\(at\)
+ 1d0:	3c010123 	lui	at,0x123
+ 1d4:	00810821 	addu	at,a0,at
+ 1d8:	ac224567 	sw	v0,17767\(at\)
+ 1dc:	ac23456b 	sw	v1,17771\(at\)
+ 1e0:	ac820000 	sw	v0,0\(a0\)
+ 1e4:	ac830004 	sw	v1,4\(a0\)
+ 1e8:	ac02ffff 	sw	v0,-1\(zero\)
+ 1ec:	ac030003 	sw	v1,3\(zero\)
+ 1f0:	3c01abce 	lui	at,0xabce
+ 1f4:	ac22ef01 	sw	v0,-4351\(at\)
+ 1f8:	ac23ef05 	sw	v1,-4347\(at\)
+ 1fc:	3c018000 	lui	at,0x8000
+ 200:	ac220000 	sw	v0,0\(at\)
+ 204:	ac230004 	sw	v1,4\(at\)
+ 208:	3c018000 	lui	at,0x8000
+ 20c:	ac22ffff 	sw	v0,-1\(at\)
+ 210:	ac230003 	sw	v1,3\(at\)
+ 214:	3c010123 	lui	at,0x123
+ 218:	ac224567 	sw	v0,17767\(at\)
+ 21c:	ac23456b 	sw	v1,17771\(at\)
+ 220:	3c010000 	lui	at,0x0
+ 224:	ac220000 	sw	v0,0\(at\)
+ 228:	ac230004 	sw	v1,4\(at\)
+ 22c:	3c010000 	lui	at,0x0
+ 230:	ac22ffff 	sw	v0,-1\(at\)
+ 234:	ac230003 	sw	v1,3\(at\)
+ 238:	3c01abce 	lui	at,0xabce
+ 23c:	ac22ef01 	sw	v0,-4351\(at\)
+ 240:	ac23ef05 	sw	v1,-4347\(at\)
+ 244:	3c018000 	lui	at,0x8000
+ 248:	ac220000 	sw	v0,0\(at\)
+ 24c:	ac230004 	sw	v1,4\(at\)
+ 250:	3c018000 	lui	at,0x8000
+ 254:	ac22ffff 	sw	v0,-1\(at\)
+ 258:	ac230003 	sw	v1,3\(at\)
+ 25c:	3c010123 	lui	at,0x123
+ 260:	ac224567 	sw	v0,17767\(at\)
+ 264:	ac23456b 	sw	v1,17771\(at\)
+ 268:	ac020000 	sw	v0,0\(zero\)
+ 26c:	ac030004 	sw	v1,4\(zero\)
+ 270:	8c82ffff 	lw	v0,-1\(a0\)
+ 274:	3c02abce 	lui	v0,0xabce
+ 278:	00441021 	addu	v0,v0,a0
+ 27c:	8c42ef01 	lw	v0,-4351\(v0\)
+ 280:	3c028000 	lui	v0,0x8000
+ 284:	00441021 	addu	v0,v0,a0
+ 288:	8c420000 	lw	v0,0\(v0\)
+ 28c:	3c028000 	lui	v0,0x8000
+ 290:	00441021 	addu	v0,v0,a0
+ 294:	8c42ffff 	lw	v0,-1\(v0\)
+ 298:	3c020123 	lui	v0,0x123
+ 29c:	00441021 	addu	v0,v0,a0
+ 2a0:	8c424567 	lw	v0,17767\(v0\)
+ 2a4:	24020000 	li	v0,0
+ 2a8:	00441021 	addu	v0,v0,a0
+ 2ac:	8c420000 	lw	v0,0\(v0\)
+ 2b0:	24020000 	li	v0,0
+ 2b4:	00441021 	addu	v0,v0,a0
+ 2b8:	8c42ffff 	lw	v0,-1\(v0\)
+ 2bc:	3c02abce 	lui	v0,0xabce
+ 2c0:	00441021 	addu	v0,v0,a0
+ 2c4:	8c42ef01 	lw	v0,-4351\(v0\)
+ 2c8:	3c028000 	lui	v0,0x8000
+ 2cc:	00441021 	addu	v0,v0,a0
+ 2d0:	8c420000 	lw	v0,0\(v0\)
+ 2d4:	3c028000 	lui	v0,0x8000
+ 2d8:	00441021 	addu	v0,v0,a0
+ 2dc:	8c42ffff 	lw	v0,-1\(v0\)
+ 2e0:	3c020123 	lui	v0,0x123
+ 2e4:	00441021 	addu	v0,v0,a0
+ 2e8:	8c424567 	lw	v0,17767\(v0\)
+ 2ec:	8c820000 	lw	v0,0\(a0\)
+ 2f0:	8c02ffff 	lw	v0,-1\(zero\)
+ 2f4:	3c02abce 	lui	v0,0xabce
+ 2f8:	8c42ef01 	lw	v0,-4351\(v0\)
+ 2fc:	3c028000 	lui	v0,0x8000
+ 300:	8c420000 	lw	v0,0\(v0\)
+ 304:	3c028000 	lui	v0,0x8000
+ 308:	8c42ffff 	lw	v0,-1\(v0\)
+ 30c:	3c020123 	lui	v0,0x123
+ 310:	8c424567 	lw	v0,17767\(v0\)
+ 314:	24020000 	li	v0,0
+ 318:	8c420000 	lw	v0,0\(v0\)
+ 31c:	24020000 	li	v0,0
+ 320:	8c42ffff 	lw	v0,-1\(v0\)
+ 324:	3c02abce 	lui	v0,0xabce
+ 328:	8c42ef01 	lw	v0,-4351\(v0\)
+ 32c:	3c028000 	lui	v0,0x8000
+ 330:	8c420000 	lw	v0,0\(v0\)
+ 334:	3c028000 	lui	v0,0x8000
+ 338:	8c42ffff 	lw	v0,-1\(v0\)
+ 33c:	3c020123 	lui	v0,0x123
+ 340:	8c424567 	lw	v0,17767\(v0\)
+ 344:	8c020000 	lw	v0,0\(zero\)
+ 348:	00000000 	nop
+ 34c:	ac82ffff 	sw	v0,-1\(a0\)
+ 350:	3c01abce 	lui	at,0xabce
+ 354:	00240821 	addu	at,at,a0
+ 358:	ac22ef01 	sw	v0,-4351\(at\)
+ 35c:	3c018000 	lui	at,0x8000
+ 360:	00240821 	addu	at,at,a0
+ 364:	ac220000 	sw	v0,0\(at\)
+ 368:	3c018000 	lui	at,0x8000
+ 36c:	00240821 	addu	at,at,a0
+ 370:	ac22ffff 	sw	v0,-1\(at\)
+ 374:	3c010123 	lui	at,0x123
+ 378:	00240821 	addu	at,at,a0
+ 37c:	ac224567 	sw	v0,17767\(at\)
+ 380:	24010000 	li	at,0
+ 384:	00240821 	addu	at,at,a0
+ 388:	ac220000 	sw	v0,0\(at\)
+ 38c:	24010000 	li	at,0
+ 390:	00240821 	addu	at,at,a0
+ 394:	ac22ffff 	sw	v0,-1\(at\)
+ 398:	3c01abce 	lui	at,0xabce
+ 39c:	00240821 	addu	at,at,a0
+ 3a0:	ac22ef01 	sw	v0,-4351\(at\)
+ 3a4:	3c018000 	lui	at,0x8000
+ 3a8:	00240821 	addu	at,at,a0
+ 3ac:	ac220000 	sw	v0,0\(at\)
+ 3b0:	3c018000 	lui	at,0x8000
+ 3b4:	00240821 	addu	at,at,a0
+ 3b8:	ac22ffff 	sw	v0,-1\(at\)
+ 3bc:	3c010123 	lui	at,0x123
+ 3c0:	00240821 	addu	at,at,a0
+ 3c4:	ac224567 	sw	v0,17767\(at\)
+ 3c8:	ac820000 	sw	v0,0\(a0\)
+ 3cc:	ac02ffff 	sw	v0,-1\(zero\)
+ 3d0:	3c01abce 	lui	at,0xabce
+ 3d4:	ac22ef01 	sw	v0,-4351\(at\)
+ 3d8:	3c018000 	lui	at,0x8000
+ 3dc:	ac220000 	sw	v0,0\(at\)
+ 3e0:	3c018000 	lui	at,0x8000
+ 3e4:	ac22ffff 	sw	v0,-1\(at\)
+ 3e8:	3c010123 	lui	at,0x123
+ 3ec:	ac224567 	sw	v0,17767\(at\)
+ 3f0:	24010000 	li	at,0
+ 3f4:	ac220000 	sw	v0,0\(at\)
+ 3f8:	24010000 	li	at,0
+ 3fc:	ac22ffff 	sw	v0,-1\(at\)
+ 400:	3c01abce 	lui	at,0xabce
+ 404:	ac22ef01 	sw	v0,-4351\(at\)
+ 408:	3c018000 	lui	at,0x8000
+ 40c:	ac220000 	sw	v0,0\(at\)
+ 410:	3c018000 	lui	at,0x8000
+ 414:	ac22ffff 	sw	v0,-1\(at\)
+ 418:	3c010123 	lui	at,0x123
+ 41c:	ac224567 	sw	v0,17767\(at\)
+ 420:	ac020000 	sw	v0,0\(zero\)
+ 424:	2482ffff 	addiu	v0,a0,-1
+ 428:	3c02abcd 	lui	v0,0xabcd
+ 42c:	3442ef01 	ori	v0,v0,0xef01
+ 430:	00441021 	addu	v0,v0,a0
+ 434:	3c028000 	lui	v0,0x8000
+ 438:	00441021 	addu	v0,v0,a0
+ 43c:	3c027fff 	lui	v0,0x7fff
+ 440:	3442ffff 	ori	v0,v0,0xffff
+ 444:	00441021 	addu	v0,v0,a0
+ 448:	3c020123 	lui	v0,0x123
+ 44c:	34424567 	ori	v0,v0,0x4567
+ 450:	00441021 	addu	v0,v0,a0
+ 454:	24820000 	addiu	v0,a0,0
+ 458:	2482ffff 	addiu	v0,a0,-1
+ 45c:	3c02abcd 	lui	v0,0xabcd
+ 460:	3442ef01 	ori	v0,v0,0xef01
+ 464:	00441021 	addu	v0,v0,a0
+ 468:	3c028000 	lui	v0,0x8000
+ 46c:	00441021 	addu	v0,v0,a0
+ 470:	3c027fff 	lui	v0,0x7fff
+ 474:	3442ffff 	ori	v0,v0,0xffff
+ 478:	00441021 	addu	v0,v0,a0
+ 47c:	3c020123 	lui	v0,0x123
+ 480:	34424567 	ori	v0,v0,0x4567
+ 484:	00441021 	addu	v0,v0,a0
+ 488:	24820000 	addiu	v0,a0,0
+ 48c:	2402ffff 	li	v0,-1
+ 490:	3c02abcd 	lui	v0,0xabcd
+ 494:	3442ef01 	ori	v0,v0,0xef01
+ 498:	3c028000 	lui	v0,0x8000
+ 49c:	3c027fff 	lui	v0,0x7fff
+ 4a0:	3442ffff 	ori	v0,v0,0xffff
+ 4a4:	3c020123 	lui	v0,0x123
+ 4a8:	34424567 	ori	v0,v0,0x4567
+ 4ac:	24020000 	li	v0,0
+ 4b0:	2402ffff 	li	v0,-1
+ 4b4:	3c02abcd 	lui	v0,0xabcd
+ 4b8:	3442ef01 	ori	v0,v0,0xef01
+ 4bc:	3c028000 	lui	v0,0x8000
+ 4c0:	3c027fff 	lui	v0,0x7fff
+ 4c4:	3442ffff 	ori	v0,v0,0xffff
+ 4c8:	3c020123 	lui	v0,0x123
+ 4cc:	34424567 	ori	v0,v0,0x4567
+ 4d0:	24020000 	li	v0,0
 	\.\.\.
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32.s binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32.s
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/ldstla-32.s	2003-10-01 02:07:48.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/ldstla-32.s	2005-04-11 18:04:12.000000000 +0000
@@ -1,26 +1,132 @@
 	.text
-	ld $2, 0x0123456789abcdef($3)
-	ld $2, 0xabcdef0123456789($3)
-	ld $2, 0xffffffff80000000($3)
-	ld $2, 0xffffffff00000000($3)
-	ld $2, 0xffffffff7fffffff($3)
-	ld $2, 0xabcdef01($3)
-	ld $2, 0x01234567($3)
-
-	sd $2, 0x0123456789abcdef($3)
-	sd $2, 0xabcdef0123456789($3)
-	sd $2, 0xffffffff80000000($3)
-	sd $2, 0xffffffff00000000($3)
-	sd $2, 0xffffffff7fffffff($3)
-	sd $2, 0xabcdef01($3)
-	sd $2, 0x01234567($3)
+	ld $2, 0xffffffffffffffff($4)
+	ld $2, 0xffffffffabcdef01($4)
+	ld $2, 0xffffffff80000000($4)
+	ld $2, 0xffffffff7fffffff($4)
+	ld $2, 0xffffffff01234567($4)
+	ld $2, 0xffffffff00000000($4)
+	ld $2, 0xffffffff($4)
+	ld $2, 0xabcdef01($4)
+	ld $2, 0x80000000($4)
+	ld $2, 0x7fffffff($4)
+	ld $2, 0x01234567($4)
+	ld $2, 0x00000000($4)
 
-	lw $2, 0xffffffff80000000($3)
-	lw $2, 0x01234567($3)
+	ld $2, 0xffffffffffffffff
+	ld $2, 0xffffffffabcdef01
+	ld $2, 0xffffffff80000000
+	ld $2, 0xffffffff7fffffff
+	ld $2, 0xffffffff01234567
+	ld $2, 0xffffffff00000000
+	ld $2, 0xffffffff
+	ld $2, 0xabcdef01
+	ld $2, 0x80000000
+	ld $2, 0x7fffffff
+	ld $2, 0x01234567
+	ld $2, 0x00000000
 
-	sw $2, 0x01234567($3)
+	sd $2, 0xffffffffffffffff($4)
+	sd $2, 0xffffffffabcdef01($4)
+	sd $2, 0xffffffff80000000($4)
+	sd $2, 0xffffffff7fffffff($4)
+	sd $2, 0xffffffff01234567($4)
+	sd $2, 0xffffffff00000000($4)
+	sd $2, 0xffffffff($4)
+	sd $2, 0xabcdef01($4)
+	sd $2, 0x80000000($4)
+	sd $2, 0x7fffffff($4)
+	sd $2, 0x01234567($4)
+	sd $2, 0x00000000($4)
 
+	sd $2, 0xffffffffffffffff
+	sd $2, 0xffffffffabcdef01
+	sd $2, 0xffffffff80000000
+	sd $2, 0xffffffff7fffffff
+	sd $2, 0xffffffff01234567
+	sd $2, 0xffffffff00000000
+	sd $2, 0xffffffff
+	sd $2, 0xabcdef01
+	sd $2, 0x80000000
+	sd $2, 0x7fffffff
+	sd $2, 0x01234567
+	sd $2, 0x00000000
+
+	lw $2, 0xffffffffffffffff($4)
+	lw $2, 0xffffffffabcdef01($4)
+	lw $2, 0xffffffff80000000($4)
+	lw $2, 0xffffffff7fffffff($4)
+	lw $2, 0xffffffff01234567($4)
+	lw $2, 0xffffffff00000000($4)
+	lw $2, 0xffffffff($4)
+	lw $2, 0xabcdef01($4)
+	lw $2, 0x80000000($4)
+	lw $2, 0x7fffffff($4)
+	lw $2, 0x01234567($4)
+	lw $2, 0x00000000($4)
+
+	lw $2, 0xffffffffffffffff
+	lw $2, 0xffffffffabcdef01
+	lw $2, 0xffffffff80000000
+	lw $2, 0xffffffff7fffffff
+	lw $2, 0xffffffff01234567
+	lw $2, 0xffffffff00000000
+	lw $2, 0xffffffff
+	lw $2, 0xabcdef01
+	lw $2, 0x80000000
+	lw $2, 0x7fffffff
+	lw $2, 0x01234567
+	lw $2, 0x00000000
+
+	sw $2, 0xffffffffffffffff($4)
+	sw $2, 0xffffffffabcdef01($4)
+	sw $2, 0xffffffff80000000($4)
+	sw $2, 0xffffffff7fffffff($4)
+	sw $2, 0xffffffff01234567($4)
+	sw $2, 0xffffffff00000000($4)
+	sw $2, 0xffffffff($4)
+	sw $2, 0xabcdef01($4)
+	sw $2, 0x80000000($4)
+	sw $2, 0x7fffffff($4)
+	sw $2, 0x01234567($4)
+	sw $2, 0x00000000($4)
+
+	sw $2, 0xffffffffffffffff
+	sw $2, 0xffffffffabcdef01
+	sw $2, 0xffffffff80000000
+	sw $2, 0xffffffff7fffffff
+	sw $2, 0xffffffff01234567
+	sw $2, 0xffffffff00000000
+	sw $2, 0xffffffff
+	sw $2, 0xabcdef01
+	sw $2, 0x80000000
+	sw $2, 0x7fffffff
+	sw $2, 0x01234567
+	sw $2, 0x00000000
+
+	la $2, 0xffffffffffffffff($4)
+	la $2, 0xffffffffabcdef01($4)
+	la $2, 0xffffffff80000000($4)
+	la $2, 0xffffffff7fffffff($4)
+	la $2, 0xffffffff01234567($4)
+	la $2, 0xffffffff00000000($4)
+	la $2, 0xffffffff($4)
+	la $2, 0xabcdef01($4)
+	la $2, 0x80000000($4)
+	la $2, 0x7fffffff($4)
+	la $2, 0x01234567($4)
+	la $2, 0x00000000($4)
+
+	la $2, 0xffffffffffffffff
+	la $2, 0xffffffffabcdef01
+	la $2, 0xffffffff80000000
+	la $2, 0xffffffff7fffffff
+	la $2, 0xffffffff01234567
+	la $2, 0xffffffff00000000
+	la $2, 0xffffffff
+	la $2, 0xabcdef01
+	la $2, 0x80000000
 	la $2, 0x7fffffff
 	la $2, 0x01234567
+	la $2, 0x00000000
 
 	.space 8
diff -up --recursive --new-file binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/mips.exp binutils-2.15.96-20050331/gas/testsuite/gas/mips/mips.exp
--- binutils-2.15.96-20050331.macro/gas/testsuite/gas/mips/mips.exp	2005-03-09 09:53:20.000000000 +0000
+++ binutils-2.15.96-20050331/gas/testsuite/gas/mips/mips.exp	2005-04-11 16:49:03.000000000 +0000
@@ -727,7 +727,17 @@ if { [istarget mips*-*-*] } then {
     run_dump_test "hwr-names-mips64r2"
 
     run_dump_test "ldstla-32"
+    run_dump_test "ldstla-32-mips3"
     run_dump_test "ldstla-32-shared"
+    run_dump_test "ldstla-32-mips3-shared"
+    run_list_test "ldstla-32-1" "-mabi=32" \
+	"MIPS ld-st-la bad constants (ABI o32)"
+    run_list_test "ldstla-32-mips3-1" "-mabi=32" \
+	"MIPS ld-st-la bad constants (ABI o32, mips3)"
+    run_list_test "ldstla-32-1" "-KPIC -mabi=32" \
+	"MIPS ld-st-la bad constants (ABI o32, shared)"
+    run_list_test "ldstla-32-mips3-1" "-KPIC -mabi=32" \
+	"MIPS ld-st-la bad constants (ABI o32, mips3, shared)"
     run_dump_test "ldstla-eabi64"
     if $has_newabi {
 	run_dump_test "ldstla-n64"



More information about the Binutils mailing list