This is the mail archive of the
mailing list for the GCC project.
New bitop builtins causing ICE on 64-bit
- From: "Ulrich Weigand" <Ulrich dot Weigand at de dot ibm dot com>
- To: rth at redhat dot com
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Mon, 3 Feb 2003 17:00:17 +0100
- Subject: New bitop builtins causing ICE on 64-bit
the changes related to the new bitop builtins are causing ICEs on s390x
(and, according to gcc-testresults, some other 64-bit platforms as well),
when compiling builtin-bitops-1.c.
What appears to happen is that the tree holding the function call to
(e.g.) __builtin_parity has return type 'int', but gets expanded to
mode DImode. This causes confusion in do_compare_and_jump (which tries
to compare a DImode RTX with an SImode RTX in mode SImode), leading to
an abort in copy_to_mode_reg.
I'm not sure who's at fault here; should expand_builtin make sure
that 'int' trees are expanded to SImode, or is it do_compare_and_jump
which should be able to cope with that situation?
Mit freundlichen Gruessen / Best Regards
Dr. Ulrich Weigand
Linux for S/390 Design & Development
IBM Deutschland Entwicklung GmbH, Schoenaicher Str. 220, 71032 Boeblingen
Phone: +49-7031/16-3727 --- Email: Ulrich.Weigand@de.ibm.com