Diagnosing IEEE exceptions in C programs

Bruce Allen ballen at convex.csd.uwm.edu
Mon Apr 29 05:20:00 AEST 1991


I have been doing a profile/optimization cycle on some code.  About 10% of
the execution time is spend in _SVID_libm_err which I assume is the
system-5 math library error handler.  In the call graph profile produced
by gprof the source of these calls is listed as <spontaneous> (I do not
know what that means!) In an attempt to find our where these calls
originated from, I used ieee_handler to redirect calls to my own error
handler.  I then ran under dbxtool and set a breakpoint within my error
handler.  The idea was, when the breakpoint is reached to use the "up"
command to move up the stack frames and find the culprit. But it does not
work.  I can move up through various levels of the ieee trap code, and
then find myself at what dbxtool claims is the top level, in a routine
called etext (error-text?).

Could someone please tell me what is going on?  What happened to the stack
frames?  How can I figure out exactly what line/function is doing the
trap?

Bruce Allen




More information about the Comp.sys.sun mailing list