Commit 1a5cfb80 by Craig Burley Committed by Craig Burley

clarify -malign-double situation

From-SVN: r26555
parent bded0535
Tue Apr 20 01:38:57 1999 Craig Burley <craig@jcb-sc.com>
* bugs.texi, news.texi: Clarify -malign-double situation.
Tue Apr 20 01:15:25 1999 Craig Burley <craig@jcb-sc.com>
* stb.c (ffestb_R5282_): Convert DATA repeat count
......
......@@ -9,7 +9,7 @@
@c in the standalone derivations of this file (e.g. BUGS).
@set copyrights-bugs 1995-1999
@set last-update-bugs 1999-04-17
@set last-update-bugs 1999-04-20
@include root.texi
......@@ -265,42 +265,6 @@ of specifications of alignment requirements and preferences for targets,
and front ends like @code{g77} should take advantage of this
when it becomes available.
@cindex alignment
@cindex double-precision performance
@cindex -malign-double
@item
The x86 target's @samp{-malign-double} option
no longer reliably aligns double-precision variables and arrays
when they are placed in the stack frame.
This can significantly reduce the performance of some applications,
even on a run-to-run basis
(that is, performance measurements can vary fairly widely
depending on whether frequently used variables are properly aligned,
and that can change from one program run to the next,
even from one procedure call to the next).
Versions 0.5.22 and earlier of @code{g77}
included a patch to @code{gcc} that enabled this,
but that patch has been deemed an improper (probably buggy) one
for version 2.8 of @code{gcc} and for @code{egcs}.
Note that version 1.1 of @code{egcs}
aligns double-precision variables and arrays
when they are in static storage
even if @samp{-malign-double} is not specified.
There is ongoing investigation into
how to make @samp{-malign-double} work properly,
also into how to make it unnecessary to get
all double-precision variables and arrays aligned
when such alignment would not violate
the relevant specifications for processor
and inter-procedural interfaces.
For a suite of programs to test double-precision alignment,
see @uref{ftp://alpha.gnu.org/gnu/g77/align/}.
@cindex complex performance
@cindex aliasing
@item
......
......@@ -225,6 +225,12 @@ now reliably aligns @emph{all} double-precision variables and arrays
on Intel x86 targets.
@item
Even without the @samp{-malign-double} option,
@code{g77} reliably aligns local double-precision variables
that are not in @code{EQUIVALENCE} areas
and not @code{SAVE}'d.
@item
A substantial portion of the @code{g77} front end's code-generation component
was rewritten.
It now generates code using facilities more robustly supported
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment