Tue Feb 13 17:59:03 1996 Lee Iverson <leei@Canada.AI.SRI.COM>
* gcc.c (DEFAULT_SWITCH_TAKES_ARG): New macro, from SWITCH_TAKES_ARG.
(SWITCH_TAKES_ARG): Use it.
This change alows us to add support for the 'R' option in a way that
will minimize differences when it comes to merging a future FSF gcc
release into the NetBSD sources.
for kernel printf functions
- understand the db_printf %n,%r,%z format specifiers
- understand the kernel printf %: format specifier
- Be more permissive to %b arguments: accept any integer type, not only
unsigned ints.
long comparisons. As of this date, this change hasn't made it into
the development sources. We must consider this when it comes time
to integrate a newer gcc release.
Thu Mar 7 01:16:23 1996 J"orn Rennecke (amylaar@meolyon.hanse.de)
* expmed.c (negate_rtx): Don't negate LONG_MIN if mode is wider
than HOST_WIDE_INT.
gcc now produces worse code for this test case than gcc 2.5.8 when
invoked with -O , but it will optimize as good as gcc 2.5.8 (i.e. all
comparisons vanish) when invoked with -O2 , thus I think it doesn't
matter. If anyone is interested in looking into this, the code in
expr.c, function expand_expr, case MINUS_EXPR, if-clause for if
(TREE_UNSIGNED (type) || TREE_OVERFLOW (negated)), will refuse to
convert the subtraction into an addition if there is an overflow in
the conversion or negation of the constant. If both host and target
machine are binary computers with 2-complement representation, the
overflow should not matter.
*REMEMBER* Any change in the gcc tree should be reflected in the gcc2netbsd
script so it reflects reality! If you don't know how to change the
gcc2netbsd script, send your gcc changes to phil@netbsd.org.