[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Bug rtl-optimization/31944] Endless loop while building a 64-bit 2.6.20 kernel




------- Comment #4 from danglin at gcc dot gnu dot org  2007-05-20 18:15 -------
For reference, this is the rtl at the point of the hang:

(gdb) p debug_rtx_list (get_insns (), 30)
(note 6 0 3 2 [bb 2] NOTE_INSN_BASIC_BLOCK)

(insn 3 6 4 2 pr31944.c:4 (set (reg/v/f:DI 68 [ mle ])
        (reg:DI 26 %r26 [ mle ])) 124 {*pa.md:4569} (nil)
    (nil))

(insn 4 3 5 2 pr31944.c:4 (set (reg/v/f:DI 69 [ res ])
        (reg:DI 25 %r25 [ res ])) 124 {*pa.md:4569} (nil)
    (nil))

(note 5 4 8 2 NOTE_INSN_FUNCTION_BEG)

(insn 8 5 9 2 pr31944.c:5 (set (reg:SI 70 [ <variable>.type ])
        (mem/s:SI (reg/v/f:DI 68 [ mle ]) [3 <variable>.type+0 S4 A32])) 71
{*pa.md:2568} (nil)
    (nil))

(insn 9 8 10 2 pr31944.c:5 (set (reg:DI 66 [ D.1605 ])
        (sign_extend:DI (reg:SI 70 [ <variable>.type ]))) 143 {extendsidi2}
(nil)
    (nil))

(jump_insn 10 9 11 2 pr31944.c:5 (set (pc)
        (if_then_else (ne (subreg/s:SI (reg:DI 66 [ D.1605 ]) 4)
                (const_int 1 [0x1]))
            (label_ref 18)
            (pc))) 46 {*pa.md:1768} (nil)
    (expr_list:REG_BR_PROB (const_int 6900 [0x1af4])
        (nil)))

(note 11 10 12 3 [bb 3] NOTE_INSN_BASIC_BLOCK)

(insn 12 11 13 3 pr31944.c:6 (set (reg:DI 71)
        (const_int 0 [0x0])) 124 {*pa.md:4569} (nil)
    (nil))

(jump_insn 13 12 14 3 pr31944.c:6 (set (pc)
        (if_then_else (ne (reg/v/f:DI 69 [ res ])
                (reg:DI 71))
            (label_ref:DI 32)
            (pc))) 48 {*pa.md:1824} (nil)
    (expr_list:REG_BR_PROB (const_int 8500 [0x2134])
        (nil)))

(note 14 13 15 4 [bb 4] NOTE_INSN_BASIC_BLOCK)

(insn 15 14 18 4 pr31944.c:6 (asm_input/v ("nop") ("pr31944.c") 6) -1 (nil)
    (nil))

(code_label 18 15 19 5 2 "" [1 uses])

(note 19 18 20 5 [bb 5] NOTE_INSN_BASIC_BLOCK)

(insn 20 19 21 5 pr31944.c:8 (set (reg:DI 72)
        (const_int 0 [0x0])) 124 {*pa.md:4569} (nil)
    (nil))

(jump_insn 21 20 22 5 pr31944.c:8 (set (pc)
        (if_then_else (ne (reg:DI 66 [ D.1605 ])
                (const_int 0 [0x0]))
            (label_ref:DI 32)
            (pc))) 48 {*pa.md:1824} (nil)
    (expr_list:REG_BR_PROB (const_int 4600 [0x11f8])
        (nil)))

(note 22 21 23 6 [bb 6] NOTE_INSN_BASIC_BLOCK)

(insn 23 22 24 6 pr31944.c:9 (set (reg:DI 73)
        (const_int 0 [0x0])) 124 {*pa.md:4569} (nil)
    (nil))

(jump_insn 24 23 25 6 pr31944.c:9 (set (pc)
        (if_then_else (ne (reg/v/f:DI 69 [ res ])
                (const_int 0 [0x0]))
            (label_ref:DI 32)
            (pc))) 48 {*pa.md:1824} (nil)
    (expr_list:REG_BR_PROB (const_int 8284 [0x205c])
        (nil)))

(note 25 24 26 7 [bb 7] NOTE_INSN_BASIC_BLOCK)

(insn 26 25 32 7 pr31944.c:10 (asm_operands/v ("nop") ("") 0 [
            (const_int 0 [0x0])
        ]
         [
            (asm_input:SI ("i") ("") 0)
        ] ("pr31944.c") 10) -1 (nil)
    (nil))

(code_label 32 26 35 8 4 "" [3 uses])

(note 35 32 0 8 [bb 8] NOTE_INSN_BASIC_BLOCK)

This problem is present in HEAD as well as 4.1.  Probably, 4.2 is affected as
well.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31944

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



Reply to: