summaryrefslogtreecommitdiff
path: root/tools/perf/util/unwind-libdw.h
blob: 8c88bc4f2304b59561ffd482469ca63ce0f531f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __PERF_UNWIND_LIBDW_H
#define __PERF_UNWIND_LIBDW_H

#include <elfutils/libdwfl.h>
#include "unwind.h"

struct machine;
struct perf_sample;
struct thread;

bool libdw__arch_set_initial_registers(Dwfl_Thread *thread, void *arg);

struct unwind_info {
	Dwfl			*dwfl;
	struct perf_sample      *sample;
	struct machine          *machine;
	struct thread           *thread;
	unwind_entry_cb_t	cb;
	void			*arg;
	int			max_stack;
	int			idx;
	bool			best_effort;
	struct unwind_entry	entries[];
};

#endif /* __PERF_UNWIND_LIBDW_H */