This is the mail archive of the java@gcc.gnu.org mailing list for the Java 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: Current gcj on powerpc


Mark Wielaard wrote:


You need to build the file that you're debugging without optimization for GDB to work properly. The easiest way to do that is to "touch exception.cc" and rebuild libjava with "make CXXFLAGS=-g"

Thanks, of course the compiler optimizes the assignment away since it is
never used. But now that I can print it it doesn't make sense:

   110	  abort();
   (gdb) print code
   $1 = 268705696

Which doesn't make sense since only value 0 till 8 are meaningfull
according to unwind.h. Sigh.

It might be worth adding a printf ("Unwind code: %i\n", code) or whatever in exception.cc just to be sure that the assignment isn't being done properly even though optimization isn't used. Also you could try putting a breakpoint on _Unwind_RaiseException - which should be easy if it is crashing on every throw - and using the "finish" command which should show you the returned value.

I have been readding the patch is parts and it seems that the DSA
provider classes are to blame (I can add all other changes and new
classes without problem). But compiling on my powerpc machine is very
slow so it might take a while till I have found out exactly which of the
following classes causes this strange behaviour:

I still intend to do a build on my PowerBook soon to see if I can reproduce this behaviour. My local tree is currently failing to build due to some unrelated changes.

regards

Bryce.




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