This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Bug other/12315] [3.4 Regression] ICE using -p with functions returning structs
- From: DJ Delorie <dj at redhat dot com>
- To: gcc-bugzilla at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Tue, 28 Oct 2003 17:43:07 -0500
- Subject: Re: [Bug other/12315] [3.4 Regression] ICE using -p with functions returning structs
- References: <20030917111856.12315.ishikawa@yk.rim.or.jp> <20031024091504.1250.qmail@sources.redhat.com>
> I'm afraid DJ's (really big) patch
>
> http://gcc.gnu.org/ml/gcc-cvs/2003-09/msg00074.html
>
> seems to be responsible for the regression.
>
> DJ, could you please have a look?
Try this.
2003-10-28 DJ Delorie <dj@redhat.com>
* final.c (profile_function): Handle the case where svrtx is NULL.
Index: final.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/final.c,v
retrieving revision 1.293
diff -p -2 -r1.293 final.c
*** final.c 18 Oct 2003 19:13:04 -0000 1.293
--- final.c 28 Oct 2003 22:41:18 -0000
*************** profile_function (FILE *file ATTRIBUTE_U
*** 1438,1442 ****
#if defined(ASM_OUTPUT_REG_PUSH)
! if (sval && GET_CODE (svrtx) == REG)
ASM_OUTPUT_REG_PUSH (file, REGNO (svrtx));
#endif
--- 1438,1442 ----
#if defined(ASM_OUTPUT_REG_PUSH)
! if (sval && svrtx && GET_CODE (svrtx) == REG)
ASM_OUTPUT_REG_PUSH (file, REGNO (svrtx));
#endif
*************** profile_function (FILE *file ATTRIBUTE_U
*** 1469,1473 ****
#if defined(ASM_OUTPUT_REG_PUSH)
! if (sval && GET_CODE (svrtx) == REG)
ASM_OUTPUT_REG_POP (file, REGNO (svrtx));
#endif
--- 1469,1473 ----
#if defined(ASM_OUTPUT_REG_PUSH)
! if (sval && svrtx && GET_CODE (svrtx) == REG)
ASM_OUTPUT_REG_POP (file, REGNO (svrtx));
#endif