This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Stage1 compiler miscompiles Ada on ia64


    (insn 3619 3618 2549 (set (reg:DI 9 r9)
            (mem:DI (reg:DI 18 r18) [67 S8 A64])) 6 {*movdi_internal} (insn_list 3617 (nil))
        (expr_list:REG_DEAD (reg:DI 18 r18)
            (nil)))

    (insn 2549 3619 3701 (use (reg/i:TI 8 r8)) -1 (insn_list 3618 (nil))
        (expr_list:REG_DEAD (reg:DI 9 r9)
            (nil)))

    (note 3701 2549 3704 NOTE_INSN_EPILOGUE_BEG)
        [...]
    (insn 3730 3728 3732 (set (reg:DI 9 r9)
            (mem:DI (post_modify:DI (reg:DI 28 r28)
                    (plus:DI (reg:DI 28 r28)
                        (const_int 16 [0x10]))) [68 S8 A64])) -1 (insn_list 3726 (nil))
            (expr_list:REG_INC (reg:DI 28 r28)
            (nil)))

    The basic problem seems to be that insn 2549 marks register r9 as dead.

But is *is* dead there: insn 3730 sets it without referencing it.
That seems the more direct cause of the problem, but you're not giving
enough information to be sure.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]