This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Anyone knows about a testcase which was fixed by Wed Dec 24 18:05:13 1997 SPARC change?
- To: gcc at gcc dot gnu dot org, jakub at redhat dot com
- Subject: Re: Anyone knows about a testcase which was fixed by Wed Dec 24 18:05:13 1997 SPARC change?
- From: Mike Stump <mrs at windriver dot com>
- Date: Mon, 16 Oct 2000 11:18:25 -0700 (PDT)
> Date: Fri, 6 Oct 2000 02:06:18 -0400
> From: Jakub Jelinek <jakub@redhat.com>
> To: gcc@gcc.gnu.org
> Can anyone think of a testcase which was fixed by
> Wed Dec 24 18:05:13 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
> * sparc.c: Add prototypes for static functions.
> (check_pic): Check for form of pic_pc_rtx, not it itself.
> (pic_setup_code): New function, from finalize_pic.
> (finalize_pic): Call pic_setup_code and insert after nonlocal_receiver.
> * sparc.md (nonlocal_goto_receiver): New pattern.
> (well, particularly the nonlocal_goto_receiver and reloading of %l7 (pic
> base register) in all nonlocal_goto_receivers)? I cannot think of any, nor
> can DaveM. If noone comes with explanation why %l7 might get clobbered, I'll
> submit a patch to remove this shortly.
My best recollection would be to re-initialize the PIC register after
transitioning a shared library boundary during an EH flow control
thang. The nonlocal_goto_receiver existed before the EH specific
receiver existed (exception_receiver), and code for that routine was
placed into the former routine.
Isn't this just obvious? :-)