This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] First attempt at unwind epilogue support for powerpc{,64}


On Wed, Jun 03, 2009 at 10:45:18AM +0930, Alan Modra wrote:
> On Tue, Jun 02, 2009 at 07:10:15PM +0200, Jakub Jelinek wrote:
> > +CFI_STARTPROC
> > +CFI_DEF_CFA_REGISTER (11)
> > +CFI_OFFSET (65, 4)
> > +CFI_OFFSET (14, -72)
> > +CFI_OFFSET (15, -68)
> > +CFI_OFFSET (16, -64)
> > +CFI_OFFSET (17, -60)
> > +CFI_OFFSET (18, -56)
> > +CFI_OFFSET (19, -52)
> > +CFI_OFFSET (20, -48)
> > +CFI_OFFSET (21, -44)
> > +CFI_OFFSET (22, -40)
> > +CFI_OFFSET (23, -36)
> > +CFI_OFFSET (24, -32)
> > +CFI_OFFSET (25, -28)
> > +CFI_OFFSET (26, -24)
> > +CFI_OFFSET (27, -20)
> > +CFI_OFFSET (28, -16)
> > +CFI_OFFSET (29, -12)
> > +CFI_OFFSET (30, -8)
> 
> Isn't most of the above untrue for _restgpr_31_x?

Sure, that's why I've put all the CFI_RESTOREs immediately after
each restoring instruction.  When you tailcall _restgpr_31_x,
at any instruction in there most of the CFI instructions above
should be nullified by the corresponding .cfi_restore, so even
on the first _restgpr_31_x instruction you'll have just:
CFI_DEF_CFA_REGISTER (11)
CFI_OFFSET (65, 4)
CFI_OFFSET (31, -4)
active.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]