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]

[PATCH RFA] those MIPS ecoff branch test failures...


So, i tracked down the recently-added MIPS ECOFF branch-related test
failures.  They were caused by the change:

2001-09-07  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

        * gas/mips/beq.d: Check branches to external labels.
        * gas/mips/beq.s: Likewise.
        * gas/mips/bge.d: Likewise.
        * gas/mips/bge.s: Likewise.
        * gas/mips/bgeu.d: Likewise.
        * gas/mips/bgeu.s: Likewise.
        * gas/mips/blt.d: Likewise.
        * gas/mips/blt.s: Likewise.
        * gas/mips/bltu.d: Likewise.
        * gas/mips/bltu.s: Likewise.

"I guess ECOFF doesn't cope with branches to external labels."  8-)


How about the following?  it moves the new checks into their own
files.


chris
====

2001-10-22  Chris Demetriou  <cgd@broadcom.com>

        * gas/mips/beq.d: Remove tests of branches to external labels added
        on 2001-09-07.
        * gas/mips/beq.s: Likewise.
        * gas/mips/bge.d: Likewise.
        * gas/mips/bge.s: Likewise.
        * gas/mips/bgeu.d: Likewise.
        * gas/mips/bgeu.s: Likewise.
        * gas/mips/blt.d: Likewise.
        * gas/mips/blt.s: Likewise.
        * gas/mips/bltu.d: Likewise.
        * gas/mips/bltu.s: Likewise.
        * gas/mips/beq-extern.d: New file to test branches to external labels.
        * gas/mips/beq-extern.s: Likewise.
        * gas/mips/bge-extern.d: Likewise.
        * gas/mips/bge-extern.s: Likewise.
        * gas/mips/bgeu-extern.d: Likewise.
        * gas/mips/bgeu-extern.s: Likewise.
        * gas/mips/blt-extern.d: Likewise.
        * gas/mips/blt-extern.s: Likewise.
        * gas/mips/bltu-extern.d: Likewise.
        * gas/mips/bltu-extern.s: Likewise.
        * gas/mips/mips.exp: Run the new branch tests.

Index: gas/mips/beq-extern.d
===================================================================
RCS file: beq-extern.d
diff -N beq-extern.d
--- /dev/null	Tue May  5 13:32:27 1998
+++ beq-extern.d	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,15 @@
+#objdump: -dr --prefix-addresses -mmips:4000
+#as: -mips3
+#name: MIPS external beq
+
+# Test the beq macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> b	00000000 <text_label>
+[ 	]*0: R_MIPS_PC16	external_label
+0+0004 <[^>]*> nop
+0+0008 <[^>]*> bal	00000008 <text_label\+0x8>
+[ 	]*8: R_MIPS_PC16	external_label
+	...
Index: gas/mips/beq-extern.s
===================================================================
RCS file: beq-extern.s
diff -N beq-extern.s
--- /dev/null	Tue May  5 13:32:27 1998
+++ beq-extern.s	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,10 @@
+# Source file used to test the beq macro w/ external labels.
+	.globl	text_label	.text
+text_label:	
+
+# Branch to an external label.
+	b	external_label
+	bal	external_label
+
+# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
+	.space	8
Index: gas/mips/beq.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/beq.d,v
retrieving revision 1.3
diff -u -r1.3 beq.d
--- beq.d	2001/09/07 05:00:37	1.3
+++ beq.d	2001/10/23 06:13:18
@@ -37,10 +37,4 @@
 0+2006c <[^>]*> nop
 0+20070 <[^>]*> jal	0+0000 <text_label>
 [ 	]*20070: (MIPS_JMP|JMPADDR|R_MIPS_26)	.text
-0+20074 <[^>]*> nop
-0+20078 <[^>]*> b	0+20078 <text_label\+0x20078>
-[ 	]*20078: R_MIPS_PC16	external_label
-0+2007c <[^>]*> nop
-0+20080 <[^>]*> bal	0+20080 <text_label\+0x20080>
-[ 	]*20080: R_MIPS_PC16	external_label
 	...
Index: gas/mips/beq.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/beq.s,v
retrieving revision 1.2
diff -u -r1.2 beq.s
--- beq.s	2001/09/07 05:00:37	1.2
+++ beq.s	2001/10/23 06:13:18
@@ -22,9 +22,7 @@
 	b	text_label
 	bal	text_label
 
