This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: alpha bootstrap fix
Jan Hubicka <jh@suse.cz> writes:
> > Thu May 17 23:19:46 CEST 2001 Jan Hubicka <jh@suse.cz>
> >
> > * combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
> > (gen_binary): Likewise.
> > * optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
> > * simplify-rtx.c (simplify_gen_binary,
> > simplify_gen_relational): Likewise.
> >
> > The change to emit_cmp_and_jump_insns, at minimum, is incorrect.
> > This is used e.g. by compare_from_rtx from emit_store_flag to
> > generate setcc instructions. We have no way of mentioning this
> > change of comparison code to upper layers, resulting in bad code.
> Hi,
> I've just regtested and bootstrapped the attached patch. It converts more
> places to use swap_commutative_operands_p and should solve the problem
> mentioned in same way as it has been solved previously - by keeping the
> conditions in the sync with the other places.
>
> Can you please try if this patch works for Alpha (I am in the middle of mips
> bootstrap) in case you consider it as better then the original fix?
> I believe it is :)
With that patch I just got on i686:
gcc -DIN_GCC -g -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long -DHAVE_CONFIG_H -o cc1 \
c-parse.o c-lang.o c-errors.o c-lex.o c-pragma.o c-decl.o c-typeck.o c-convert.o c-aux-info.o c-common.o c-format.o c-semantics.o c-dump.o libcpp.a main.o libbackend.a obstack.o ../libiberty/libiberty.a
libbackend.a(expmed.o): In function `emit_store_flag':
/cvs/gcc/gcc/expmed.c:4229: undefined reference to `swap_commutative_operands'
collect2: ld returned 1 exit status
Am I missing something?
Andreas
--
Andreas Jaeger
SuSE Labs aj@suse.de
private aj@arthur.inka.de
http://www.suse.de/~aj