Age | Commit message (Collapse) | Author |
|
improves diffability against stock gcc sources, for us alzheimer-impaired
people. Requested by deraadt@
(no functional change)
|
|
every object by default. ok avsm@ henning@ marc@
|
|
http://gcc.gnu.org/ml/gcc-bugs/1999-08n/msg00621.html
and described in the related thread.
This particular problem used to not be triggered (or not often), but the
use of propolice affects the instruction flow, and started triggering it
more often, for example in Qt's qmenubar class.
Ironically, running with /etc/malloc.conf->AJ would neuter the bug in this
case...
Problem tracked by espie@ and etoh@, tested by various, ok deraadt@
|
|
This changes the real definition to __mcount, but with a weak mcount
for compat. On the next major bump the weak alias should be removed.
Without this diff the compiler symbol mcount conflicts with the
user mcount() function.
|
|
|
|
|
|
|
|
for example when -fexpensive-optimizations is used, sometimes causes incorrect
code sequences to be generated.
As -fexpensive-optimizations is implied by -O2, this means we are potentially
affected by this in numerous places... so add a specific workaround to nullify
expensizve-optimizations in preserve_subexpressions_p() on a
known-to-be-affected basis.
So far, only alpha, powerpc, m88k, sparc and sparc64 are affected.
Problem tracked down by henning@ - analysis by etoh@ and I - ugly workaround
by me - ok deraadt@
|
|
hundred bytes) block copies. While the functions themselves are probably
optimal or not far from it, the code responsible for their invocation is not,
and has a bad tendency of miscomputing the destination buffer address,
especially when optimization is used.
This is a temporary measure, these functions will be reenabled once a good fix
is ready.
ok deraadt@ espie@
|
|
of erroring out in a later sanity check. Error noticed by jolan@
This only affects the -Wbounded case
|
|
Configuration settings mostly borrowed from the former gcc 2.8 configuration.
A few typos and fixes backported from gcc 3.3, and a hell lot of fixes from
my fingertips.
This is enough to yield a compiler which will produce correct code at -O0.
Optimization is slightly broken for some constructs, and more fixes are in
the pipeline.
ok deraadt@
|
|
(vfp const))". The incoming_args alone is derived from the address operation of the 1st function argument. This fixes to protect the 1st function argument from buffer overflow.
ok pvalcehv@
|
|
at modifying the argument information.
ok pvalchev@
|
|
The incoming_args alone is derived from the address operation of the 1st function argument. This fixes to protect the 1st function argument from buffer overflow.
ok pvalchev@
|
|
|
|
format args (%r,%z,%:,%b). A step towards reenabling -Wformat in the
kernel again ...
deraadt@ ok
|
|
|
|
the libc functions are in place, remove HARD_QUAD from sparc64. (If you
actually want it, for some demented reason, look at -mhard-quad-float,
void where prohibited).
|
|
convention for the _Qp_* functions. Rather than fix it, rely on the
fact that it does produce correct calls to the _Q_* functions and
provide a shim in libc (already committed) to deal with it.
|
|
ok drahn@
|
|
deraadt@ ok
|
|
with mdoc help from jmc@, deraadt@ ok
|
|
length passed to common functions such as strlcpy/strlcat match the
real length of the buffer. It also checks to make sure that the bound
length was not incorrectly derived from a sizeof(pointer) operation.
Functions must be marked with the new attribute __bounded__, and warnings
are turned on by -Wbounded. Specifying -Wformat also enables bounds
checking for scanf(3) bounds to '%s' format variables. -Wall now turns
on -Wbounded also.
The checking is pretty limited right now to constant parameters, and the
buffers must be statically declared, and not inside a record type. This
simple checking still found hundreds of bugs around the ports tree though,
and there have been no false positive warnings.
10x to niklas@, Richard Sharp and David Scott {rich,dave}@recoil.org for
compiler advice. deraadt@ ok, miod@ tested on his collection of hardware
You need to recompile gcc now if source upgrading in -current before
doing a make world.
|
|
skip the canonicalization; (minus A (plus B C)) to (minus (minus A B) C) where B is frame pointer and C is frame offset.
ok pvalchev@
|
|
following RTL conversion; (plus (plus fp offset) const) to (plus (plus fp const) offset).
ok pvalchev@
|
|
|
|
|
|
pvalchev@ fgsch@ millert@ ok
|
|
|
|
|
|
|
|
okay tdeval, fries, tdeval, millert...
|
|
rescinded 22 July 1999. Proofed by myself and Theo.
|
|
easier to find in object files without worrying about whether
or not -fno-builtin was used in building.
ok itojun@, tedu@, anil@, henning@, etc...
|
|
|
|
|
|
|
|
from NetBSD (Igor Sobrado);
httpd stuff passed to apache people;
ok millert@
|
|
|
|
espie@ ok
|
|
|
|
|
|
ok millert@, pval@.
|
|
ok miod@ jmc@
|
|
push_frame_in_operand.
|
|
|
|
|
|
|
|
FRAME_GROWS upward
|
|
2002-06-14 Jeff Sturm <jsturm@one-point.com>
* config/sparc/sparc.h (DYNAMIC_CHAIN_ADDRESS): Add
SPARC_STACK_BIAS.
2002-03-12 Andrew MacLeod <amacleod@redhat.com>
* config/sparc/sparc.h (RETURN_ADDR_RTX): Include v9 stack bias in
address calculation.
through Hiroaki Etoh (thanks).
This gets "__builtin_return_address()" to work on sparc64.
ok deraadt@
|