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

             Bug #: 52356
           Summary: expr.c:emit_move_multi_word() can overwrite address
                    register
    Classification: Unclassified
           Product: gcc
           Version: 4.6.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: j...@beniston.com


expr.c:emit_move_multi_word() can copy multiple words from an address specified
by y to a sequence of registers starting at x

However, it seems this code doesn't check to make sure that the register used
for holding the address y, isn't in the destination registers, or if it is,
reorder the sequence of moves, so that the write to this register is the last
move performed.

Reply via email to