From owner-freebsd-current Thu Jul 20 9: 9:50 2000 Delivered-To: freebsd-current@freebsd.org Received: from palrel3.hp.com (palrel3.hp.com [156.153.255.226]) by hub.freebsd.org (Postfix) with ESMTP id 44C0B37B858 for ; Thu, 20 Jul 2000 09:09:33 -0700 (PDT) (envelope-from marcel@cup.hp.com) Received: from adlmail.cup.hp.com (adlmail.cup.hp.com [15.0.100.30]) by palrel3.hp.com (Postfix) with ESMTP id 592BC1F47; Thu, 20 Jul 2000 09:09:25 -0700 (PDT) Received: from cup.hp.com (gauss.cup.hp.com [15.28.97.152]) by adlmail.cup.hp.com (8.9.3 (PHNE_18979)/8.9.3 SMKit7.02) with ESMTP id JAA23953; Thu, 20 Jul 2000 09:09:23 -0700 (PDT) Message-ID: <39772434.6EFCC1D1@cup.hp.com> Date: Thu, 20 Jul 2000 09:09:24 -0700 From: Marcel Moolenaar Organization: Hewlett-Packard X-Mailer: Mozilla 4.73 [en] (X11; U; Linux 2.2.12 i386) X-Accept-Language: en MIME-Version: 1.0 To: Alexander Langer Cc: current@FreeBSD.ORG Subject: Re: cross-building broken? References: <20000720123808.A78907@cichlids.cichlids.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Alexander Langer wrote: > > cc -O -pipe -I/usr/src/lib/libmd > -I/usr/obj/alpha/usr/src/i386/usr/include -c /usr/src/lib/libmd/md2c.c > -o md2c.o > /usr/src/lib/libmd/md2c.c: In function `MD2Final': > /usr/src/lib/libmd/md2c.c:167: internal error--unrecognizable insn: > (insn 26 24 28 (set (reg:DI 79) > (and:DI (plus:DI (reg/v:DI 69) > (const_int 586478694938416944 [0x823974408239730])) > (const_int -8 [0xfffffffffffffff8]))) -1 (insn_list 4 > (nil)) > (nil)) This is a known problem; at least to me. We have this since the early days of cross-compiling. I have a patch on my side that worked with the previous gcc. I applied this patch with the new gcc and it still fails. I have to find the bug and send a patch to cygnus... If you're feeling lucky, you can download the patch I have on my webpage (http://people.freebsd.org/~marcel) and start from their. I suspect (or rather hope) it's as simple as providing some prototypes to get it to work again. That was how I fixed it before... Looking at the failure, I think it's just that (ie a lack of prototype causes gcc to assume an argument is int (which is 32-bits for us) and creates the call-site as such, but while compiling the function itself it creates a 64-bit integral for that argument)... HTH, -- Marcel Moolenaar mail: marcel@cup.hp.com / marcel@FreeBSD.org tel: (408) 447-4222 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message