1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 25ea84154SJiri Olsa #ifndef __PERF_UNWIND_LIBDW_H 35ea84154SJiri Olsa #define __PERF_UNWIND_LIBDW_H 45ea84154SJiri Olsa 55ea84154SJiri Olsa #include <elfutils/libdwfl.h> 65ea84154SJiri Olsa #include "unwind.h" 75ea84154SJiri Olsa 8e7ff8920SArnaldo Carvalho de Melo struct machine; 9e7ff8920SArnaldo Carvalho de Melo struct perf_sample; 10e7ff8920SArnaldo Carvalho de Melo struct thread; 11e7ff8920SArnaldo Carvalho de Melo 125ea84154SJiri Olsa bool libdw__arch_set_initial_registers(Dwfl_Thread *thread, void *arg); 135ea84154SJiri Olsa 145ea84154SJiri Olsa struct unwind_info { 155ea84154SJiri Olsa Dwfl *dwfl; 165ea84154SJiri Olsa struct perf_sample *sample; 175ea84154SJiri Olsa struct machine *machine; 185ea84154SJiri Olsa struct thread *thread; 195ea84154SJiri Olsa unwind_entry_cb_t cb; 205ea84154SJiri Olsa void *arg; 215ea84154SJiri Olsa int max_stack; 228bd508b0SJiri Olsa int idx; 23*fa7095c5SJames Clark bool best_effort; 248bd508b0SJiri Olsa struct unwind_entry entries[]; 255ea84154SJiri Olsa }; 265ea84154SJiri Olsa 275ea84154SJiri Olsa #endif /* __PERF_UNWIND_LIBDW_H */ 28