Lines 107-123
Link Here
|
107 |
} |
107 |
} |
108 |
#endif |
108 |
#endif |
109 |
|
109 |
|
110 |
#if defined SOLARIS || ( defined(NETBSD) && defined(SPARC) ) |
110 |
#if defined(SOLARIS) |
111 |
#ifdef GCC |
111 |
extern "C" void* sal_getFP(); |
|
|
112 |
#elif defined(NETBSD) && defined(SPARC) |
112 |
inline void* sal_getFP() |
113 |
inline void* sal_getFP() |
113 |
{ |
114 |
{ |
114 |
volatile void* fp = NULL; |
115 |
volatile void* fp = NULL; |
115 |
__asm__ __volatile ("st %%fp, %0\n" : "=m"(fp) ); |
116 |
__asm__ __volatile ("st %%fp, %0\n" : "=m"(fp) ); |
116 |
return fp; |
117 |
return fp; |
117 |
} |
118 |
} |
118 |
#else |
|
|
119 |
extern "C" void* sal_getFP(); |
120 |
#endif |
121 |
#elif (defined LINUX && defined INTEL) || defined FREEBSD |
119 |
#elif (defined LINUX && defined INTEL) || defined FREEBSD |
122 |
inline void* sal_getFP() |
120 |
inline void* sal_getFP() |
123 |
{ |
121 |
{ |
Lines 181-186
Link Here
|
181 |
ByteString aRet; |
179 |
ByteString aRet; |
182 |
char buffer[ 256 ]; |
180 |
char buffer[ 256 ]; |
183 |
|
181 |
|
|
|
182 |
/* a macro PC is defined under Solaris gcc * |
183 |
* see /usr/include/sys/reg.h */ |
184 |
#ifdef PC |
185 |
#undef PC |
186 |
#endif |
184 |
void* PC = getPC( pFrame ); |
187 |
void* PC = getPC( pFrame ); |
185 |
#if !defined(MACOSX) |
188 |
#if !defined(MACOSX) |
186 |
Dl_info aInfo; |
189 |
Dl_info aInfo; |