xref: /linux/tools/perf/util/print_insn.h (revision af8e51644a70f612974a6e767fa7d896d3c23f88)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef PERF_PRINT_INSN_H
3 #define PERF_PRINT_INSN_H
4 
5 #include <stddef.h>
6 #include <stdio.h>
7 
8 struct perf_sample;
9 struct thread;
10 struct machine;
11 struct perf_insn;
12 
13 #define PRINT_INSN_IMM_HEX		(1<<0)
14 
15 size_t sample__fprintf_insn_asm(struct perf_sample *sample, struct thread *thread,
16 				struct machine *machine, FILE *fp, struct addr_location *al);
17 size_t sample__fprintf_insn_raw(struct perf_sample *sample, FILE *fp);
18 ssize_t fprintf_insn_asm(struct machine *machine, struct thread *thread, u8 cpumode,
19 			 bool is64bit, const uint8_t *code, size_t code_size,
20 			 uint64_t ip, int *lenp, int print_opts, FILE *fp);
21 
22 #endif /* PERF_PRINT_INSN_H */
23