On 18 Jul 1999, Dag-Erling Smorgrav wrote: > Alfred Perlstein <bri...@rush.net> writes: > > On 18 Jul 1999, Dag-Erling Smorgrav wrote: > > > Alfred Perlstein <bri...@rush.net> writes: > > > > I doubt this is > > > > at all portable and may fail because of optimizations and ABI, such > > > > as archs that store the return address in a register... > > > I know - I don't expect it to be portable. > > *slap* :) > > It's #ifdef'ed so you can drop it on platforms where it doesn't work :) > > > > > gdb and glibc have some functions to assist in runtime backtraces, > > > > perhaps a look there may help? > > > I found out about __builtin_return_address(0). > > what is that? a function? available on freebsd? > > GCC builtin function. > > > by setting an alternate signal stack i think you can check > > if you are in a signal using this. this may not be the best way > > but it seems like a viable solution. > > Hmm, I ended up using a global variable which I increment at the > beginning of the signal handler, and decrement at the end.
As long as you make sure the code won't have multiple access that would work. -Alfred To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-hackers" in the body of the message