85 #if defined (HOST_CPU_x86_64) 101 static const int RETCNT_EVENT = 0;
106 static const int IRRELEVANT = 0;
120 TMSG(RETCNT_CTL,
"thread init (no action needed)");
126 TMSG(RETCNT_CTL,
"thread action (noop)");
140 TMSG(RETCNT_CTL,
"thread fini (no action needed");
158 METHOD_FN(supports_event,
const char *ev_str)
168 TMSG(RETCNT_CTL,
"Setting up return counts(trampolines)");
173 METHOD_CALL(
self, store_event, RETCNT_EVENT, IRRELEVANT);
174 METHOD_CALL(
self, store_metric_id, RETCNT_EVENT, metric_id);
186 TMSG(REC_COMPRESS,
"RETCNT event ==> retain recursion");
194 printf(
"===========================================================================\n");
195 printf(
"Available return-count events\n");
196 printf(
"===========================================================================\n");
197 printf(
"Name\t\tDescription\n");
198 printf(
"---------------------------------------------------------------------------\n");
199 printf(
"%s\t\tEach time a procedure returns, the return count for that\n" 200 "\t\tprocedure is incremented\n" 205 #define ss_name retcnt 206 #define ss_cls SS_SOFTWARE 207 #define ss_sort_order 100 227 TMSG(TRAMP,
"Increment retcnt (metric id = %d), by %d", metric_id, incr);
static void cct_metric_data_increment(int metric_id, cct_node_t *x, cct_metric_data_t incr)
void hpcrun_retcnt_inc(cct_node_t *node, int incr)
#define HPCRUN_METRIC_RetCnt
bool hpcrun_ev_is(const char *candidate, const char *event_name)
int hpcrun_event2metric(sample_source_t *ss, int event_idx)
#define METHOD_CALL(obj, meth,...)
int hpcrun_new_metric(void)
metric_desc_t * hpcrun_set_metric_info(int metric_id, const char *name)
void hpcrun_set_retain_recursion_mode(bool mode)