This is the mail archive of the gcc@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]
Other format: [Raw text]

GCC 3.3 Prelease broken on s390


Mark,

unfortunately, the prelease is seriously broken on s390; 
exception handling does not work at all.  See
http://gcc.gnu.org/ml/gcc-testresults/2003-05/msg00365.html
Every single exception-related testcase (C++ or Java) fails.

This appears to be caused by rth's recent checkin:
http://gcc.gnu.org/ml/gcc-patches/2003-05/msg00402.html
reverting the unwind-dw2.c change introduced by this patch
appears to fix the problem.

Richard, I don't quite see how this change is supposed to work:
+  tmp_sp = (_Unwind_Ptr) context->cfa;
+  _Unwind_SetGRPtr (&orig_context, __builtin_dwarf_sp_column (), &tmp_sp);

On s390, the CFA does not have the same value as the saved stack pointer,
it is biased by 96/160 bytes relative to the stack.  While I haven't
debugged the failure in detail yet, I'd assume this will screw up
stack unwinding on s390, as the next CFA will be computed incorrectly
relative to this wrong SP value ...

Do you have any suggestions how to fix this?

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  weigand@informatik.uni-erlangen.de


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