aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2006-02-22 16:59:45 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2006-02-22 08:59:45 -0800
commite3a26d2fc577210675f407a3ac8083cc22fe3150 (patch)
treebbf4b6d7d49fbbaef1bea9cfea9b3ef7afdf596d /gcc
parentd7f755c32d60c929a383026345d302dddd831a23 (diff)
downloadgcc-e3a26d2fc577210675f407a3ac8083cc22fe3150.zip
gcc-e3a26d2fc577210675f407a3ac8083cc22fe3150.tar.gz
gcc-e3a26d2fc577210675f407a3ac8083cc22fe3150.tar.bz2
re PR target/25603 (Miscompiled FORTRAN program)
2006-02-22 H.J. Lu <hongjiu.lu@intel.com> PR target/25603 * gfortran.dg/pr25603.f: New testcase. From-SVN: r111365
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/pr25603.f60
2 files changed, 65 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d206ded..6d36553 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-02-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/25603
+ * gfortran.dg/pr25603.f: New testcase.
+
2006-02-22 Nathan Sidwell <nathan@codesourcery.com>
* gcc.dg/bf-spl1.c: Don't specify -m68000.
diff --git a/gcc/testsuite/gfortran.dg/pr25603.f b/gcc/testsuite/gfortran.dg/pr25603.f
new file mode 100644
index 0000000..80a062b
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr25603.f
@@ -0,0 +1,60 @@
+C { dg-do run }
+C
+C PR rtl-optimization/25603
+C Check if reload handles REG_INC notes correctly.
+ PROGRAM BAR
+ IMPLICIT REAL (A-H, O-Z)
+ DIMENSION WORK(250)
+
+ XSTART = 201.0
+
+ CALL BAR1(NX,NY,NZ,NT,NTIME,NWINDX,NWINDY,NSINKS,NFILT,
+ *XSTART,YSTART,ZSTART,TSTART,DELTAX,DELTAY,DELTAZ,DELTAT,PHI,DL,
+ *DX,DY,DZ,WORK,IB,IK,ITY,NCOUNT,NPRINT,NGRAPH,NPSTEP,NGSTEP)
+ STOP
+ END
+
+ SUBROUTINE BAR2(NX,NY,NZ,NT,NTIME,NWINDX,ISH,NSMT,NFILT,
+ * XSTART,YSTART,ZSTART,TSTART,DELTAX,DELTAY,DELTAZ,DELTAT,PHI,DL,
+ * DX,DY,DZ,IB,IK,ITY,NCOUNT,NPRINT,NGRAPH,NPSTEP,NGSTEP,LFINAL,
+ * C,STEPC,POTT,STEPT,UX,STEPU,VY,STEPV,WZ,PRES,STEPP,Q,DKZM,DKZH,
+ * ELEV,ELEVX,ELEVY,Z0,HMIX,STEPH,TAVR,OBUK,USTR,TSTR,VDEP,DEP,
+ * ZET,HVAR,UM,VM,UG,VG,TM,DKM,DCDX,DCDY,AN,BN,CN,HELP,HELPA)
+ IMPLICIT REAL (A-H, O-Z)
+
+ DIMENSION C(*),STEPC(*),POTT(*),STEPT(*),UX(*),STEPU(*),
+ * VY(*),STEPV(*),WZ(*),PRES(*),STEPP(*),Q(*),DKZM(*),DKZH(*),
+ * ELEV(*),ELEVX(*),ELEVY(*),Z0(*),HMIX(*),STEPH(*),TAVR(*),
+ * OBUK(*),USTR(*),TSTR(*),VDEP(*), DEP(*),ZET(*),HVAR(*),
+ * UM(*),VM(*),UG(*),VG(*),TM(*),DKM(*), DCDX(*),DCDY(*),
+ * AN(*),BN(*),CN(*),HELP(*),HELPA(*)
+C
+
+ RETURN
+ END
+
+ SUBROUTINE BAR1(NX,NY,NZ,NT,NTIME,NWINDX,NWINDY,NSINKS,NFILT,
+ *XSTART,YSTART,ZSTART,TSTART,DELTAX,DELTAY,DELTAZ,DELTAT,PHI,DL,
+ *DX,DY,DZ,WORK,IB,IK,ITY,NCOUNT,NPRINT,NGRAPH,NPSTEP,NGSTEP)
+
+ IMPLICIT REAL (A-H, O-Z)
+ DIMENSION WORK(*)
+
+ if (XSTART .NE. 201.0) then
+ call abort
+ endif
+
+ CALL BAR2(NX,NY,NZ,NT,NTIME,NWINDX,NWINDY,NSINKS,NFILT,XSTART,
+ * YSTART,ZSTART,TSTART,DELTAX,DELTAY,DELTAZ,DELTAT,PHI,DL,
+ * DX,DY,DZ,IB,IK,ITY,NCOUNT,NPRINT,NGRAPH,NPSTEP,NGSTEP,LAST,
+ * WORK(LC),WORK(LCSTEP),WORK(LPOT),WORK(LTSTEP),WORK(LUX),
+ * WORK(LUSTEP),WORK(LVY),WORK(LVSTEP),WORK(LWZ),WORK(LPI),
+ * WORK(LPSTEP),WORK(LQ),WORK(LDKZM),WORK(LDKZH),WORK(LELEV),
+ * WORK(LELEVX),WORK(LELEVY),WORK(LZ0),WORK(LHMIX),WORK(LSTEPH),
+ * WORK(LTAVR),WORK(LOBUK),WORK(LUSTR),WORK(LTSTR),WORK(LVDEP),
+ * WORK(LDEP),WORK(LZET),WORK(LHVAR),WORK(LUM),WORK(LVM),WORK(LUG),
+ * WORK(LVG),WORK(LTM),WORK(LKM),WORK(LDCDX),WORK(LDCDY),WORK(LAN),
+ * WORK(LBN),WORK(LCN),WORK(LHELP),WORK(LHELPA))
+
+ RETURN
+ END