S/390: Default to -fasynchronous-unwind-tables

Ulrich Weigand Ulrich.Weigand@de.ibm.com
Wed Nov 20 09:02:00 GMT 2002


Richard Henderson wrote:

>No.  Nor should it have been done for s390 IMO.  Who cares if
>you can't get a backtrace without debug information?

Well, it is a basic servicability requirement from many application
vendors to be able to get a backtrace when a crash happens.  This
in particular includes the case where crashes happen while executing
any library routine.

While you could certainly say that they should just build the app
with -g1, this doesn't help if the crash happens in a library routine.
One solution would be to build all system libraries also with -g1,
which we had considered, but this has the disadvantage that 'strip'
removes the information (and the usual RPM build process strips all
binaries and libraries) ...

B.t.w. we are currently generating *code* maintaining a stack backchain
at run time that is solely needed to generate backtraces -- this is not
like the frame pointer on Intel which has additional uses apart from
enabling backtraces.  The unwind tables allow us to get rid of this
run-time overhead at the expense of somewhat increased space needs,
while still providing the same essential feature: backtraces must be
possible under any circumstances.

In any case, this just changes a default setting.  Whoever really
wants to get rid of the unwind tables can still switch them off.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand
  Linux for S/390 Design & Development
  IBM Deutschland Entwicklung GmbH, Schoenaicher Str. 220, 71032 Boeblingen
  Phone: +49-7031/16-3727   ---   Email: Ulrich.Weigand@de.ibm.com



More information about the Gcc-patches mailing list