summaryrefslogtreecommitdiffstats
path: root/runtime/regs-ia64.c
diff options
context:
space:
mode:
authorMasami Hiramatsu <mhiramat@redhat.com>2008-09-12 14:40:00 -0400
committerMasami Hiramatsu <mhiramat@redhat.com>2008-09-12 14:40:00 -0400
commit82e5a20c33f5c0746720e83a551bf499661475d1 (patch)
treed8f30891acf30b727a12e90d0166ea13aa45f872 /runtime/regs-ia64.c
parent739828c29912961414ab42e4780bbddb35fc5278 (diff)
downloadsystemtap-steved-82e5a20c33f5c0746720e83a551bf499661475d1.tar.gz
systemtap-steved-82e5a20c33f5c0746720e83a551bf499661475d1.tar.xz
systemtap-steved-82e5a20c33f5c0746720e83a551bf499661475d1.zip
PR6028: use ip instead of pp for probe identification.
Diffstat (limited to 'runtime/regs-ia64.c')
-rw-r--r--runtime/regs-ia64.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/runtime/regs-ia64.c b/runtime/regs-ia64.c
index 8ce3e4c3..b0eb9829 100644
--- a/runtime/regs-ia64.c
+++ b/runtime/regs-ia64.c
@@ -39,10 +39,10 @@ static void ia64_stap_get_arbsp(struct unw_frame_info *info, void *arg)
* bspcache: get cached unwound address and
* set a probe local cache of the offset of unwound address.
*/
-#define bspcache(cache, regs, pp)\
+#define bspcache(cache, regs)\
if(regs) {\
static unsigned __offset = 0; /* probe local cache */\
- static const char * __pp = NULL; /* reference probe point */\
+ static void * __ip = NULL; /* reference ip */\
unsigned long *bsp;\
asm volatile("{ flushrs }\n"); /* flushrs for fixing bsp */\
bsp = (void*)ia64_getreg(_IA64_REG_AR_BSP);\
@@ -53,10 +53,10 @@ static void ia64_stap_get_arbsp(struct unw_frame_info *info, void *arg)
if (pa.address != 0) {\
__offset = ia64_rse_num_regs(pa.address, bsp)\
-(regs->cr_ifs & 127);\
- __pp = (const char *)pp;\
+ __ip = (void *)REG_IP(regs);\
cache = pa.address;\
}\
- } else if (pp == __pp)\
+ } else if ((void *)REG_IP(regs) == __ip)\
cache = ia64_rse_skip_regs(bsp,\
-(__offset + (regs->cr_ifs & 127)));\
}