------- Additional Comments From dbaird at nmt dot edu 2004-12-22 07:13 ------- Just for the record, I am having the same problem. I am using GCC as the host compiler. My CHOST is x86_64-pc-linux-gnu.
I am building gcc-3.3.4 with patches from (Pre-Release 2.92): http://m68hc11.serveftp.org/m68hc1x-builder-2.92.tar.gz Compilation succeeds after I apply gcc-3.4.2-16925.patch from above. (In reply to comment #3) > Created an attachment (id=7096) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7096&action=view) > Patch to fix that bug > > The first part of the patch adds the fact that CONST_INT could be a DImode > rtx, > that needs to be split into two SImode rtx. > > The second part fixes the core of the bug. On 32-bit hosts, this part is > called > when a 32-bit integer has two be split into two 32-bit integers (CONST_INT is > a > 32-bit integer on 32-bit hosts, as well as SI mode). The problem is that > CONST_INT is a 64-bit integer on 64-bit hosts. > > Actually this condition is always false on 32-bit hosts (a grep for > split_logical shows that the operands is always a DImode when mode == SImode). > This should also be always false on 64-bit hosts, that's why I removed that > code. > > I don't understand why that code is trying to convert one SImode rtx into two > SImode rtx, moreover in a function whose name is beginning by split. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16925