Subject: Re: gcc fails during Mozilla build
To: Frederick Bruckman <fb@enteract.com>
From: Hauke Fath <hauke@Espresso.Rhein-Neckar.DE>
List: tech-toolchain
Date: 02/06/2000 23:13:10
At 19:45 Uhr +0100 05.02.2000, Frederick Bruckman wrote:
>On Sat, 5 Feb 2000, Hauke Fath wrote:
>
>> trying to build Mozilla M13 on mac68k, I get the following feedback from
>>gcc:
>>
>> cd misc; gmake export
>> gmake[4]: Entering directory
>> 	`/home/hauke/src/Mozilla/mozilla/nsprpub/pr/src/misc'
>> gcc -o NetBSD1.4Q_DBG.OBJ/prnetdb.o -c  -g -fPIC  -ansi -Wall -pipe
>> -DNETBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK -DFORCE_PR_LOG -DXP_UNIX -DDEBUG
>> -UNDEBUG -DDEBUG_hauke -D_PR_LOCAL_THREADS_ONLY -D_NSPR_BUILD_
>> -I/home/hauke/src/Mozilla/mozilla/dist/include -I../../../pr/include
>> -I../../../pr/include/private  prnetdb.c
>> prnetdb.c: In function `PR_ntohll':
>> prnetdb.c:1102: internal error--unrecognizable insn:
>> (insn 12 10 13 (set (mem:DI (plus:SI (reg:SI 14 a6)
>>                 (const_int -8)))
>>         (ashiftrt:DI (mem:DI (plus:SI (reg:SI 14 a6)
>>                     (const_int 8)))
>>             (const_int 32))) -1 (nil)
>>     (nil))
>
>FWIW, that object compiles on mac68k-1.4.2_ALPHA. I've only tried the
>whole build on i386-1.4.2_ALPHA--it builds, but dumps core on
>initialization (in jsexecute.c).
>
>s/-o NetBSD1.4Q_DBG.OBJ/prnetdb.o/-S/ on the gcc command line to see
>what wierd assembler the macros are resolving to, or -E to unwind the
>macros without assembling.

Been there; sorry I did not mention it. 'gcc -E' gave me:

 PRUint64   PR_ntohll(PRUint64 n)
{
    PRUint64 tmp;
    PRUint32 hi, lo;
    (( lo ) = (PRUint32)(  n )) ;
    (( tmp ) = (PRInt64)(  n ) >> (  32 )) ;
    (( hi ) = (PRUint32)(  tmp )) ;
    hi = PR_ntohl(hi);
    lo = PR_ntohl(lo);
    (( n ) = (PRInt64)(  hi )) ;
    (( n ) = (PRInt64)(  n ) << (  32 )) ;
    (( tmp ) = (PRInt64)(  lo )) ;
    (( n ) = (  n ) + (  tmp )) ;
    return n;
}

- no eerie inline assembler code here - and 'gcc -S' then died with:

+ gcc -S -g -fPIC -ansi -Wall -pipe -DNETBSD -DHAVE_STRERROR
-DHAVE_BSD_FLOCK -DFORCE_PR_LOG -DXP_UNIX -DDEBUG -UNDEBUG -DDEBUG_hauke
-D_PR_LOCAL_THREADS_ONLY -D_NSPR_BUILD_
-I/home/hauke/src/Mozilla/mozilla/dist/include -I../../../pr/include
-I../../../pr/include/private prnetdb.c
prnetdb.c: In function `PR_ntohll':
prnetdb.c:1102: internal error--unrecognizable insn:
(insn 12 10 13 (set (mem:DI (plus:SI (reg:SI 14 a6)
                (const_int -8)))
        (ashiftrt:DI (mem:DI (plus:SI (reg:SI 14 a6)
                    (const_int 8)))
            (const_int 32))) -1 (nil)
    (nil))
/usr/src/gnu/usr.bin/egcs/common/../../../dist/gcc/toplev.c:1367: Internal
compiler error in function fatal_insn
[hauke@q700] ~/<5>src/misc >

as before. ISTR the gcc version has changed since 1.4?

	hauke





--
"It's never straight up and down"     (DEVO)