xref: /linux/tools/perf/util/unwind-libdw.h (revision a06c3fad49a50d5d5eb078f93e70f4d3eca5d5a5)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __PERF_UNWIND_LIBDW_H
3 #define __PERF_UNWIND_LIBDW_H
4 
5 #include <elfutils/libdwfl.h>
6 #include "unwind.h"
7 
8 struct machine;
9 struct perf_sample;
10 struct thread;
11 
12 bool libdw__arch_set_initial_registers(Dwfl_Thread *thread, void *arg);
13 
14 struct unwind_info {
15 	Dwfl			*dwfl;
16 	struct perf_sample      *sample;
17 	struct machine          *machine;
18 	struct thread           *thread;
19 	unwind_entry_cb_t	cb;
20 	void			*arg;
21 	int			max_stack;
22 	int			idx;
23 	bool			best_effort;
24 	struct unwind_entry	entries[];
25 };
26 
27 #endif /* __PERF_UNWIND_LIBDW_H */
28