Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
49b1e9eb
Commit
49b1e9eb
authored
Aug 26, 1999
by
Craig Burley
Committed by
Craig Burley
Aug 26, 1999
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
New test
From-SVN: r28900
parent
c363a0c4
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
322 additions
and
0 deletions
+322
-0
gcc/testsuite/ChangeLog
+2
-0
gcc/testsuite/g77.f-torture/compile/19990826-3.f
+320
-0
No files found.
gcc/testsuite/ChangeLog
View file @
49b1e9eb
1999-08-26 Craig Burley <craig@jcb-sc.com>
* g77.f-torture/compile/19990826-3.f: New test.
* g77.f-torture/execute/19990826-2.f: New test.
* g77.f-torture/compile/19990826-1.f: New test.
...
...
gcc/testsuite/g77.f-torture/compile/19990826-3.f
0 → 100644
View file @
49b1e9eb
* Date: Thu, 19 Aug 1999 10:02:32 +0200
* From: Frederic Devernay <devernay@istar.fr>
* Organization: ISTAR
* X-Accept-Language: French, fr, en
* To: gcc-bugs@gcc.gnu.org
* Subject: g77 2.95 bug (Internal compiler error in `final_scan_insn')
* X-UIDL: 08443f5c374ffa382a05573281482f4f
* Here's a bug that happens only when I compile with -O (disappears with
* -O2)
* > g77 -v --save-temps -O -c pcapop.f
* g77 version 2.95 19990728 (release) (from FSF-g77 version 0.5.25
* 19990728 (release))
* Reading specs from
* /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95/specs
* gcc version 2.95 19990728 (release)
* /usr/local/lib/gcc-lib/sparc-sun-solaris2.6/2.95/f771 pcapop.f -quiet
* -dumpbase pcapop.f -O -version -fversion -o pcapop.s
* GNU F77 version 2.95 19990728 (release) (sparc-sun-solaris2.6) compiled
* by GNU C version 2.95 19990728 (release).
* GNU Fortran Front End version 0.5.25 19990728 (release)
* pcapop.f: In subroutine `pcapop':
* pcapop.f:291: Internal compiler error in `final_scan_insn', at
* final.c:2920
* Please submit a full bug report.
* See <URL:http://egcs.cygnus.com/faq.html#bugreport> for instructions.
C* PCAPOP
SUBROUTINE PCAPOP(M1,M2,L1,L2,NMEM,N1,N2,IB,IBB,K3,TF,TS,TC,TTO)
DIMENSION NVA(6),C(6),I(6)
C
C CALCUL DES PARAMETRES OPTIMAUX N1 N2 IB IBB
C
TACC=.035
TTRANS=.000004
RAD=.000001
RMI=.000001
RMU=.0000015
RDI=.000003
RTE=.000003
REQ=.000005
VY1=3*RTE+RDI+8*REQ+3*(RAD+RMI+RMU)
VY2=REQ+2*RAD
AR2=M2*(2*(REQ+RMI)+3*RMU+M1*(2*RAD+REQ))
C VARIATION DE L1,L2,
C
TTOTOP=1.E+10
N1CO=0
N2CO=0
IBCO=0
IBBCO=0
K3CO=0
TESOP=0.
TCOP=0.
TFOP=0.
INUN=7
INDE=7
IF(M1.LT.128)INUN=6
IF(M1.LT.64)INUN=5
IF(M1.LT.32)INUN=4
IF(M2.LT.128)INDE=6
IF(M2.LT.64)INDE=5
IF(M2.LT.32)INDE=4
DO 3 NUN =3,INUN
DO 3 NDE=3,INDE
N10=2**NUN
N20=2**NDE
NDIF=(N10-N20)
NDIF=IABS(NDIF)
C POUR AVOIR CES RESULTATS FAIRE TOURNER LE PROGRAMME VEFFT1
TCFFTU=0.
IF(N10.EQ.128.AND.N20.EQ.128)TCFFTU=3.35
IF(N10.EQ.64.AND.N20.EQ.64)TCFFTU=.70
IF(N10.EQ.32.AND.N20.EQ.32)TCFFTU=.138
IF(N10.EQ.16.AND.N20.EQ.16)TCFFTU=.0332
IF(N10.EQ.8.AND.N20.EQ.8)TCFFTU=.00688
IF(NDIF.EQ.64)TCFFTU=1.566
IF(NDIF.EQ.96)TCFFTU=.709
IF(NDIF.EQ.112)TCFFTU=.349
IF(NDIF.EQ.120)TCFFTU=.160
IF(NDIF.EQ.32)TCFFTU=.315
IF(NDIF.EQ.48)TCFFTU=.154
IF(NDIF.EQ.56)TCFFTU=.07
IF(NDIF.EQ.16)TCFFTU=.067
IF(NDIF.EQ.24)TCFFTU=.030
IF(NDIF.EQ.8)TCFFTU=.016
N30=N10-L1+1
N40=N20-L2+1
WW=VY1+N30*VY2
NDOU=2*N10*N20
IF((N10.LT.L1).OR.(N20.LT.L2)) GOTO 3
NB=NMEM-NDOU-N20*(L1-1)
NVC=2*N10*(N20-1)+M1
IF(NB.LT.(NVC)) GOTO 3
CALL VALENT(M1,N30,K1)
CALL VALENT(M2,N40,K2)
IS=K1/2
IF((2*IS).NE.K1)K1=K1+1
TFF=TCFFTU*K1*K2
CALL VALENT(M2,N40,JOFI)
IF(NB.GE.(K1*N20*N30+2*N20*(L1-1))) GOTO 4
TIOOP=1.E+10
IC=1
18 IB1=2*IC
MAX=(NB-2*N20*(L1-1))/(N20*N30)
IN=MAX/2
IF(MAX.NE.2*IN) MAX=MAX-1
K3=K1/IB1
IBB1=K1-K3*IB1
IOFI=M1/(IB1*N30)
IRZ=0
IF(IOFI*IB1*N30.EQ.M1) GOTO1234
IRZ=1
IOFI=IOFI+1
IF(IBB1.EQ.0) GOTO 1234
IF(M1.EQ.((IOFI-1)*IB1*N30+IBB1*N30)) GOTO 1233
IRZ=2
GOTO 1234
1233 IRZ=3
1234 IBX1=IBB1
IF(IBX1.EQ.0)IBX1=IB1
AR1=M2*(2*(RAD+RMI+RMU+REQ)+(M1-(IOFI-1)*IB1*N30)*2*(REQ+RAD))
%+M2*(3*(REQ+RMU+RAD)+4*RMI+(M1-(IOFI-1)*IB1*N30)*(2*RAD+REQ)
%+(IOFI-1)*IB1*N30*(2*RMI+REQ+RAD))
AR5=(JOFI-1)*(N20-L2)*(M1-(IOFI-1)*IB1*N30)*(2*(RAD+RMU)+REQ)
%*IOFI+(M2-(JOFI-1)*N40+L2-2)*(M1-(IOFI-1)*IB1*N30)*(2*(RAD+RMU
%)+REQ)*IOFI
WQ=((IOFI-1)*IB1+IBX1)*JOFI*WW
AT1=N20*WQ
AT2=N40*WQ
QW=JOFI*(VY1+VY2*IB1*N30)
AT3=IOFI*N40*QW
AT4=(IOFI-1)*N40*QW
AT5=JOFI*((IOFI-1)*N40*(IB1/IBX1)*(VY1+IBX1*N30*VY2)
%+N40*((IB1/IBX1)*(IOFI-1)+1)*(VY1+IBX1*N30*VY2))
AT6=JOFI*((IOFI-1)*N40*(IB1/2)*(VY1+2*N30*VY2)+N40*(
%IB1*(IOFI-1)/2+IBX1/2)*(VY1+2*N30*VY2))
T1=JOFI*N20*(L1-1)*REQ
T2=M1*(L2-1)*REQ
T3=JOFI*N20*IBX1*N30*(RAD+REQ)
T4=JOFI*((IOFI-1)*IB1*N30*N20*(2*RMI+REQ)+IBX1*N30*N20*(2*RMI+R
%EQ))
T5=JOFI*((IOFI-1)*IB1/2+IBX1/2)*N20*N30*(2*RAD+REQ)
T6=2*JOFI*(((IOFI-1)*IB1+IBX1)*N20)*((5*(RMI+RMU)+4*RAD
%)+(L1-1)*(2*RAD+REQ)+N30*(2*RAD+REQ))
T7=JOFI*2*((IOFI-1)*IB1+IBX1)*(L1-1)*(2*RAD+REQ)
T8=JOFI*N10*N20*((IOFI-1)*IB1/2+IBX1/2)*(3*REQ+9*RAD+4*RMU+RMI)
T9=N10*N20*JOFI*((IOFI-1)*IB1/2+IBX1/2)*(REQ+RMI)+M1*M2*(REQ+R
%DI+2*RAD)
T10=JOFI*((IOFI-1)*IB1/2+IBX1/2)*2*(3*RMU+2*(RMI+RAD)+N40*(3*RMI
%+4*RMU+3*(RAD+REQ)+N30*(2*RAD+REQ)))
POI=JOFI
IF(POI.LE.2)POI=2
TNRAN=(N40+(POI-2)*N20+(M2-(JOFI-1)*N40+L2-1))*(RMI+RMU+RAD
%+REQ+N30*(2*RAD+2*REQ)*(IB1*(IOFI-1)+IBX1))
IF(TNRAN.LT.0.)TNRAN=0.
TCPU=T1+T2+T3+T4+T5+T6+T7+T8+T9+T10+TNRAN
NVA(1)=N40
NVA(2)=N40
NVA(3)=N20
NVA(4)=N20
NVA(5)=M2-(JOFI-1)*N40
NVA(6)=NVA(5)
C(1)=FLOAT(IB1*N30)/FLOAT(M1)
C(2)=FLOAT(M1-(IOFI-1)*IB1*N30)/FLOAT(M1)
C(3)=C(1)
C(4)=C(2)
C(5)=C(1)
C(6)=C(2)
K=1
P1=FLOAT(NB)/FLOAT(M1)
10 IP1=P1
I(K)=1
IF(IP1.GE.NVA(K)) GOTO 7
P2=P1
IP2=P2
8 P2=P2-FLOAT(IP2)*C(K)
IP2=P2
IF(IP2.EQ.0) GOTO 3
IP1=IP1+IP2
I(K)=I(K)+1
IF(IP1.GE.NVA(K))GOTO 7
GOTO 8
7 IF(K.EQ.6) GOTO 11
K=K+1
GOTO 10
11 IP1=0
IP2=0
IP3=0
POFI=JOFI
IF(POFI.LE.2)POFI=2
TIOL=(I(2)+(IOFI-1)*I(1)+(POFI-2)*(IOFI-1)*I(3)+(POFI-
%2)*I(4)+(IOFI-1)*I(5)+I(6))*TACC+(IOFI*M1*N40+(POFI-2)*IOFI*
%M1*N20+(M2-(JOFI-1)*N40+L2-1)*M1*IOFI)*TTRANS
IF(IBB1.EQ.0) GOTO 33
IF(IB1.EQ.IBB1) GOTO 33
IF(IBB1.EQ.2)GOTO 34
IP3=1
INL=NMEM/((IOFI-1)*IB1*N30+IBB1*N30)
55 IF(INL.GT.N40)INL=N40
GOTO 35
33 IF(IB1.GT.2) GOTO 36
IF((M1-(IOFI-1)*IB1*N30).GE.N30) GOTO 36
34 IP1=1
INL=NMEM/(2*M1-(IOFI-1)*IB1*N30)
GOTO 55
36 IP2=1
INL=NMEM/(IOFI*IB1*N30)
IF(INL.GT.N40)INL=N40
35 CALL VALENT(N40,INL,KN1)
CALL VALENT(M2-(JOFI-1)*N40,INL,KN2)
CALL VALENT(INL*IBB1,IB1,KN3)
CALL VALENT((N40-(KN1-1)*INL)*IBB1,IB1,KN4)
IF((IP1+IP2+IP3).NE.1) CALL ERMESF(14)
TIO1=0.
IF(IP3.EQ.1)TIO1=N30*M2*TTRANS*(IB1*(IOFI-1)+IBB1)
IF(IP1.EQ.1)TIO1=M1*M2*TTRANS
IF(IP2.EQ.1) TIO1=(IB1*N30*M2*IOFI*TTRANS)
TTIO=2.*TIO1+(KN1*IOFI*(JOFI-1)+KN2*IOFI+(KN1-1)*(
%JOFI-1)+IOFI*(JOFI-1)+KN2-1.+IOFI+(KN1*(JOFI-1)+KN2))*TACC
%+M1*M2*TTRANS+TIOL
IF((IP1.EQ.1).AND.(IRZ.EQ.0))TCPU=TCPU+AT1+AT2+AT3
IF((IP1.EQ.1).AND.(IRZ.NE.0))TCPU=TCPU+AT1+AT2+AT4+AR1
IF((IP2.EQ.1).AND.(IRZ.EQ.0))TCPU=TCPU+AT1+AT2+AT3
IF((IP2.EQ.1).AND.(IRZ.NE.0))TCPU=TCPU+AT1+AT2+AT3+AR2
IFOIS=IB1/IBX1
IF((IP3.EQ.1).AND.(IFOIS*IBX1.EQ.IB1))TCPU=TCPU+AT1+AT2+AT5+AR2
IF((IP3.EQ.1).AND.(IFOIS*IBX1.NE.IB1))TCPU=TCPU+AT1+AT2+AT6+AR2
IF((IP1.EQ.1).AND.(IRZ.EQ.1))TCPU=TCPU+AR5
IF((IP1.EQ.1).AND.(IRZ.EQ.2))TCPU=TCPU+AR5
TTIOG=TTIO+TCPU
IF(TTIOG.LE.0.) GOTO 99
IF(TTIOG.GE.TIOOP) GOTO 99
IBOP=IB1
IBBOP=IBB1
K3OP=K3
TIOOP=TTIOG
TIOOP1=TTIO
TIOOP2=TCPU
99 IF(IB1.GE.MAX)GOTO17
IC=IC+1
GOTO 18
4 T1=JOFI*N20*(L1-1)*REQ
T2=M1*(L2-1)*REQ
T3=JOFI*N20*N30*(RAD+REQ)*K1
T4=JOFI*(K1*N30*N20*(2*RMI+REQ))
T5=JOFI*N20*N30*(2*RAD+REQ)*K1/2
T6=2*JOFI*(K1*N20)*((5*RMI+RMU)+4*RAD+(L1-1)*(2*RAD+REQ)+N30*2*
%RAD+REQ)
T7=JOFI*2*K1*(L1-1)*(2*RAD+REQ)
T9=JOFI*N10*N20*K1*(REQ+RMI)/2+M1*M2*(REQ+RDI+2*RAD)
T8=JOFI*N10*N20*K1*(3*REQ+9*RAD+4*RMU+RMI)/2
T10=JOFI*K1*(3*RMU+2*(RMI+RAD)+N40*(3*RMI
%+4*RMU+3*(RAD+REQ)+N30*(2*RAD+REQ)))
PIO=JOFI
IF(PIO.LE.2)PIO=2
TNR=(N40+(PIO-2)*N20+(M2-(JOFI-1)*N40+L2-1))*(RMU+RMI+RAD+REQ+
%N30*(2*RAD+2*REQ)*K1)
IF(TNR.LE.0.)TNR=0.
BT1=JOFI*N20*WW*K1
BT2=JOFI*N40*WW*K1
BT3=JOFI*N40*(VY1+K1*N30*VY2)
BR1=M2*(2*(RAD+RMI+RMU+REQ)+(M1*2*(REQ+RAD)))+M2*(3*(
$REQ+RAD+RMU)+4*(RMI)+M1*(2*(RAD)+REQ))
BR2=M2*(2*(REQ+RMI)+3*RMU+M1*(2*RAD+REQ))
TCPU=T1+T2+T3+T4+T5+T6+T7+T8+T9+T10
TCPU=TCPU+TNR+BT1+BT2
LIOF=M1/(N30)
IRZ=0
IF(LIOF*N30.EQ.M1) GOTO 2344
IRZ=1
2344 IF(IRZ.EQ.0)TCPU=TCPU+BT3
IF(IRZ.NE.0)TCPU=TCPU+BT3+BR2
TIOOP=2.*FLOAT(M1)*FLOAT(M2)*TTRANS+2.*FLOAT(K2)*TACC+TCPU
IBOP=1
IBBOP=0
K3OP=1
TIOOP2=TCPU
TIOOP1=TIOOP-TCPU
17 TTOT=TIOOP+TFF
IF(TTOT.LE.0.) GOTO 3
IF(TTOT.GE.TTOTOP)GOTO3
N1CO=N10
N2CO=N20
IBCO=IBOP
IBBCO=IBBOP
K3CO=K3OP
TTOTOP=TTOT
TESOP=TIOOP1
TCOP=TIOOP2
TFOP=TFF
3 CONTINUE
C
N1=N1CO
N2=N2CO
TTO=TTOTOP
IB=IBCO
IBB=IBBCO
K3=K3CO
TC=TCOP
TS=TESOP
TF=TFOP
TT=TCOP+TFOP
TWER=TTO-TT
IF(N1.EQ.0.OR.N2.EQ.0) CALL OUTSTR(0,'PAS DE PLACE MEMOIRE SUFFISA
$NTE POUR UNE MISE EN OEUVRE PAR BLOCS$')
IF(IB.NE.1)RETURN
IHJ=(M1/(N1-L1+1))
IF(IHJ*(N1-L1+1).NE.M1)IHJ=IHJ+1
IHJ1=IHJ/2
IF(IHJ1*2.NE.IHJ)GOTO7778
IB=IHJ
IBB=0
RETURN
7778 IB=IHJ+1
IBB=0
RETURN
END
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment