18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef __PERF_DUMP_INSN_H 38c2ecf20Sopenharmony_ci#define __PERF_DUMP_INSN_H 1 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci#define MAXINSN 15 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#include <linux/types.h> 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cistruct thread; 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_cistruct perf_insn { 128c2ecf20Sopenharmony_ci /* Initialized by callers: */ 138c2ecf20Sopenharmony_ci struct thread *thread; 148c2ecf20Sopenharmony_ci u8 cpumode; 158c2ecf20Sopenharmony_ci bool is64bit; 168c2ecf20Sopenharmony_ci int cpu; 178c2ecf20Sopenharmony_ci /* Temporary */ 188c2ecf20Sopenharmony_ci char out[256]; 198c2ecf20Sopenharmony_ci}; 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ciconst char *dump_insn(struct perf_insn *x, u64 ip, 228c2ecf20Sopenharmony_ci u8 *inbuf, int inlen, int *lenp); 238c2ecf20Sopenharmony_ciint arch_is_branch(const unsigned char *buf, size_t len, int x86_64); 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci#endif 26