This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: C++ Issue on GCC 3.0 branch
- To: law at redhat dot com
- Subject: Re: C++ Issue on GCC 3.0 branch
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Mon, 30 Apr 2001 11:59:28 -0400 (EDT)
- Cc: mark at codesourcery dot com, gcc at gcc dot gnu dot org
> In message <200104250323.XAA05283@hiauly1.hia.nrc.ca>you write:
> > 2001-01-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
> >
> > * pa.c (hppa_init_pic_save): Update last_parm_insn after emitting
> > pic save insn.
> This is fine for the mainline sources as well as the branch.
I have installed it on the branch. The code on the main is different.
Thus, I don't know if the same problem exists there or not. The code
on the main looks strange to me. One change that looks certainly
correct is to set RTX_UNCHANGING_P in PIC_OFFSET_TABLE_SAVE_RTX.
> Thanks for tracking this down!
>
> If you want another challenge -- the rethrow1.C test from the g++ testsuite is
> getting into an infinite loop. A 2.95.x based compiler does the right thing.
>
> I've started poking at this, but I don't have a real clear understanding of
> the C++ language or its EH semantics. About the only tidbit I've got that
> might be helpful is that we might be missing a call to cp_pop_exception.
I have been looking at some of the g++ failures. I have some revisions
to the setjmp/longjmp stuff in pa.md. However, I noticed last night
that some code generated by builtin_setjmp was missing. It appears that
more than just labels were disappearing. Essentially, builtin_setjmp
was dropping into the receiver code on the intial setup.
I have updated my test source so that it now includes your disappearing
label patch. Hopefully, this will fix some of the problems. I visually
looked at the assembler code in __sjthrow and it now looks ok. Tests
are running..
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)