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
d8955e17
Commit
d8955e17
authored
Apr 03, 1999
by
Craig Burley
Committed by
Craig Burley
Apr 03, 1999
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make -fno-emulate-complex the default
From-SVN: r26161
parent
0ea78edb
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
41 additions
and
58 deletions
+41
-58
gcc/f/ChangeLog
+8
-0
gcc/f/bugs.texi
+1
-18
gcc/f/g77.texi
+22
-35
gcc/f/lang-options.h
+2
-2
gcc/f/news.texi
+6
-1
gcc/f/top.c
+1
-1
gcc/f/version.c
+1
-1
No files found.
gcc/f/ChangeLog
View file @
d8955e17
Sat Apr 3 23:29:33 1999 Craig Burley <craig@jcb-sc.com>
* bugs.texi, g77.texi, lang-options.h, news.texi, top.c:
Make -fno-emulate-complex the default, as COMPLEX support
in the back end is now believed to be working.
* version.c: Bump version.
Fri Apr 2 13:33:16 1999 Craig Burley <craig@jcb-sc.com>
Fri Apr 2 13:33:16 1999 Craig Burley <craig@jcb-sc.com>
* g77.texi: -malign-double now works.
* g77.texi: -malign-double now works.
...
...
gcc/f/bugs.texi
View file @
d8955e17
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
@c
in
the
standalone
derivations
of
this
file
(
e
.
g
.
BUGS
).
@c
in
the
standalone
derivations
of
this
file
(
e
.
g
.
BUGS
).
@set
copyrights
-
bugs
1995
-
1999
@set
copyrights
-
bugs
1995
-
1999
@set
last
-
update
-
bugs
1999
-
0
3
-
15
@set
last
-
update
-
bugs
1999
-
0
4
-
03
@include
root
.
texi
@include
root
.
texi
...
@@ -247,23 +247,6 @@ This problem is largely resolved as of version 0.5.23.
...
@@ -247,23 +247,6 @@ This problem is largely resolved as of version 0.5.23.
Version
0
.
6
should
solve
most
or
all
remaining
problems
Version
0
.
6
should
solve
most
or
all
remaining
problems
(
such
as
cross
-
compiling
involving
64
-
bit
machines
).
(
such
as
cross
-
compiling
involving
64
-
bit
machines
).
@cindex
COMPLEX
support
@cindex
support
,
COMPLEX
@item
Maintainers
of
@code{
gcc
}
report
that
the
back
end
definitely
has
``
broken
''
support
for
@code{
COMPLEX
}
types
.
Based
on
their
input
,
it
seems
many
of
the
problems
affect
only
the
more
-
general
facilities
for
gcc
'
s
@code{
__complex__
}
type
,
such
as
@code{
__complex__
int
}
(
where
the
real
and
imaginary
parts
are
integers
)
that
GNU
Fortran
does
not
use
.
Version
0
.
5
.
20
of
@code{
g77
}
works
around
this
problem
by
not
using
the
back
end
'
s
support
for
@code{
COMPLEX
}
.
The
new
option
@samp{
-
fno
-
emulate
-
complex
}
avoids
the
work
-
around
,
reverting
to
using
the
same
``
broken
''
mechanism
as
that
used
by
versions
of
@code{
g77
}
prior
to
0
.
5
.
20
.
@cindex
padding
@cindex
padding
@cindex
structures
@cindex
structures
@cindex
common
blocks
@cindex
common
blocks
...
...
gcc/f/g77.texi
View file @
d8955e17
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
@c
%**
start
of
header
@c
%**
start
of
header
@setfilename
g77
.
info
@setfilename
g77
.
info
@set
last
-
update
1999
-
04
-
0
2
@set
last
-
update
1999
-
04
-
0
3
@set
copyrights
-
g77
1995
-
1999
@set
copyrights
-
g77
1995
-
1999
@include
root
.
texi
@include
root
.
texi
...
@@ -1466,7 +1466,7 @@ by type. Explanations are in the following sections.
...
@@ -1466,7 +1466,7 @@ by type. Explanations are in the following sections.
-
fpcc
-
struct
-
return
-
freg
-
struct
-
return
-
fpcc
-
struct
-
return
-
freg
-
struct
-
return
-
fshort
-
double
-
fno
-
common
-
fpack
-
struct
-
fshort
-
double
-
fno
-
common
-
fpack
-
struct
-
fzeros
-
fno
-
second
-
underscore
-
fzeros
-
fno
-
second
-
underscore
-
fdebug
-
kludge
-
f
no
-
emulate
-
complex
-
fdebug
-
kludge
-
femulate
-
complex
-
falias
-
check
-
fargument
-
alias
-
falias
-
check
-
fargument
-
alias
-
fargument
-
noalias
-
fno
-
argument
-
noalias
-
global
-
fargument
-
noalias
-
fno
-
argument
-
noalias
-
global
-
fno
-
globals
-
fno
-
globals
...
@@ -3253,44 +3253,36 @@ Current plans call for this to happen when published versions of @code{g77}
...
@@ -3253,44 +3253,36 @@ Current plans call for this to happen when published versions of @code{g77}
and @code{gdb} exist that provide proper access to debugging information on
and @code{gdb} exist that provide proper access to debugging information on
@code{COMMON} and @code{EQUIVALENCE} members.
@code{COMMON} and @code{EQUIVALENCE} members.
@cindex -fno-emulate-complex option
@cindex -femulate-complex option
@cindex options, -fno-emulate-complex
@cindex options, -femulate-complex
@item -fno-emulate-complex
@item -femulate-complex
Implement @code{COMPLEX} arithmetic using the facilities in
Implement @code{COMPLEX} arithmetic via emulation,
instead of using the facilities of
the @code{gcc} back end that provide direct support of
the @code{gcc} back end that provide direct support of
@code{complex} arithmetic
, instead of emulating the arithmetic
.
@code{complex} arithmetic.
@code{gcc} has some known problem
s in its back-end support
(@code{gcc} had some bug
s in its back-end support
for @code{complex} arithmetic, due primarily to the support not being
for @code{complex} arithmetic, due primarily to the support not being
completed as of version 2.7.2.2.
completed as of version 2.8.1 and @code{egcs} 1.1.2.)
Other front ends for the @code{gcc} back end avoid this problem
by emulating @code{complex} arithmetic at a higher level, so the
Use @samp{-femulate-complex} if you suspect code-generation bugs,
back end sees arithmetic on the real and imaginary components.
or experience compiler crashes,
To make @code{g77} more portable to systems where @code{complex}
that might result from @code{g77} using the @code{COMPLEX} support
support in the @code{gcc} back end is particularly troublesome,
in the @code{gcc} back end.
@code{g77} now defaults to performing the same kinds of emulations
If using that option fixes the bugs or crashes you are seeing,
done by these other front ends.
that indicates a likely @code{g77} bugs
(though, all compiler crashes are considered bugs),
Use @samp{-fno-emulate-complex} to try the @code{complex} support
so, please report it.
in the @code{gcc} back end, in case it works and produces faster
(Note that the known bugs, now believed fixed, produced compiler crashes
programs.
rather than causing the generation of incorrect code.)
So far, all the known bugs seem to involve compile-time crashes,
rather than the generation of incorrect code.
Use of this option should not affect how Fortran code compiled
Use of this option should not affect how Fortran code compiled
by @code{g77} works in terms of its interfaces to other code,
by @code{g77} works in terms of its interfaces to other code,
e.g. that compiled by @code{f2c}.
e.g. that compiled by @code{f2c}.
@emph{Caution:} Future versions of @code{g77} are likely to change
@emph{Caution:} Future versions of @code{g77} might ignore both forms
the default for this option to
@samp{-fno-emulate-complex}, and perhaps someday ignore both forms
of this option.
of this option.
Also, it is possible that use of the @samp{-fno-emulate-complex} option
could result in incorrect code being silently produced by @code{g77}.
But, this is generally true of compilers anyway, so, as usual, test
the programs you compile before assuming they are working.
@cindex -falias-check option
@cindex -falias-check option
@cindex options, -falias-check
@cindex options, -falias-check
@cindex -fargument-alias option
@cindex -fargument-alias option
...
@@ -8896,11 +8888,6 @@ mode afterward.
...
@@ -8896,11 +8888,6 @@ mode afterward.
(In @code{gdb}, this is accomplished via @samp{set lang c} and
(In @code{gdb}, this is accomplished via @samp{set lang c} and
either @samp{set lang fortran} or @samp{set lang auto}.)
either @samp{set lang fortran} or @samp{set lang auto}.)
@emph{Note:} Compiling with the @samp{-fno-emulate-complex} option
avoids the debugging problem, but is known to cause other problems
like compiler crashes and generation of incorrect code, so it is
not recommended.
@node Arrays
@node Arrays
@section Arrays (DIMENSION)
@section Arrays (DIMENSION)
@cindex DIMENSION statement
@cindex DIMENSION statement
...
...
gcc/f/lang-options.h
View file @
d8955e17
...
@@ -81,8 +81,8 @@ FTNOPT( "-finit-local-zero", "Initialize local vars and arrays to zero" )
...
@@ -81,8 +81,8 @@ FTNOPT( "-finit-local-zero", "Initialize local vars and arrays to zero" )
FTNOPT
(
"-fno-init-local-zero"
,
""
)
FTNOPT
(
"-fno-init-local-zero"
,
""
)
FTNOPT
(
"-fbackslash"
,
""
)
FTNOPT
(
"-fbackslash"
,
""
)
FTNOPT
(
"-fno-backslash"
,
"Backslashes in character/hollerith constants not special (C-style)"
)
FTNOPT
(
"-fno-backslash"
,
"Backslashes in character/hollerith constants not special (C-style)"
)
FTNOPT
(
"-femulate-complex"
,
""
)
FTNOPT
(
"-femulate-complex"
,
"
Have front end emulate COMPLEX arithmetic to avoid bugs
"
)
FTNOPT
(
"-fno-emulate-complex"
,
"
Have compiler back end cope with COMPLEX arithmetic
"
)
FTNOPT
(
"-fno-emulate-complex"
,
""
)
FTNOPT
(
"-funderscoring"
,
""
)
FTNOPT
(
"-funderscoring"
,
""
)
FTNOPT
(
"-fno-underscoring"
,
"Disable the appending of underscores to externals"
)
FTNOPT
(
"-fno-underscoring"
,
"Disable the appending of underscores to externals"
)
FTNOPT
(
"-fsecond-underscore"
,
""
)
FTNOPT
(
"-fsecond-underscore"
,
""
)
...
...
gcc/f/news.texi
View file @
d8955e17
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
@c
in
the
standalone
derivations
of
this
file
(
e
.
g
.
NEWS
).
@c
in
the
standalone
derivations
of
this
file
(
e
.
g
.
NEWS
).
@set
copyrights
-
news
1995
-
1999
@set
copyrights
-
news
1995
-
1999
@set
last
-
update
-
news
1999
-
04
-
0
2
@set
last
-
update
-
news
1999
-
04
-
0
3
@include
root
.
texi
@include
root
.
texi
...
@@ -204,6 +204,11 @@ when the corresponding @emph{subsequent} function program unit
...
@@ -204,6 +204,11 @@ when the corresponding @emph{subsequent} function program unit
disagrees
with
the
reference
concerning
the
type
of
the
function
.
disagrees
with
the
reference
concerning
the
type
of
the
function
.
@end
ifclear
@end
ifclear
@item
@code
{
-
fno
-
emulate
-
complex
}
is
now
the
default
option
.
This
should
result
in
improved
performance
of
code
that
uses
the
@code
{
COMPLEX
}
data
type
.
@cindex
alignment
@cindex
alignment
@cindex
double
-
precision
performance
@cindex
double
-
precision
performance
@cindex
-
malign
-
double
@cindex
-
malign
-
double
...
...
gcc/f/top.c
View file @
d8955e17
...
@@ -65,7 +65,7 @@ bool ffe_is_do_internal_checks_ = FALSE;
...
@@ -65,7 +65,7 @@ bool ffe_is_do_internal_checks_ = FALSE;
bool
ffe_is_90_
=
FFETARGET_defaultIS_90
;
bool
ffe_is_90_
=
FFETARGET_defaultIS_90
;
bool
ffe_is_automatic_
=
FFETARGET_defaultIS_AUTOMATIC
;
bool
ffe_is_automatic_
=
FFETARGET_defaultIS_AUTOMATIC
;
bool
ffe_is_backslash_
=
FFETARGET_defaultIS_BACKSLASH
;
bool
ffe_is_backslash_
=
FFETARGET_defaultIS_BACKSLASH
;
bool
ffe_is_emulate_complex_
=
TRU
E
;
bool
ffe_is_emulate_complex_
=
FALS
E
;
bool
ffe_is_underscoring_
=
FFETARGET_defaultEXTERNAL_UNDERSCORED
bool
ffe_is_underscoring_
=
FFETARGET_defaultEXTERNAL_UNDERSCORED
||
FFETARGET_defaultUNDERSCORED_EXTERNAL_UNDERSCORED
;
||
FFETARGET_defaultUNDERSCORED_EXTERNAL_UNDERSCORED
;
bool
ffe_is_second_underscore_
=
FFETARGET_defaultUNDERSCORED_EXTERNAL_UNDERSCORED
;
bool
ffe_is_second_underscore_
=
FFETARGET_defaultUNDERSCORED_EXTERNAL_UNDERSCORED
;
...
...
gcc/f/version.c
View file @
d8955e17
const
char
*
ffe_version_string
=
"0.5.24-19990
31
3"
;
const
char
*
ffe_version_string
=
"0.5.24-19990
40
3"
;
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