return;
}
-#else /* if defined __ia64__ */
-
-#define bspcache(cache, regs) do {} while(0)
-
#endif /* if defined __ia64__ */
o->newline() << "c->last_error = 0;";
o->newline() << "c->nesting = -1;"; // NB: PR10516 packs locals[] tighter
o->newline() << "c->regs = 0;";
+ o->newline() << "#if defined __ia64__";
o->newline() << "c->unwaddr = 0;";
+ o->newline() << "#endif";
o->newline() << "c->probe_point = " << probe << ".pp;";
o->newline() << "#ifdef STP_NEED_PROBE_NAME";
o->newline() << "c->probe_name = " << probe << ".pn;";
if (access_vars)
{
// if accessing $variables, emit bsp cache setup for speeding up
+ o->newline() << "#if defined __ia64__";
o->newline() << "bspcache(c->unwaddr, c->regs);";
+ o->newline() << "#endif";
}
}
// When it's "something", probe code unwinds, _stp_error's, sets error state
o->newline() << "const char *last_stmt;";
o->newline() << "struct pt_regs *regs;";
+ o->newline() << "#if defined __ia64__";
o->newline() << "unsigned long *unwaddr;";
// unwaddr is caching unwound address in each probe handler on ia64.
+ o->newline() << "#endif";
o->newline() << "struct kretprobe_instance *pi;";
o->newline() << "int pi_longs;"; // int64_t count in pi->data, the rest is string_t
o->newline() << "int regparm;";