m68k bootstrapping broken
Bernardo Innocenti
bernie@develer.com
Mon Feb 9 01:47:00 GMT 2004
Richard Henderson wrote:
> On Fri, Jan 16, 2004 at 12:20:06AM +0100, Bernardo Innocenti wrote:
>
>>Both versions are fine, but I wonder why a different
>>instruction pattern has been generated.
>
>
> Something in the register allocator (or subsequent passes) got miscompiled.
>
> You'll need to look at all the dumps to find where the first difference is
> found. When you find it, that's the pass to start looking at.
I've now found the time to resume working on this. It seems
the breakage happens at RTL generation time or even before.
Also interesting is that the list of objects that fail the comparison test
is slightly different between m68k-netbsd and m68k-linux (e.g: web.o
differs only on m68k-netbsdelf). Perhaps caused by target macro
expansion producing slightly different code.
This is what I get with bitmap.c:
diff -u stage1_dumps/bitmap.c.01.rtl stage2_dumps/bitmap.c.01.rtl
--- stage1_dumps/bitmap.c.01.rtl 2004-02-09 03:32:38.000000000 +0200
+++ stage2_dumps/bitmap.c.01.rtl 2004-02-09 03:34:52.000000000 +0200
@@ -5,163 +5,167 @@
(note 2 1 3 NOTE_INSN_DELETED)
-(note 3 2 4 NOTE_INSN_FUNCTION_BEG)
+(insn 3 2 4 (set (reg:SI 30)
+ (reg/f:SI 25 virtual-incoming-args)) -1 (nil)
+ (nil))
+
+(note 4 3 5 NOTE_INSN_FUNCTION_BEG)
-(note 4 3 5 NOTE_INSN_DELETED)
+(note 5 4 6 NOTE_INSN_DELETED)
-(note 5 4 6 0xc03d47f8 NOTE_INSN_BLOCK_BEG)
+(note 6 5 7 0xc03d47f8 NOTE_INSN_BLOCK_BEG)
-(note 6 5 7 NOTE_INSN_DELETED)
+(note 7 6 8 NOTE_INSN_DELETED)
-(note 7 6 8 ("../../combined-3.4/gcc/bitmap.c") 158)
+(note 8 7 9 ("../../combined-3.4/gcc/bitmap.c") 158)
-(insn 8 7 9 (set (mem/f:SI (symbol_ref:SI ("bitmap_free") [flags 0x2] <var_decl 0xc03e42e6 bitmap_free>) [0 bitmap_free+0 S4 A16])
+(insn 9 8 10 (set (mem/f:SI (symbol_ref:SI ("bitmap_free") [flags 0x2] <var_decl 0xc03e42e6 bitmap_free>) [0 bitmap_free+0 S4 A16])
(const_int 0 [0x0])) -1 (nil)
(nil))
-(note 9 8 10 ("../../combined-3.4/gcc/bitmap.c") 159)
+(note 10 9 11 ("../../combined-3.4/gcc/bitmap.c") 159)
-(insn 10 9 11 (set (cc0)
+(insn 11 10 12 (set (cc0)
(mem/f:SI (symbol_ref:SI ("bitmap_obstack_init") [flags 0x2] <var_decl 0xc03e4212 bitmap_obstack_init>) [0 bitmap_obstack_init+0 S4 A16])) -1 (nil)
(nil))
[...lots of other changes...]
--
// Bernardo Innocenti - Develer S.r.l., R&D dept.
\X/ http://www.develer.com/
More information about the Gcc
mailing list