PR rtl-optimization/56833
commitb6b86e8732c611898b2b12e0aa60c77bb6e24ede
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 27 May 2013 10:39:01 +0000 (27 10:39 +0000)
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 27 May 2013 10:39:01 +0000 (27 10:39 +0000)
treed24a495dc651ed8a16b16f66521c967c0731060a
parent0479dc77cf50ee78769b55563051cf72d39b3d60
    PR rtl-optimization/56833
        * postreload.c (move2add_record_mode): New function.
        (move2add_record_sym_value, move2add_valid_value_p): Likewise.
        (move2add_use_add2_insn): Use move2add_record_sym_value.
        (move2add_use_add3_insn): Likewise.
        (reload_cse_move2add): Use move2add_valid_value_p and
        move2add_record_mode.  Invalidate call-clobbered and REG_INC
        affected regs by setting reg_mode to VOIDmode.
        (move2add_note_store): Don't pretend the inside of a SUBREG is
        the actual destination.  Invalidate single/leading registers by
        setting reg_mode to VOIDmode.
        Use move2add_record_sym_value, move2add_valid_value_p and
        move2add_record_mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@199353 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/postreload.c