This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Another case for g77 test suite
- To: "'gcc-patches at gcc dot gnu dot org'" <gcc-patches at gcc dot gnu dot org>
- Subject: Another case for g77 test suite
- From: "Billinghurst, David (CRTS)" <David dot Billinghurst at riotinto dot com dot au>
- Date: Thu, 1 Jun 2000 01:21:08 -0000
- Cc: "'gcc-bugs at gcc dot gnu dot org'" <gcc-bugs at gcc dot gnu dot org>
Now that g77 is essentially working on mips-sgi-irix6.5 with -mabi=64, I
have another way of finding bugs and generating testcases :->. As before,
this is derived from LAPACK 3.0.
Platform: mips-sgi-irix6.5
Compiler: egcs-20000530
Reproduce by: g77 -c -O1 -mabi=64 20000601-1.f
Notes: Compiles with "-O0 -mabi=64"
/exd4/billingd/obj/egcs-20000530-parallel/gcc/g77
-B/exd4/billingd/obj/egcs-20000530-parallel/gcc/ -O1 -mabi=64 -c
20000601-1.f
20000601-1.f: In subroutine `sgbtrf':
20000601-1.f:26: Internal compiler error in `change_address', at
emit-rtl.c:1589
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
2000-06-01 David Billinghurst <David Billinghurst@riotinto.com.au>
* g77.f-torture/compile/20000601-1.f: New test.
--- gcc/testsuite/g77.f-torture/compile/20000601-1.f.orig Thu Jun 1
11:01:41 2000
+++ gcc/testsuite/g77.f-torture/compile/20000601-1.f Thu Jun 1 11:02:30
2000
@@ -0,0 +1,27 @@
+ SUBROUTINE SGBTRF( M, KL, KU, AB, LDAB )
+
+* ICE in `change_address', at emit-rtl.c:1589 with -O1 and above
+* g77 version 2.96 20000530 (experimental) on mips-sgi-irix6.5/-mabi=64
+*
+* Originally derived from LAPACK 3.0 test suite failure.
+*
+* David Billinghurst, (David.Billinghurst@riotinto.com.au)
+* 1 June 2000
+
+ INTEGER KL, KU, LDAB, M
+ REAL AB( LDAB, * )
+
+ INTEGER J, JB, JJ, JP, KV, KM
+ REAL WORK13(65,64), WORK31(65,64)
+ KV = KU + KL
+ DO J = 1, M
+ JB = MIN( 1, M-J+1 )
+ DO JJ = J, J + JB - 1
+ KM = MIN( KL, M-JJ )
+ JP = KM+1
+ CALL SSWAP( JB, AB( KV+1+JJ-J, J ), LDAB-1,
+ $ AB( KV+JP+JJ-J, J ), LDAB-1 )
+ END DO
+ END DO
+ RETURN
+ END