[Bug target/11292] New: [3.4 Regression] -fnew-ra causes sibcalling to go wrong.

pinskia at physics dot uc dot edu gcc-bugzilla@gcc.gnu.org
Mon Jun 23 14:55:00 GMT 2003


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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

           Summary: [3.4 Regression] -fnew-ra causes sibcalling to go wrong.
           Product: gcc
           Version: 3.4
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: pinskia at physics dot uc dot edu
                CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: powerpc-apple-darwin6.6

compile the following with -fnew-ra -foptimize-sibling-calls -O and see that it seg faults:
char * mystrcpy(char *dest, char *source)
{
  int len = strlen(source);
  return memmove(dest, source, len+1);
}

void main()
{
        char temp[10];
        char *t1="AA";
        mystrcpy(temp, t1);
}

Without -fnew-ra it does not seg fault.
This regression was introduced some time between  3.4 (20030602) and today.



More information about the Gcc-bugs mailing list