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
0063c777
Commit
0063c777
authored
May 19, 1998
by
Dave Love
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
JCB updates.
From-SVN: r19874
parent
4a26588b
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
250 additions
and
55 deletions
+250
-55
gcc/f/bugs.texi
+1
-31
gcc/f/g77.texi
+127
-22
gcc/f/news.texi
+122
-2
No files found.
gcc/f/bugs.texi
View file @
0063c777
...
...
@@ -5,7 +5,7 @@
@c
The
text
of
this
file
appears
in
the
file
BUGS
@c
in
the
G77
distribution
,
as
well
as
in
the
G77
manual
.
@c
1998
-
0
3
-
17
@c
1998
-
0
5
-
17
@ifclear
BUGSONLY
@node
Actual
Bugs
...
...
@@ -35,12 +35,6 @@ form instead, and so on.
(
Probably
improved
,
but
not
wholly
fixed
,
in
0
.
5
.
21
.)
@item
The
@code
{
g77
}
command
itself
should
more
faithfully
process
options
the
way
the
@code
{
gcc
}
command
does
.
For
example
,
@code
{
gcc
}
accepts
abbreviated
forms
of
long
options
,
@code
{
g77
}
generally
doesn
'
t
.
@item
Some
confusion
in
diagnostics
concerning
failing
@code
{
INCLUDE
}
statements
from
within
@code
{
INCLUDE
}
'
d
or
@code
{
#
include
}
'
d
files
.
...
...
@@ -171,30 +165,6 @@ is the potential, with the current setup, for interface differences
in
the
way
such
areas
are
laid
out
between
@code{
g77
}
and
other
compilers
.
@cindex
Alpha
,
support
@cindex
support
,
Alpha
@item
@code{
g77
}
doesn
'
t
work
perfectly
on
64
-
bit
configurations
such
as
the
Alpha
.
This
problem
is
expected
to
be
largely
resolved
as
of
version
0
.
5
.
20
,
and
further
addressed
by
0
.
5
.
21
.
Version
0
.
6
should
solve
most
or
all
related
problems
(
such
as
64
-
bit
machines
other
than
Digital
Semiconductor
(
``
DEC
''
)
Alphas
).
One
known
bug
that
causes
a
compile
-
time
crash
occurs
when
compiling
code
such
as
the
following
with
optimization
:
@example
SUBROUTINE
CRASH
(
TEMP
)
INTEGER
*
2
HALF
(
2
)
REAL
TEMP
HALF
(
1
)
=
NINT
(
TEMP
)
END
@end
example
It
is
expected
that
a
future
version
of
@code
{
g77
}
will
have
a
fix
for
this
problem
,
almost
certainly
by
the
time
@code
{
g77
}
supports
version
2
.
8
of
@code
{
gcc
}.
@cindex
COMPLEX
support
@cindex
support
,
COMPLEX
@item
...
...
gcc/f/g77.texi
View file @
0063c777
...
...
@@ -11,6 +11,9 @@
}
@end
tex
@set
last
-
up
-
date
1998
-
04
-
20
@set
version
-
g77
0
.
5
.
23
@c
%**
start
of
header
@setfilename
g77
.
info
@c
@setfilename
useg77
.
info
...
...
@@ -102,16 +105,16 @@ was contributed to Craig by David Ronis (@email{ronis@@onsager.chem.mcgill.ca}).
@sp
2
@center
James
Craig
Burley
@sp
3
@center
Last
updated
1998
-
04
-
18
@center
Last
updated
@value
{
last
-
up
-
date
}
@sp
1
@c
The
version
number
appears
some
more
times
in
this
file
.
@center
for
version
0
.
5
.
21
@center
for
version
@value
{
version
-
g77
}
@page
@vskip
0
pt
plus
1
filll
Copyright
@copyright
{}
1995
-
1997
Free
Software
Foundation
,
Inc
.
@sp
2
For
GNU
Fortran
Version
0
.
5
.
21
*
For
GNU
Fortran
Version
@value
{
version
-
g77
}
*
@sp
1
Published
by
the
Free
Software
Foundation
@
*
59
Temple
Place
-
Suite
330
@
*
...
...
@@ -156,19 +159,19 @@ original English.
@ifset
USING
This
manual
documents
how
to
run
,
install
and
port
the
GNU
Fortran
compiler
,
as
well
as
its
new
features
and
incompatibilities
,
and
how
to
report
bugs
.
It
corresponds
to
GNU
Fortran
version
0
.
5
.
21
.
report
bugs
.
It
corresponds
to
GNU
Fortran
version
@value{
version
-
g77
}
.
@end
ifset
@end
ifset
@ifclear
INTERNALS
This
manual
documents
how
to
run
and
install
the
GNU
Fortran
compiler
,
as
well
as
its
new
features
and
incompatibilities
,
and
how
to
report
bugs
.
It
corresponds
to
GNU
Fortran
version
0
.
5
.
21
.
bugs
.
It
corresponds
to
GNU
Fortran
version
@value{
version
-
g77
}
.
@end
ifclear
@ifclear
USING
This
manual
documents
how
to
port
the
GNU
Fortran
compiler
,
as
well
as
its
new
features
and
incompatibilities
,
and
how
to
report
bugs
.
It
corresponds
to
GNU
Fortran
version
0
.
5
.
21
.
bugs
.
It
corresponds
to
GNU
Fortran
version
@value{
version
-
g77
}
.
@end
ifclear
@end
ifinfo
...
...
@@ -3289,6 +3292,121 @@ or, if you cannot do that, email
@email{
fortran
@@gnu
.
org
}
asking
for
a
recent
copy
of
the
GNU
Fortran
@file{
.
plan
}
file
.
@heading
In
0
.
5
.
23
:
@itemize
@bullet
@item
This
release
contains
several
regressions
against
version
0
.
5
.
22
of
@code{
g77
}
,
due
to
using
the
``
vanilla
''
@code{
gcc
}
back
end
instead
of
patching
it
to
fix
a
few
bugs
and
improve
performance
in
a
few
cases
.
@xref{
Actual
Bugs
,,
Actual
Bugs
We
Haven
'
t
Fixed
Yet
}
,
available
in
plain
-
text
format
in
@code{
gcc
/
f
/
BUGS
}
,
for
information
on
the
known
bugs
in
this
version
,
including
the
regressions
.
Features
that
have
been
dropped
from
this
version
of
@code{
g77
}
due
to
their
being
implemented
via
@code{
g77
}
-
specific
patches
to
the
@code{
gcc
}
back
end
in
previous
releases
include
:
@itemize
--
@item
Support
for
@code{
__restrict__
}
keyword
,
the
options
@samp{
-
fargument
-
alias
}
,
@samp{
-
fargument
-
noalias
}
,
and
@samp{
-
fargument
-
noalias
-
global
}
,
and
the
corresponding
alias
-
analysis
code
.
(
Version
1
.
0
.
1
of
@code{
egcs
}
has
the
alias
-
analysis
code
,
but
not
the
@code{
__restrict__
}
keyword
.
@code{
g77
}
users
benefit
from
the
alias
-
analysis
code
despite
the
lack
of
the
@code{
__restrict__
}
keyword
,
which
is
a
C
-
language
construct
.)
@item
Support
for
the
GNU
compiler
options
@samp{
-
fmove
-
all
-
movables
}
,
@samp{
-
freduce
-
all
-
givs
}
,
and
@samp{
-
frerun
-
loop
-
opt
}
.
(
Version
1
.
0
.
1
of
@code{
egcs
}
supports
these
options
.
@code{
g77
}
users
of
@code{
egcs
}
benefit
from
them
even
if
they
are
not
explicitly
specified
,
because
the
defaults
are
optimized
for
@code{
g77
}
users
.)
@item
Support
for
the
@samp{
-
W
}
option
warning
about
integer
division
by
zero
.
@end
itemize
@item
Support
@code{
gcc
}
version
2
.
8
,
and
remove
support
for
prior
versions
of
@code{
gcc
}
.
@cindex
-
@w{}
-
driver
option
@cindex
g77
options
,
-
@w{}
-
driver
@cindex
options
,
-
@w{}
-
driver
@item
Remove
support
for
the
@samp{
--
driver
}
option
,
as
@code{
g77
}
now
does
all
the
driving
,
just
like
@code{
gcc
}
.
@item
The
@code{
g77
}
command
now
expects
the
run
-
time
library
to
be
named
@code{
libg2c
.
a
}
instead
of
@code{
libf2c
.
a
}
,
to
ensure
that
a
version
other
than
the
one
built
and
installed
as
part
of
the
same
@code{
g77
}
version
is
picked
up
.
@end
itemize
@heading
In
0
.
5
.
22
:
@itemize
@bullet
@item
Fix
@code{
SIGNAL
}
intrinsic
so
it
offers
portable
support
for
64
-
bit
systems
(
such
as
Digital
Alphas
running
GNU
/
Linux
).
@item
Support
@samp{
FORMAT
(
I
<
@var{
expr
}
>
)
}
when
@var{
expr
}
is
a
compile
-
time
constant
@code{
INTEGER
}
expression
.
@item
Fix
@code{
g77
}
@samp{
-
g
}
option
so
procedures
that
use
@samp{
ENTRY
}
can
be
stepped
through
,
line
by
line
,
in
@code{
gdb
}
.
@item
Allow
any
@code{
REAL
}
argument
to
intrinsics
@code{
Second
}
and
@code{
CPU_Time
}
.
@item
Allow
any
numeric
argument
to
intrinsics
@code{
Int2
}
and
@code{
Int8
}
.
@item
Use
@code{
tempnam
}
,
if
available
,
to
open
scratch
files
(
as
in
@samp{
OPEN
(
STATUS
=
'
SCRATCH
'
)
}
so
that
the
@code{
TMPDIR
}
environment
variable
,
if
present
,
is
used
.
@item
Rename
the
@code{
gcc
}
keyword
@code{
restrict
}
to
@code{
__restrict__
}
,
to
avoid
rejecting
valid
,
existing
,
C
programs
.
Support
for
@code{
restrict
}
is
now
more
like
support
for
@code{
complex
}
.
@item
Fix
@samp{
-
fugly
-
comma
}
to
affect
invocations
of
only
external
procedures
.
Restore
rejection
of
gratuitous
trailing
omitted
arguments
to
intrinsics
,
as
in
@samp{
I
=
MAX
(
3
,
4
,,)
}
.
@item
Fix
compiler
so
it
accepts
@samp{
-
fgnu
-
intrinsics
-*
}
and
@samp{
-
fbadu77
-
intrinsics
-*
}
options
.
@end
itemize
@heading
In
0
.
5
.
21
:
@itemize
@bullet
@item
...
...
@@ -9205,6 +9323,9 @@ savings of resources, such as on systems where @file{/dev/null} or
@file{/dev/zero} represent bottlenecks in the systems' performance,
because @code{g77} simply asks for fewer zeros from the operating
system than @code{f2c}.
(Avoiding spurious use of zero bytes, each byte typically have
eight zero bits, also reduces the liabilities in case
Microsoft's rumored patent on the digits 0 and 1 is upheld.)
@node Block Data and Libraries
@section Block Data and Libraries
...
...
@@ -12139,22 +12260,6 @@ Please consider offering useful answers to these questions!
@itemize @bullet
@item
How do system administrators and users manage multiple incompatible
Fortran compilers on their systems?
How can @code{g77} contribute to this, or at least avoiding
intefering with it?
Currently, @code{g77} provides rudimentary ways to choose whether to
overwrite portions of other Fortran compilation systems
(such as the @code{f77} command and the @code{libf2c} library).
Is this sufficient?
What happens when users choose not to overwrite these---does
@code{g77} work properly in all such installations, picking
up its own versions, or does it pick up the existing ``alien''
versions it didn't overwrite with its own, possibly leading
to subtle bugs?
@item
@code{LOC()} and other intrinsics are probably somewhat misclassified.
Is the a need for more precise classification of intrinsics, and if so,
what are the appropriate groupings?
...
...
gcc/f/news.texi
View file @
0063c777
...
...
@@ -5,7 +5,7 @@
@c
The
text
of
this
file
appears
in
the
file
BUGS
@c
in
the
G77
distribution
,
as
well
as
in
the
G77
manual
.
@c
1998
-
0
3
-
16
@c
1998
-
0
4
-
20
@ifclear
NEWSONLY
@node
News
...
...
@@ -21,10 +21,11 @@ The changes are generally listed in order:
@enumerate
@item
Code
-
generation
and
run
-
time
-
library
bugs
Code
-
generation
and
run
-
time
-
library
bug
-
fixe
s
@item
Compiler
and
run
-
time
-
library
crashes
involving
valid
code
that
have
been
fixed
@item
New
features
...
...
@@ -53,6 +54,125 @@ Miscellany
This
order
is
not
strict
---
for
example
,
some
items
involve
a
combination
of
these
elements
.
@heading
In
0
.
5
.
23
:
@itemize
@bullet
@item
This
release
contains
several
regressions
against
version
0
.
5
.
22
of
@code
{
g77
},
due
to
using
the
``
vanilla
''
@code
{
gcc
}
back
end
instead
of
patching
it
to
fix
a
few
bugs
and
improve
performance
in
a
few
cases
.
@xref
{
Actual
Bugs
,,
Actual
Bugs
We
Haven
'
t
Fixed
Yet
},
available
in
plain
-
text
format
in
@code
{
gcc
/
f
/
BUGS
},
for
information
on
the
known
bugs
in
this
version
,
including
the
regressions
.
Features
that
have
been
dropped
from
this
version
of
@code
{
g77
}
due
to
their
being
implemented
via
@code
{
g77
}
-
specific
patches
to
the
@code
{
gcc
}
back
end
in
previous
releases
include
:
@itemize
--
@item
Support
for
@code
{
__restrict__
}
keyword
,
the
options
@samp
{
-
fargument
-
alias
},
@samp
{
-
fargument
-
noalias
},
and
@samp
{
-
fargument
-
noalias
-
global
},
and
the
corresponding
alias
-
analysis
code
.
(
Version
1
.
0
.
1
of
@code
{
egcs
}
has
the
alias
-
analysis
code
,
but
not
the
@code
{
__restrict__
}
keyword
.
@code
{
g77
}
users
benefit
from
the
alias
-
analysis
code
despite
the
lack
of
the
@code
{
__restrict__
}
keyword
,
which
is
a
C
-
language
construct
.)
@item
Support
for
the
GNU
compiler
options
@samp
{
-
fmove
-
all
-
movables
},
@samp
{
-
freduce
-
all
-
givs
},
and
@samp
{
-
frerun
-
loop
-
opt
}.
(
Version
1
.
0
.
1
of
@code
{
egcs
}
supports
these
options
.
@code
{
g77
}
users
of
@code
{
egcs
}
benefit
from
them
even
if
they
are
not
explicitly
specified
,
because
the
defaults
are
optimized
for
@code
{
g77
}
users
.)
@item
Support
for
the
@samp
{
-
W
}
option
warning
about
integer
division
by
zero
.
@end
itemize
@item
Support
@code
{
gcc
}
version
2
.
8
,
and
remove
support
for
prior
versions
of
@code
{
gcc
}.
@cindex
-
@w
{}
-
driver
option
@cindex
g77
options
,
-
@w
{}
-
driver
@cindex
options
,
-
@w
{}
-
driver
@item
Remove
support
for
the
@samp
{
--
driver
}
option
,
as
@code
{
g77
}
now
does
all
the
driving
,
just
like
@code
{
gcc
}.
@item
@code
{
CASE
DEFAULT
}
no
longer
crashes
@code
{
g77
}.
@item
@code
{
g77
}
no
longer
installs
the
@file
{
f77
}
command
and
@file
{
f77
.
1
}
man
page
in
the
@file
{
/
usr
}
or
@file
{
/
usr
/
local
}
heirarchy
,
even
if
the
@file
{
f77
-
install
-
ok
}
file
exists
in
the
source
or
build
directory
.
See
the
installation
documentation
for
more
information
.
@item
@code
{
g77
}
no
longer
installs
the
@file
{
libf2c
.
a
}
library
and
@file
{
f2c
.
h
}
include
file
in
the
@file
{
/
usr
}
or
@file
{
/
usr
/
local
}
heirarchy
,
even
if
the
@file
{
f2c
-
install
-
ok
}
or
@file
{
f2c
-
exists
-
ok
}
files
exist
in
the
source
or
build
directory
.
See
the
installation
documentation
for
more
information
.
@item
The
@file
{
libf2c
.
a
}
library
produced
by
@code
{
g77
}
has
been
renamed
to
@file
{
libg2c
.
a
}.
It
is
installed
only
in
the
@code
{
gcc
}
``
private
''
directory
heirarchy
,
@file
{
gcc
-
lib
}.
This
allows
system
administrators
and
users
to
choose
which
version
of
the
@code
{
libf2c
}
library
from
@code
{
netlib
}
they
wish
to
use
on
a
case
-
by
-
case
basis
.
See
the
installation
documentation
for
more
information
.
@item
The
@file{
f2c
.
h
}
include
(
header
)
file
produced
by
@code{
g77
}
has
been
renamed
to
@file{
g2c
.
h
}
.
It
is
installed
only
in
the
@code{
gcc
}
``
private
''
directory
heirarchy
,
@file{
gcc
-
lib
}
.
This
allows
system
administrators
and
users
to
choose
which
version
of
the
include
file
from
@code{
netlib
}
they
wish
to
use
on
a
case
-
by
-
case
basis
.
See
the
installation
documentation
for
more
information
.
@item
The
@code{
g77
}
command
now
expects
the
run
-
time
library
to
be
named
@code{
libg2c
.
a
}
instead
of
@code{
libf2c
.
a
}
,
to
ensure
that
a
version
other
than
the
one
built
and
installed
as
part
of
the
same
@code{
g77
}
version
is
picked
up
.
@item
The
@samp{
-
Wunused
}
option
no
longer
issues
a
spurious
warning
about
the
``
master
''
procedure
generated
by
@code{
g77
}
for
procedures
containing
@code{
ENTRY
}
statements
.
@item
During
the
configuration
and
build
process
,
@code{
g77
}
creates
subdirectories
it
needs
only
as
it
needs
them
,
thus
avoiding
unnecessary
creation
of
,
for
example
,
@file{
stage1
/
f
/
runtime
}
when
doing
a
non
-
bootstrap
build
.
Other
cleaning
up
of
the
configuration
and
build
process
has
been
performed
as
well
.
@end
itemize
@heading
In
0
.
5
.
22
:
@itemize
@bullet
@item
...
...
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