-# Branch to an external label.
-	b	external_label
-	bal	external_label
-
 # Round to a 16 byte boundary, for ease in testing multiple targets.
+	nop
+	nop
 	nop
Index: gas/mips/bge-extern.d
===================================================================
RCS file: bge-extern.d
diff -N bge-extern.d
--- /dev/null	Tue May  5 13:32:27 1998
+++ bge-extern.d	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,25 @@
+#objdump: -dr --prefix-addresses -mmips:4000
+#as: -mips3
+#name: MIPS external bge
+
+# Test the bge macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> slt	at,a0,a1
+0+0004 <[^>]*> beqz	at,00000004 <text_label\+0x4>
+[ 	]*4: R_MIPS_PC16	external_label
+0+0008 <[^>]*> nop
+0+000c <[^>]*> slt	at,a1,a0
+0+0010 <[^>]*> bnez	at,00000010 <text_label\+0x10>
+[ 	]*10: R_MIPS_PC16	external_label
+0+0014 <[^>]*> nop
+0+0018 <[^>]*> slt	at,a0,a1
+0+001c <[^>]*> beqzl	at,0000001c <text_label\+0x1c>
+[ 	]*1c: R_MIPS_PC16	external_label
+0+0020 <[^>]*> nop
+0+0024 <[^>]*> slt	at,a1,a0
+0+0028 <[^>]*> bnezl	at,00000028 <text_label\+0x28>
+[ 	]*28: R_MIPS_PC16	external_label
+	...
Index: gas/mips/bge-extern.s
===================================================================
RCS file: bge-extern.s
diff -N bge-extern.s
--- /dev/null	Tue May  5 13:32:27 1998
+++ bge-extern.s	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,12 @@
+# Source file used to test the bge macro w/ external labels.
+	
+text_label:	
+
+# Branch to an external label.
+	bge	$4,$5,external_label
+	bgt	$4,$5,external_label
+	bgel	$4,$5,external_label
+	bgtl	$4,$5,external_label
+
+# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
+	.space	8
Index: gas/mips/bge.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/bge.d,v
retrieving revision 1.3
diff -u -r1.3 bge.d
--- bge.d	2001/09/07 05:00:37	1.3
+++ bge.d	2001/10/23 06:13:18
@@ -50,20 +50,4 @@
 0+00a4 <[^>]*> nop
 0+00a8 <[^>]*> slt	at,a1,a0
 0+00ac <[^>]*> bnezl	at,0+0000 <text_label>
-0+00b0 <[^>]*> nop
-0+00b4 <[^>]*> slt	at,a0,a1
-0+00b8 <[^>]*> beqz	at,000000b8 <text_label\+0xb8>
-[ 	]*b8: R_MIPS_PC16	external_label
-0+00bc <[^>]*> nop
-0+00c0 <[^>]*> slt	at,a1,a0
-0+00c4 <[^>]*> bnez	at,000000c4 <text_label\+0xc4>
-[ 	]*c4: R_MIPS_PC16	external_label
-0+00c8 <[^>]*> nop
-0+00cc <[^>]*> slt	at,a0,a1
-0+00d0 <[^>]*> beqzl	at,000000d0 <text_label\+0xd0>
-[ 	]*d0: R_MIPS_PC16	external_label
-0+00d4 <[^>]*> nop
-0+00d8 <[^>]*> slt	at,a1,a0
-0+00dc <[^>]*> bnezl	at,000000dc <text_label\+0xdc>
-[ 	]*dc: R_MIPS_PC16	external_label
 	...
Index: gas/mips/bge.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/bge.s,v
retrieving revision 1.2
diff -u -r1.2 bge.s
--- bge.s	2001/09/07 05:00:37	1.2
+++ bge.s	2001/10/23 06:13:18
@@ -24,12 +24,6 @@
 	bgel	$4,$5,text_label
 	bgtl	$4,$5,text_label
 
-# Branch to an external label.
-	bge	$4,$5,external_label
-	bgt	$4,$5,external_label
-	bgel	$4,$5,external_label
-	bgtl	$4,$5,external_label
-
 # Round to a 16 byte boundary, for ease in testing multiple targets.
 	nop
 	nop
Index: gas/mips/bgeu-extern.d
===================================================================
RCS file: bgeu-extern.d
diff -N bgeu-extern.d
--- /dev/null	Tue May  5 13:32:27 1998
+++ bgeu-extern.d	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,25 @@
+#objdump: -dr --prefix-addresses -mmips:4000
+#as: -mips3
+#name: MIPS external bgeu
+
+# Test the bgeu macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> sltu	at,a0,a1
+0+0004 <[^>]*> beqz	at,00000004 <text_label\+0x4>
+[ 	]*4: R_MIPS_PC16	external_label
+0+0008 <[^>]*> nop
+0+000c <[^>]*> sltu	at,a1,a0
+0+0010 <[^>]*> bnez	at,00000010 <text_label\+0x10>
+[ 	]*10: R_MIPS_PC16	external_label
+0+0014 <[^>]*> nop
+0+0018 <[^>]*> sltu	at,a0,a1
+0+001c <[^>]*> beqzl	at,0000001c <text_label\+0x1c>
+[ 	]*1c: R_MIPS_PC16	external_label
+0+0020 <[^>]*> nop
+0+0024 <[^>]*> sltu	at,a1,a0
+0+0028 <[^>]*> bnezl	at,00000028 <text_label\+0x28>
+[ 	]*28: R_MIPS_PC16	external_label
+	...
Index: gas/mips/bgeu-extern.s
===================================================================
RCS file: bgeu-extern.s
diff -N bgeu-extern.s
--- /dev/null	Tue May  5 13:32:27 1998
+++ bgeu-extern.s	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,12 @@
+# Source file used to test the bgeu macro w/ external labels.
+	
+text_label:	
+
+# Branch to an external label.
+	bgeu	$4,$5,external_label
+	bgtu	$4,$5,external_label
+	bgeul	$4,$5,external_label
+	bgtul	$4,$5,external_label
+
+# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
+	.space	8
Index: gas/mips/bgeu.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/bgeu.d,v
retrieving revision 1.3
diff -u -r1.3 bgeu.d
--- bgeu.d	2001/09/07 05:00:37	1.3
+++ bgeu.d	2001/10/23 06:13:18
@@ -44,20 +44,4 @@
 0+008c <[^>]*> nop
 0+0090 <[^>]*> sltu	at,a1,a0
 0+0094 <[^>]*> bnezl	at,0+0000 <text_label>
-0+0098 <[^>]*> nop
-0+009c <[^>]*> sltu	at,a0,a1
-0+00a0 <[^>]*> beqz	at,000000a0 <text_label\+0xa0>
-[ 	]*a0: R_MIPS_PC16	external_label
-0+00a4 <[^>]*> nop
-0+00a8 <[^>]*> sltu	at,a1,a0
-0+00ac <[^>]*> bnez	at,000000ac <text_label\+0xac>
-[ 	]*ac: R_MIPS_PC16	external_label
-0+00b0 <[^>]*> nop
-0+00b4 <[^>]*> sltu	at,a0,a1
-0+00b8 <[^>]*> beqzl	at,000000b8 <text_label\+0xb8>
-[ 	]*b8: R_MIPS_PC16	external_label
-0+00bc <[^>]*> nop
-0+00c0 <[^>]*> sltu	at,a1,a0
-0+00c4 <[^>]*> bnezl	at,000000c4 <text_label\+0xc4>
-[ 	]*c4: R_MIPS_PC16	external_label
 	...
Index: gas/mips/bgeu.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/bgeu.s,v
retrieving revision 1.2
diff -u -r1.2 bgeu.s
--- bgeu.s	2001/09/07 05:00:37	1.2
+++ bgeu.s	2001/10/23 06:13:18
@@ -22,12 +22,6 @@
 	bgeul	$4,$5,text_label
 	bgtul	$4,$5,text_label
 
-# Branch to an external label.
-	bgeu	$4,$5,external_label
-	bgtu	$4,$5,external_label
-	bgeul	$4,$5,external_label
-	bgtul	$4,$5,external_label
-
 # Round to a 16 byte boundary, for ease in testing multiple targets.
 	nop
 	nop
Index: gas/mips/blt-extern.d
===================================================================
RCS file: blt-extern.d
diff -N blt-extern.d
--- /dev/null	Tue May  5 13:32:27 1998
+++ blt-extern.d	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,25 @@
+#objdump: -dr --prefix-addresses -mmips:4000
+#as: -mips3
+#name: MIPS external blt
+
+# Test the blt macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> slt	at,a0,a1
+0+0004 <[^>]*> bnez	at,00000004 <text_label\+0x4>
+[ 	]*4: R_MIPS_PC16	external_label
+0+0008 <[^>]*> nop
+0+000c <[^>]*> slt	at,a1,a0
+0+0010 <[^>]*> beqz	at,00000010 <text_label\+0x10>
+[ 	]*10: R_MIPS_PC16	external_label
+0+0014 <[^>]*> nop
+0+0018 <[^>]*> slt	at,a0,a1
+0+001c <[^>]*> bnezl	at,0000001c <text_label\+0x1c>
+[ 	]*1c: R_MIPS_PC16	external_label
+0+0020 <[^>]*> nop
+0+0024 <[^>]*> slt	at,a1,a0
+0+0028 <[^>]*> beqzl	at,00000028 <text_label\+0x28>
+[ 	]*28: R_MIPS_PC16	external_label
+	...
Index: gas/mips/blt-extern.s
===================================================================
RCS file: blt-extern.s
diff -N blt-extern.s
--- /dev/null	Tue May  5 13:32:27 1998
+++ blt-extern.s	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,12 @@
+# Source file used to test the blt macro w/ external labels.
+	
+text_label:	
+
+# Branch to an external label.
+	blt	$4,$5,external_label
+	ble	$4,$5,external_label
+	bltl	$4,$5,external_label
+	blel	$4,$5,external_label
+
+# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
+	.space	8
Index: gas/mips/blt.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/blt.d,v
retrieving revision 1.3
diff -u -r1.3 blt.d
--- blt.d	2001/09/07 05:00:37	1.3
+++ blt.d	2001/10/23 06:13:18
@@ -50,20 +50,4 @@
 0+00a4 <[^>]*> nop
 0+00a8 <[^>]*> slt	at,a1,a0
 0+00ac <[^>]*> beqzl	at,0+0000 <text_label>
-0+00b0 <[^>]*> nop
-0+00b4 <[^>]*> slt	at,a0,a1
-0+00b8 <[^>]*> bnez	at,000000b8 <text_label\+0xb8>
-[ 	]*b8: R_MIPS_PC16	external_label
-0+00bc <[^>]*> nop
-0+00c0 <[^>]*> slt	at,a1,a0
-0+00c4 <[^>]*> beqz	at,000000c4 <text_label\+0xc4>
-[ 	]*c4: R_MIPS_PC16	external_label
-0+00c8 <[^>]*> nop
-0+00cc <[^>]*> slt	at,a0,a1
-0+00d0 <[^>]*> bnezl	at,000000d0 <text_label\+0xd0>
-[ 	]*d0: R_MIPS_PC16	external_label
-0+00d4 <[^>]*> nop
-0+00d8 <[^>]*> slt	at,a1,a0
-0+00dc <[^>]*> beqzl	at,000000dc <text_label\+0xdc>
-[ 	]*dc: R_MIPS_PC16	external_label
 	...
Index: gas/mips/blt.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/blt.s,v
retrieving revision 1.2
diff -u -r1.2 blt.s
--- blt.s	2001/09/07 05:00:37	1.2
+++ blt.s	2001/10/23 06:13:18
@@ -24,12 +24,6 @@
 	bltl	$4,$5,text_label
 	blel	$4,$5,text_label
 
-# Branch to an external label.
-	blt	$4,$5,external_label
-	ble	$4,$5,external_label
-	bltl	$4,$5,external_label
-	blel	$4,$5,external_label
-
 # Round to a 16 byte boundary, for ease in testing multiple targets.
 	nop
 	nop
Index: gas/mips/bltu-extern.d
===================================================================
RCS file: bltu-extern.d
diff -N bltu-extern.d
--- /dev/null	Tue May  5 13:32:27 1998
+++ bltu-extern.d	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,25 @@
+#objdump: -dr --prefix-addresses -mmips:4000
+#as: -mips3
+#name: MIPS external bltu
+
+# Test the bltu macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+0000 <[^>]*> sltu	at,a0,a1
+0+0004 <[^>]*> bnez	at,00000004 <text_label\+0x4>
+[ 	]*4: R_MIPS_PC16	external_label
+0+0008 <[^>]*> nop
+0+000c <[^>]*> sltu	at,a1,a0
+0+0010 <[^>]*> beqz	at,00000010 <text_label\+0x10>
+[ 	]*10: R_MIPS_PC16	external_label
+0+0014 <[^>]*> nop
+0+0018 <[^>]*> sltu	at,a0,a1
+0+001c <[^>]*> bnezl	at,0000001c <text_label\+0x1c>
+[ 	]*1c: R_MIPS_PC16	external_label
+0+0020 <[^>]*> nop
+0+0024 <[^>]*> sltu	at,a1,a0
+0+0028 <[^>]*> beqzl	at,00000028 <text_label\+0x28>
+[ 	]*28: R_MIPS_PC16	external_label
+	...
Index: gas/mips/bltu-extern.s
===================================================================
RCS file: bltu-extern.s
diff -N bltu-extern.s
--- /dev/null	Tue May  5 13:32:27 1998
+++ bltu-extern.s	Mon Oct 22 23:13:18 2001
@@ -0,0 +1,12 @@
+# Source file used to test the bltu macro w/ external labels.
+	
+text_label:	
+
+# Branch to an external label.
+	bltu	$4,$5,external_label
+	bleu	$4,$5,external_label
+	bltul	$4,$5,external_label
+	bleul	$4,$5,external_label
+
+# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
+	.space	8
Index: gas/mips/bltu.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/bltu.d,v
retrieving revision 1.3
diff -u -r1.3 bltu.d
--- bltu.d	2001/09/07 05:00:37	1.3
+++ bltu.d	2001/10/23 06:13:18
@@ -44,20 +44,4 @@
 0+008c <[^>]*> nop
 0+0090 <[^>]*> sltu	at,a1,a0
 0+0094 <[^>]*> beqzl	at,0+0000 <text_label>
-0+0098 <[^>]*> nop
-0+009c <[^>]*> sltu	at,a0,a1
-0+00a0 <[^>]*> bnez	at,000000a0 <text_label\+0xa0>
-[ 	]*a0: R_MIPS_PC16	external_label
-0+00a4 <[^>]*> nop
-0+00a8 <[^>]*> sltu	at,a1,a0
-0+00ac <[^>]*> beqz	at,000000ac <text_label\+0xac>
-[ 	]*ac: R_MIPS_PC16	external_label
-0+00b0 <[^>]*> nop
-0+00b4 <[^>]*> sltu	at,a0,a1
-0+00b8 <[^>]*> bnezl	at,000000b8 <text_label\+0xb8>
-[ 	]*b8: R_MIPS_PC16	external_label
-0+00bc <[^>]*> nop
-0+00c0 <[^>]*> sltu	at,a1,a0
-0+00c4 <[^>]*> beqzl	at,000000c4 <text_label\+0xc4>
-[ 	]*c4: R_MIPS_PC16	external_label
 	...
Index: gas/mips/bltu.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/bltu.s,v
retrieving revision 1.2
diff -u -r1.2 bltu.s
--- bltu.s	2001/09/07 05:00:37	1.2
+++ bltu.s	2001/10/23 06:13:18
@@ -22,12 +22,6 @@
 	bltul	$4,$5,text_label
 	bleul	$4,$5,text_label
 
-# Branch to an external label.
-	bltu	$4,$5,external_label
-	bleu	$4,$5,external_label
-	bltul	$4,$5,external_label
-	bleul	$4,$5,external_label
-
 # Round to a 16 byte boundary, for ease in testing multiple targets.
 	nop
 	nop
Index: gas/mips/mips.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips.exp,v
retrieving revision 1.22
diff -u -r1.22 mips.exp
--- mips.exp	2001/10/18 01:42:16	1.22
+++ mips.exp	2001/10/23 06:13:18
@@ -41,10 +41,15 @@
     run_dump_test "break20"
     run_dump_test "trap20"
     run_dump_test "beq"
+    if $svr4pic { run_dump_test "beq-extern" }
     run_dump_test "bge"
+    if $svr4pic { run_dump_test "bge-extern" }
     run_dump_test "bgeu"
+    if $svr4pic { run_dump_test "bgeu-extern" }
     run_dump_test "blt"
+    if $svr4pic { run_dump_test "blt-extern" }
     run_dump_test "bltu"
+    if $svr4pic { run_dump_test "bltu-extern" }
     if !$ilocks { run_dump_test "div" } else { run_dump_test "div-ilocks" }
     run_dump_test "dli"
     if $svr4pic {


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