Home
last modified time | relevance | path

Searched refs:intel_pt_insn (Results 1 – 9 of 9) sorted by relevance

/linux/tools/perf/util/intel-pt-decoder/
H A Dintel-pt-insn-decoder.c29 struct intel_pt_insn *intel_pt_insn) in intel_pt_insn_decoder() argument
35 intel_pt_insn->rel = 0; in intel_pt_insn_decoder()
36 intel_pt_insn->emulated_ptwrite = false; in intel_pt_insn_decoder()
39 intel_pt_insn->op = INTEL_PT_OP_OTHER; in intel_pt_insn_decoder()
40 intel_pt_insn->branch = INTEL_PT_BR_NO_BRANCH; in intel_pt_insn_decoder()
41 intel_pt_insn->length = insn->length; in intel_pt_insn_decoder()
97 intel_pt_insn->op = INTEL_PT_OP_JMP; in intel_pt_insn_decoder()
99 intel_pt_insn->branch = INTEL_PT_BR_INDIRECT; in intel_pt_insn_decoder()
100 intel_pt_insn->length = insn->length; in intel_pt_insn_decoder()
165 intel_pt_insn->op = op; in intel_pt_insn_decoder()
[all …]
H A Dintel-pt-insn-decoder.h39 struct intel_pt_insn { struct
49 struct intel_pt_insn *intel_pt_insn); argument
53 int intel_pt_insn_desc(const struct intel_pt_insn *intel_pt_insn, char *buf,
H A Dintel-pt-log.h25 struct intel_pt_insn;
27 void __intel_pt_log_insn(struct intel_pt_insn *intel_pt_insn, uint64_t ip);
28 void __intel_pt_log_insn_no_data(struct intel_pt_insn *intel_pt_insn,
H A Dintel-pt-log.c225 void __intel_pt_log_insn(struct intel_pt_insn *intel_pt_insn, uint64_t ip) in __intel_pt_log_insn() argument
228 size_t len = intel_pt_insn->length; in __intel_pt_log_insn()
235 intel_pt_print_data(intel_pt_insn->buf, len, ip, 8); in __intel_pt_log_insn()
236 if (intel_pt_insn_desc(intel_pt_insn, desc, INTEL_PT_INSN_DESC_MAX) > 0) in __intel_pt_log_insn()
242 void __intel_pt_log_insn_no_data(struct intel_pt_insn *intel_pt_insn, in __intel_pt_log_insn_no_data() argument
251 if (intel_pt_insn_desc(intel_pt_insn, desc, INTEL_PT_INSN_DESC_MAX) > 0) in __intel_pt_log_insn_no_data()
H A Dintel-pt-decoder.c119 int (*walk_insn)(struct intel_pt_insn *intel_pt_insn,
1118 struct intel_pt_insn intel_pt_insn; in intel_pt_sample_fup_insn() local
1136 err = decoder->walk_insn(&intel_pt_insn, &insn_cnt, &decoder->ip, in intel_pt_sample_fup_insn()
1142 if (intel_pt_insn.branch != INTEL_PT_BR_NO_BRANCH) { in intel_pt_sample_fup_insn()
1155 decoder->ip += intel_pt_insn.length; in intel_pt_sample_fup_insn()
1159 struct intel_pt_insn *intel_pt_insn, uint64_t ip) in intel_pt_walk_insn() argument
1169 err = decoder->walk_insn(intel_pt_insn, in intel_pt_walk_insn()
1411 intel_pt_fup_with_nlip(struct intel_pt_decoder * decoder,struct intel_pt_insn * intel_pt_insn,uint64_t ip,int err) intel_pt_fup_with_nlip() argument
1421 struct intel_pt_insn intel_pt_insn; intel_pt_walk_fup() local
1464 struct intel_pt_insn intel_pt_insn; intel_pt_walk_tip() local
1629 struct intel_pt_insn intel_pt_insn; intel_pt_walk_tnt() local
[all...]
H A Dintel-pt-decoder.h261 struct intel_pt_insn;
275 int (*walk_insn)(struct intel_pt_insn *intel_pt_insn,
/linux/tools/perf/arch/x86/tests/
H A Dinsn-x86.c102 struct intel_pt_insn intel_pt_insn; in test_data_item() local
122 if (intel_pt_get_insn(dat->data, MAX_INSN_SIZE, x86_64, &intel_pt_insn)) { in test_data_item()
127 if ((int)intel_pt_insn.op != op) { in test_data_item()
129 intel_pt_insn.op, op, dat->asm_rep); in test_data_item()
133 if ((int)intel_pt_insn.branch != branch) { in test_data_item()
135 intel_pt_insn.branch, branch, dat->asm_rep); in test_data_item()
139 if (intel_pt_insn.rel != dat->expected_rel) { in test_data_item()
141 intel_pt_insn.rel, dat->expected_rel, dat->asm_rep); in test_data_item()
/linux/tools/perf/util/
H A Dintel-bts.c76 struct intel_pt_insn intel_pt_insn; member
294 sample.insn_len = btsq->intel_pt_insn.length; in intel_bts_synth_branch_sample()
295 memcpy(sample.insn, btsq->intel_pt_insn.buf, INTEL_PT_INSN_BUF_SZ); in intel_bts_synth_branch_sample()
335 if (intel_pt_get_insn(buf, len, x86_64, &btsq->intel_pt_insn)) in intel_bts_get_next_insn()
373 btsq->intel_pt_insn.length = 0; in intel_bts_get_branch_type()
377 btsq->intel_pt_insn.length = 0; in intel_bts_get_branch_type()
382 btsq->intel_pt_insn.length = 0; in intel_bts_get_branch_type()
390 btsq->sample_flags = intel_pt_insn_type(btsq->intel_pt_insn.op); in intel_bts_get_branch_type()
434 btsq->intel_pt_insn.length, in intel_bts_process_buffer()
H A Dintel-pt.c616 struct intel_pt_insn *intel_pt_insn) in intel_pt_cache_add() argument
631 e->op = intel_pt_insn->op; in intel_pt_cache_add()
632 e->branch = intel_pt_insn->branch; in intel_pt_cache_add()
633 e->emulated_ptwrite = intel_pt_insn->emulated_ptwrite; in intel_pt_cache_add()
634 e->length = intel_pt_insn->length; in intel_pt_cache_add()
635 e->rel = intel_pt_insn->rel; in intel_pt_cache_add()
636 memcpy(e->insn, intel_pt_insn->buf, INTEL_PT_INSN_BUF_SZ); in intel_pt_cache_add()
724 static inline bool intel_pt_jmp_16(struct intel_pt_insn *intel_pt_insn) in intel_pt_jmp_16() argument
726 return intel_pt_insn->rel == 16 && intel_pt_insn->branch == INTEL_PT_BR_UNCONDITIONAL; in intel_pt_jmp_16()
746 static int intel_pt_walk_next_insn(struct intel_pt_insn *intel_pt_insn, in intel_pt_walk_next_insn() argument
[all …]