intel_pt_insn 97 tools/perf/arch/x86/tests/insn-x86.c struct intel_pt_insn intel_pt_insn; intel_pt_insn 118 tools/perf/arch/x86/tests/insn-x86.c if (intel_pt_get_insn(dat->data, MAX_INSN_SIZE, x86_64, &intel_pt_insn)) { intel_pt_insn 123 tools/perf/arch/x86/tests/insn-x86.c if ((int)intel_pt_insn.op != op) { intel_pt_insn 125 tools/perf/arch/x86/tests/insn-x86.c intel_pt_insn.op, op, dat->asm_rep); intel_pt_insn 129 tools/perf/arch/x86/tests/insn-x86.c if ((int)intel_pt_insn.branch != branch) { intel_pt_insn 131 tools/perf/arch/x86/tests/insn-x86.c intel_pt_insn.branch, branch, dat->asm_rep); intel_pt_insn 135 tools/perf/arch/x86/tests/insn-x86.c if (intel_pt_insn.rel != dat->expected_rel) { intel_pt_insn 137 tools/perf/arch/x86/tests/insn-x86.c intel_pt_insn.rel, dat->expected_rel, dat->asm_rep); intel_pt_insn 76 tools/perf/util/intel-bts.c struct intel_pt_insn intel_pt_insn; intel_pt_insn 294 tools/perf/util/intel-bts.c sample.insn_len = btsq->intel_pt_insn.length; intel_pt_insn 295 tools/perf/util/intel-bts.c memcpy(sample.insn, btsq->intel_pt_insn.buf, INTEL_PT_INSN_BUF_SZ); intel_pt_insn 335 tools/perf/util/intel-bts.c if (intel_pt_get_insn(buf, len, x86_64, &btsq->intel_pt_insn)) intel_pt_insn 373 tools/perf/util/intel-bts.c btsq->intel_pt_insn.length = 0; intel_pt_insn 377 tools/perf/util/intel-bts.c btsq->intel_pt_insn.length = 0; intel_pt_insn 382 tools/perf/util/intel-bts.c btsq->intel_pt_insn.length = 0; intel_pt_insn 390 tools/perf/util/intel-bts.c btsq->sample_flags = intel_pt_insn_type(btsq->intel_pt_insn.op); intel_pt_insn 434 tools/perf/util/intel-bts.c btsq->intel_pt_insn.length, intel_pt_insn 94 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c int (*walk_insn)(struct intel_pt_insn *intel_pt_insn, intel_pt_insn 977 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c struct intel_pt_insn *intel_pt_insn, uint64_t ip) intel_pt_insn 987 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c err = decoder->walk_insn(intel_pt_insn, &insn_cnt, &decoder->ip, ip, intel_pt_insn 1013 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn->branch == INTEL_PT_BR_NO_BRANCH) { intel_pt_insn 1017 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c decoder->ip += intel_pt_insn->length; intel_pt_insn 1022 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn->op == INTEL_PT_OP_CALL) { intel_pt_insn 1024 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn->branch != INTEL_PT_BR_UNCONDITIONAL || intel_pt_insn 1025 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c intel_pt_insn->rel) { intel_pt_insn 1027 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c intel_pt_insn->length); intel_pt_insn 1031 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c } else if (intel_pt_insn->op == INTEL_PT_OP_RET) { intel_pt_insn 1035 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn->branch == INTEL_PT_BR_UNCONDITIONAL) { intel_pt_insn 1039 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c decoder->ip += intel_pt_insn->length + intel_pt_insn 1040 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c intel_pt_insn->rel; intel_pt_insn 1074 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c decoder->state.insn_op = intel_pt_insn->op; intel_pt_insn 1075 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c decoder->state.insn_len = intel_pt_insn->length; intel_pt_insn 1076 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c memcpy(decoder->state.insn, intel_pt_insn->buf, intel_pt_insn 1145 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c struct intel_pt_insn *intel_pt_insn, intel_pt_insn 1149 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c intel_pt_insn->branch == INTEL_PT_BR_INDIRECT && intel_pt_insn 1150 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c ip == decoder->ip + intel_pt_insn->length; intel_pt_insn 1155 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c struct intel_pt_insn intel_pt_insn; intel_pt_insn 1162 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c err = intel_pt_walk_insn(decoder, &intel_pt_insn, ip); intel_pt_insn 1166 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c intel_pt_fup_with_nlip(decoder, &intel_pt_insn, ip, err)) { intel_pt_insn 1175 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn.branch == INTEL_PT_BR_INDIRECT) { intel_pt_insn 1182 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn.branch == INTEL_PT_BR_CONDITIONAL) { intel_pt_insn 1195 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c struct intel_pt_insn intel_pt_insn; intel_pt_insn 1198 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c err = intel_pt_walk_insn(decoder, &intel_pt_insn, 0); intel_pt_insn 1217 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn.branch == INTEL_PT_BR_INDIRECT) { intel_pt_insn 1243 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn.branch == INTEL_PT_BR_CONDITIONAL) { intel_pt_insn 1244 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c uint64_t to_ip = decoder->ip + intel_pt_insn.length + intel_pt_insn 1245 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c intel_pt_insn.rel; intel_pt_insn 1271 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c struct intel_pt_insn intel_pt_insn; intel_pt_insn 1275 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c err = intel_pt_walk_insn(decoder, &intel_pt_insn, 0); intel_pt_insn 1281 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn.op == INTEL_PT_OP_RET) { intel_pt_insn 1312 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn.branch == INTEL_PT_BR_INDIRECT) { intel_pt_insn 1332 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c if (intel_pt_insn.branch == INTEL_PT_BR_CONDITIONAL) { intel_pt_insn 1341 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c decoder->ip += intel_pt_insn.length + intel_pt_insn 1342 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c intel_pt_insn.rel; intel_pt_insn 1352 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c decoder->ip += intel_pt_insn.length; intel_pt_insn 1356 tools/perf/util/intel-pt-decoder/intel-pt-decoder.c decoder->ip += intel_pt_insn.length; intel_pt_insn 224 tools/perf/util/intel-pt-decoder/intel-pt-decoder.h struct intel_pt_insn; intel_pt_insn 238 tools/perf/util/intel-pt-decoder/intel-pt-decoder.h int (*walk_insn)(struct intel_pt_insn *intel_pt_insn, intel_pt_insn 28 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c struct intel_pt_insn *intel_pt_insn) intel_pt_insn 34 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel = 0; intel_pt_insn 37 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->op = INTEL_PT_OP_OTHER; intel_pt_insn 38 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->branch = INTEL_PT_BR_NO_BRANCH; intel_pt_insn 39 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->length = insn->length; intel_pt_insn 129 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->op = op; intel_pt_insn 130 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->branch = branch; intel_pt_insn 131 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->length = insn->length; intel_pt_insn 138 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel = insn->immediate.value; intel_pt_insn 141 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel = intel_pt_insn 145 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel = bswap_32(insn->immediate.value); intel_pt_insn 148 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel = 0; intel_pt_insn 152 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel = insn->immediate.value; intel_pt_insn 158 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c struct intel_pt_insn *intel_pt_insn) intel_pt_insn 166 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn_decoder(&insn, intel_pt_insn); intel_pt_insn 168 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c memcpy(intel_pt_insn->buf, buf, insn.length); intel_pt_insn 170 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c memcpy(intel_pt_insn->buf, buf, INTEL_PT_INSN_BUF_SZ); intel_pt_insn 176 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c struct intel_pt_insn in; intel_pt_insn 223 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c int intel_pt_insn_desc(const struct intel_pt_insn *intel_pt_insn, char *buf, intel_pt_insn 226 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c switch (intel_pt_insn->branch) { intel_pt_insn 230 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn_name(intel_pt_insn->op), intel_pt_insn 231 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel > 0 ? "+" : "", intel_pt_insn 232 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn->rel); intel_pt_insn 236 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c intel_pt_insn_name(intel_pt_insn->op)); intel_pt_insn 45 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.h struct intel_pt_insn *intel_pt_insn); intel_pt_insn 49 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.h int intel_pt_insn_desc(const struct intel_pt_insn *intel_pt_insn, char *buf, intel_pt_insn 110 tools/perf/util/intel-pt-decoder/intel-pt-log.c void __intel_pt_log_insn(struct intel_pt_insn *intel_pt_insn, uint64_t ip) intel_pt_insn 113 tools/perf/util/intel-pt-decoder/intel-pt-log.c size_t len = intel_pt_insn->length; intel_pt_insn 120 tools/perf/util/intel-pt-decoder/intel-pt-log.c intel_pt_print_data(intel_pt_insn->buf, len, ip, 8); intel_pt_insn 121 tools/perf/util/intel-pt-decoder/intel-pt-log.c if (intel_pt_insn_desc(intel_pt_insn, desc, INTEL_PT_INSN_DESC_MAX) > 0) intel_pt_insn 127 tools/perf/util/intel-pt-decoder/intel-pt-log.c void __intel_pt_log_insn_no_data(struct intel_pt_insn *intel_pt_insn, intel_pt_insn 136 tools/perf/util/intel-pt-decoder/intel-pt-log.c if (intel_pt_insn_desc(intel_pt_insn, desc, INTEL_PT_INSN_DESC_MAX) > 0) intel_pt_insn 24 tools/perf/util/intel-pt-decoder/intel-pt-log.h struct intel_pt_insn; intel_pt_insn 26 tools/perf/util/intel-pt-decoder/intel-pt-log.h void __intel_pt_log_insn(struct intel_pt_insn *intel_pt_insn, uint64_t ip); intel_pt_insn 27 tools/perf/util/intel-pt-decoder/intel-pt-log.h void __intel_pt_log_insn_no_data(struct intel_pt_insn *intel_pt_insn, intel_pt_insn 468 tools/perf/util/intel-pt.c struct intel_pt_insn *intel_pt_insn) intel_pt_insn 483 tools/perf/util/intel-pt.c e->op = intel_pt_insn->op; intel_pt_insn 484 tools/perf/util/intel-pt.c e->branch = intel_pt_insn->branch; intel_pt_insn 485 tools/perf/util/intel-pt.c e->length = intel_pt_insn->length; intel_pt_insn 486 tools/perf/util/intel-pt.c e->rel = intel_pt_insn->rel; intel_pt_insn 487 tools/perf/util/intel-pt.c memcpy(e->insn, intel_pt_insn->buf, INTEL_PT_INSN_BUF_SZ); intel_pt_insn 514 tools/perf/util/intel-pt.c static int intel_pt_walk_next_insn(struct intel_pt_insn *intel_pt_insn, intel_pt_insn 531 tools/perf/util/intel-pt.c intel_pt_insn->length = 0; intel_pt_insn 564 tools/perf/util/intel-pt.c intel_pt_insn->op = e->op; intel_pt_insn 565 tools/perf/util/intel-pt.c intel_pt_insn->branch = e->branch; intel_pt_insn 566 tools/perf/util/intel-pt.c intel_pt_insn->length = e->length; intel_pt_insn 567 tools/perf/util/intel-pt.c intel_pt_insn->rel = e->rel; intel_pt_insn 568 tools/perf/util/intel-pt.c memcpy(intel_pt_insn->buf, e->insn, intel_pt_insn 570 tools/perf/util/intel-pt.c intel_pt_log_insn_no_data(intel_pt_insn, *ip); intel_pt_insn 590 tools/perf/util/intel-pt.c if (intel_pt_get_insn(buf, len, x86_64, intel_pt_insn)) intel_pt_insn 593 tools/perf/util/intel-pt.c intel_pt_log_insn(intel_pt_insn, *ip); intel_pt_insn 597 tools/perf/util/intel-pt.c if (intel_pt_insn->branch != INTEL_PT_BR_NO_BRANCH) intel_pt_insn 603 tools/perf/util/intel-pt.c *ip += intel_pt_insn->length; intel_pt_insn 611 tools/perf/util/intel-pt.c offset += intel_pt_insn->length; intel_pt_insn 635 tools/perf/util/intel-pt.c *ip - start_ip, intel_pt_insn);