summaryrefslogtreecommitdiff
path: root/sal/osl/unx/backtrace.c
diff options
context:
space:
mode:
Diffstat (limited to 'sal/osl/unx/backtrace.c')
-rw-r--r--sal/osl/unx/backtrace.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/sal/osl/unx/backtrace.c b/sal/osl/unx/backtrace.c
index c5fbfbf24948..5df6fcffd94d 100644
--- a/sal/osl/unx/backtrace.c
+++ b/sal/osl/unx/backtrace.c
@@ -138,9 +138,18 @@ void backtrace_symbols_fd( void **buffer, int size, int fd )
#include <stdio.h>
#include "backtrace.h"
+#if defined(POWERPC) || defined(POWERPC64)
+
+#define FRAME_PTR_OFFSET 1
+#define FRAME_OFFSET 0
+
+#else
+
#define FRAME_PTR_OFFSET 3
#define FRAME_OFFSET 0
+#endif
+
int backtrace( void **buffer, int max_frames )
{
struct frame *fp;