Greg Stark <gsstark(at)mit(dot)edu> writes:
> It seems more likely it would be some kind of asm than a trap.
I seem to be getting plausible results from this bit of crockery:
#include <asm/ia64regs.h>
static __inline__ void *
get_bsp(void)
{
void *ret;
#ifndef __INTEL_COMPILER
__asm__ __volatile__(
";;\n mov %0=ar.bsp\n"
:"=r"(ret));
#else
ret = (void *) __getReg(_IA64_REG_AR_BSP);
#endif
return ret;
}
I'll clean this up and commit, assuming it actually fixes the problem.
regards, tom lane