This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: New bitop builtins causing ICE on 64-bit
- From: Richard Henderson <rth at redhat dot com>
- To: Ulrich Weigand <Ulrich dot Weigand at de dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Mon, 3 Feb 2003 10:42:40 -0800
- Subject: Re: New bitop builtins causing ICE on 64-bit
- References: <OFC144F268.4F45FAEB-ONC1256CC2.005654E7@de.ibm.com>
On Mon, Feb 03, 2003 at 05:00:17PM +0100, Ulrich Weigand wrote:
> 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?
It's me changing the return type in optabs, but forgetting to
update the builtins. Hmm. This'll take some thought to fix.
r~