Iztok Kobal writes:
2. With the patched gcc-3.2 + latest CVS checkout:
./xgm2 -Wbounds -Wreturn -gstabs -g -c -B./stage1/gm2
-I../../gcc-3.2/gcc/gm2/gm2-compiler -I../../gcc-3.2/gcc/gm2/gm2-libs
-I../../gcc-3.2/gcc/gm2/gm2-libiberty
../../gcc-3.2/gcc/gm2/gm2-compiler/SymbolTable.mod -o
gm2/gm2-compiler/SymbolTable.o
<var_decl 0x401f9b60 _T2317
type <pointer_type 0x401bf0e0 ADDRESS
type <void_type 0x401747e0 VOID
align 8 symtab 23 alias set -1
pointer_to_this <pointer_type 0x40174850>>
unsigned used SI
size <integer_cst 0x4016ebc0 constant 32>
unit size <integer_cst 0x4016ec20 constant 4>
align 32 symtab 24 alias set -1
pointer_to_this <pointer_type 0x403be3f0> reference_to_this
<reference_type 0x40390700>>
unsigned used public SI file
../../gcc-3.2/gcc/gm2/gm2-compiler/SymbolTable.mod line 1566 size
<integer_cst 0x4016ebc0 32> unit size <integer_cst 0x4016ec20 4>
align 32 context <function_decl 0x4039ed90 SymbolTable_PutSubrange>
(mem/f:SI (plus:SI (reg/f:SI 6 ebp)
(const_int -188 [0xffffff44])) [0 _T2317+0 S4 A32]) chain
<var_decl 0x401f9bd0 _T2319>>
../../gcc-3.2/gcc/gm2/gm2-compiler/SymbolTable.mod: In function
`GetConstLitType':
../../gcc-3.2/gcc/gm2/gm2-compiler/SymbolTable.mod:2980:
[../../gcc-3.2/gcc/gm2/gccgm2.c:7345]:condition `is_type(type)' failed
Hi Iztok,
this is strange, I cannot repeat this bug. I've tried using gcc-3.2
with the patched ggc-page.c and the latest cvs and I can build up to
gm2.paranoid. It looks like the ggc-page.c has not been patched
(possibly) - certainly SymbolTable.mod will fail without the patch.
It might be worth checking that gcc-3.2/gcc/ggc-page.c contains:
void
ggc_collect ()
{
return; /* <--- this early return is for gm2 */
hope this helps,