This is the mail archive of the gcc-bugs@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]

Re: Restoration of arg pointer in expand_builtin_setjmp_receiver


> On Thu, Aug 23, 2001 at 11:54:39PM -0400, John David Anglin wrote:
> > Why are we using `virtual_incoming_args_rtx' rather than `arg_pointer_rtx'?
> 
> I have no idea.  I don't fancy touching it though, since there
> probably was a reason.

I think the reason is the calculation done in fix_lexical_address would
need to take account the offset between virtual_incoming_args_rtx and
arg_pointer_rtx.  I am wondering if all this couldn't be further simplified
with get_hard_reg_initial_val.  I know this always saves the hard reg
in a stack slot when setjmp is used but I am not sure about nonlocal
gotos (hmmm, don't think the PA defines nonlocal_goto_receiver--the
pic offset table register probably needs to be restored for this to
work in shared libraries).

Dave
-- 
J. David Anglin                                  dave.anglin@nrc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)


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