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

           Summary: Wrong code with -mcpu=8540 -mfloat-gprs=double -mspe
                    -Os on PowerPC
           Product: gcc
           Version: 4.5.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: sebastian.hu...@embedded-brains.de
            Target: powerpc-rtems4.11una


Created attachment 23349
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23349
Assembler code.

In the attached assembler file:

Line 371: Save of non-volatile registers via stmw 25,28(1)

Line 454: Restore of non-volatile registers via b _rest64gpr_25_x

This procedure is completely wrong, e.g. _rest64gpr_25_x loads the link
register from a wrong stack position with an arbitrary value.

Reply via email to