Current gcj on powerpc

Mark Wielaard mark@klomp.org
Thu Aug 1 09:40:00 GMT 2002


Hi,
On Thu, 2002年08月01日 at 17:53, Jeff Sturm wrote:
> On 31 Jul 2002, Mark Wielaard wrote:
> > Embarrassing... But I did test the patch on a x86 machine and it really
> > looked innocent. I have no idea why that would cause a simple program
> > like the following to fail:
>> It shouldn't.

I know, I didn't believe it either. But it really does make a difference
on my machine.
> > But it seems that it does on powerpc-unknown-linux-gnu. Can anybody spot
> > anything in that patch that could cause the whole exception mechanism to
> > fail (in exception.cc:110)?
> > (And only with shared libraries, compiling with -static works ok.)
>> Assuming this patch really is responsible, it may not be a DSO vs. -static
> thing anyway. The static executable you built may not have linked with
> the gnu.java.security objects at all, so would be unaffected by this
> patch.

Even adding the following line to the test:
 java.security.Provider p = new gnu.java.security.provider.Gnu();
(just before the throw) makes the -static binary run happily.
> Can you place a breakpoint on abort() and find out what the
> _Unwind_Reason_Code is? The comment suggests it could be
> _URC_END_OF_STACK or some other failure.

I am really not that good with gdb. I can set the breakpoint on
exception.cc:110 but the gdb tells be there is no variable code (why, it
is right there?) Any idea how I can get at it:
(gdb) n
91 xh->unwindHeader.exception_class = __gcj_exception_class;
(gdb) n
92 xh->unwindHeader.exception_cleanup = NULL;
(gdb) n
89 xh->value = value;
(gdb) n
100 code = _Unwind_RaiseException (&xh->unwindHeader);
(gdb) n
110 abort();
(gdb) print code
No symbol "code" in current context.
(gdb) 
> > I am going to double check this by doing a complete clean compile of the
> > HEAD with only this patch reversed tonight. If that produces a gcj that
> > works correctly on the above program I will reverse the patch and figure
> > out later what particular part of the patch caused it.
>> I'm not sure if it worth reversing; I don't see a failure on sparc, i386
> or alpha.

Sorry, I just reverted it a couple of minutes ago. I really need it to
work on powerpc because that is were I run my daily Mauve tests (sent to
gcc-testresults daily). And nobody reported success with libjava on
powerpc the last couple of weeks so I guess it is broken for everybody
(or nobody ever tests powerpc...) Hopefully I figure out what is the
real problem this weekend then I will reapply. The gnu.crypto hackers
also need this so it is not that I don't want this to work.
Cheers,
Mark


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /