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: how close to binutils-2.12 previews


On 15 Feb 2002, Eric Christopher wrote:

> Can you post the patch again? I appear to have missed it.

 The original mail follows.

> Thanks and my apologies.

 Not a problem.

---------- Forwarded message ----------
Message-ID: <Pine.GSO.3.96.1020204174826.5750I-100000@delta.ds2.pg.gda.pl>
Date: Tue, 5 Feb 2002 13:13:13 +0100 (MET)
From: "Maciej W. Rozycki" <macro@ds2.pg.gda.pl>
To: binutils@sources.redhat.com
Subject: [patch] binutils current: Small mips*-linux bits

Hello,

 Here are two patches comprising a few changes originally by Ulf Carlsson
that haven't been integrated yet.  I believe they're worth putting them in
before 2.12. 

 The first patch implements a warning when an incorrect variation of the
"la" instruction is used.  Since the variation used determines the address
width, it's likely incorrect to use "la" in the 64-bit mode or "dla" in
the 32-bit one.

 The other one reorders vectors/emulations (purely aesthetical) and
defines primary ones properly for mips64*-linux targets. 

bfd/Changelog:
2002-02-04  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config.bfd (mips*el-*-openbsd*): Vectors reordered for
	consistency.
	(mips64*el-*-linux*): Likewise.
	(mips64*-*-linux*): Likewise.
	Patch based upon a work by Ulf Carlsson.

gas/ChangeLog:
2002-02-04  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* config/tc-mips.c (macro): Warn if "la" or "dla" is used in
	the 64-bit or the 32-bit mode, respectively.
	Patch based upon a work by Ulf Carlsson.

ld/ChangeLog:
2002-02-04  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* configure.tgt (mips64el-*-linux-gnu*): New target.
	(mips64*-*-linux-gnu*): Likewise.
	Patch based upon a work by Ulf Carlsson.

  Maciej

-- 
+  Maciej W. Rozycki, Technical University of Gdansk, Poland   +
+--------------------------------------------------------------+
+        e-mail: macro@ds2.pg.gda.pl, PGP key available        +

binutils-2.11.93-20020129-ulfc-mips-la.patch
diff -up --recursive --new-file binutils.macro/gas/config/tc-mips.c binutils/gas/config/tc-mips.c
--- binutils.macro/gas/config/tc-mips.c	Thu Jan 17 04:25:24 2002
+++ binutils/gas/config/tc-mips.c	Wed Jan 30 19:43:22 2002
@@ -4569,6 +4569,14 @@ macro (ip)
       /* Load the address of a symbol into a register.  If breg is not
 	 zero, we then add a base register to it.  */
 
+      if (dbl != HAVE_64BIT_ADDRESSES)
+	{
+	  if (dbl)
+	    as_warn (_("dla instruction used in 32-bit mode"));
+	  else
+	    as_warn (_("la instruction used in 64-bit mode"));
+	}
+
       if (treg == breg)
 	{
 	  tempreg = AT;


binutils-2.11.93-20020129-ulfc-mips-conf.patch
diff -up --recursive --new-file binutils.macro/bfd/config.bfd binutils/bfd/config.bfd
--- binutils.macro/bfd/config.bfd	Tue Jan 22 04:25:21 2002
+++ binutils/bfd/config.bfd	Wed Jan 30 19:47:45 2002
@@ -708,7 +708,7 @@ case "${targ}" in
     ;;
   mips*el-*-openbsd*)
     targ_defvec=bfd_elf32_littlemips_vec
-    targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_bigmips_vec bfd_elf64_littlemips_vec ecoff_little_vec ecoff_big_vec"
+    targ_selvecs="bfd_elf32_bigmips_vec bfd_elf64_littlemips_vec bfd_elf64_bigmips_vec ecoff_little_vec ecoff_big_vec"
     ;;
   mips*-*-openbsd*)
     targ_defvec=bfd_elf32_bigmips_vec
@@ -716,12 +716,12 @@ case "${targ}" in
     ;;
 #ifdef BFD64
   mips64*el-*-linux*)
-    targ_defvec=bfd_elf32_tradlittlemips_vec
-    targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
+    targ_defvec=bfd_elf64_tradlittlemips_vec
+    targ_selvecs="bfd_elf64_tradbigmips_vec bfd_elf32_tradlittlemips_vec bfd_elf32_tradbigmips_vec"
     ;;
   mips64*-*-linux*)
-    targ_defvec=bfd_elf32_tradbigmips_vec
-    targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
+    targ_defvec=bfd_elf64_tradbigmips_vec
+    targ_selvecs="bfd_elf64_tradlittlemips_vec bfd_elf32_tradbigmips_vec bfd_elf32_tradlittlemips_vec"
     ;;
 #endif
   mips*el-*-linux*)
 #define TARGET_LITTLE_SYM		bfd_elf64_littlemips_vec
diff -up --recursive --new-file binutils.macro/ld/configure.tgt binutils/ld/configure.tgt
--- binutils.macro/ld/configure.tgt	Tue Jan 22 04:28:12 2002
+++ binutils/ld/configure.tgt	Wed Jan 30 19:43:22 2002
@@ -337,6 +337,12 @@ mips*el-*-rtems*)	targ_emul=elf32elmip ;
 mips*-*-rtems*)		targ_emul=elf32ebmip ;;
 mips*el-*-vxworks*)	targ_emul=elf32elmip ;;
 mips*-*-vxworks*)	targ_emul=elf32ebmip ;;
+mips64el-*-linux-gnu*)	targ_emul=elf64ltsmip
+			targ_extra_emuls="elf64btsmip elf32ltsmip elf32btsmip"
+			;;
+mips64*-*-linux-gnu*)	targ_emul=elf64btsmip
+			targ_extra_emuls="elf64ltsmip elf32btsmip elf32ltsmip"
+			;;
 mips*el-*-linux-gnu*)	targ_emul=elf32ltsmip
 			targ_extra_emuls="elf32btsmip elf64ltsmip elf64btsmip"
 			;;


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