RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
rtl-unwind-dw2.h
Go to the documentation of this file.
1/*
2 * COPYRIGHT (c) 2016, 2018 Chris Johns <chrisj@rtems.org>
3 *
4 * The license and distribution terms for this file may be
5 * found in the file LICENSE in this distribution or at
6 * http://www.rtems.org/license/LICENSE.
7 */
16#if !defined (_RTEMS_RTL_UNWIND_DW2_H_)
17#define _RTEMS_RTL_UNWIND_DW2_H_
18
19#include "rtl-elf.h"
20
21#ifdef __cplusplus
22extern "C" {
23#endif /* __cplusplus */
24
25#if __SIZEOF_LONG__ >= __SIZEOF_POINTER__
26 typedef long rtems_rtl_elf_unwind_dw2_sleb128;
27 typedef unsigned long rtems_rtl_elf_unwind_dw2_uleb128;
28#elif __SIZEOF_LONG_LONG__ >= __SIZEOF_POINTER__
29 typedef long long rtems_rtl_elf_unwind_dw2_sleb128;
30 typedef unsigned long long rtems_rtl_elf_unwind_dw2_uleb128;
31#else
32 #error No DW2 type available.
33#endif
34
46 const char* name,
47 uint32_t flags);
48
58
68
72const uint8_t* rtems_rtl_elf_unwind_dw2_read_uleb128 (const uint8_t* data,
73 rtems_rtl_elf_unwind_dw2_uleb128* val);
74const uint8_t* rtems_rtl_elf_unwind_dw2_read_sleb128 (const uint8_t* data,
75 rtems_rtl_elf_unwind_dw2_sleb128* val);
76
77bool rtems_rtl_elf_unwind_dw2_relocate (const Elf_Addr* where, Elf_Word value, Elf_Word mask);
78
79#ifdef __cplusplus
80}
81#endif /* __cplusplus */
82
83#endif
RTEMS Run-Time Linker ELF Headers.
bool rtems_rtl_elf_unwind_dw2_parse(const rtems_rtl_obj *obj, const char *name, uint32_t flags)
Definition: rtl-unwind-dw2.c:38
const uint8_t * rtems_rtl_elf_unwind_dw2_read_uleb128(const uint8_t *data, rtems_rtl_elf_unwind_dw2_uleb128 *val)
bool rtems_rtl_elf_unwind_dw2_deregister(const rtems_rtl_obj *obj)
Definition: rtl-unwind-dw2.c:61
bool rtems_rtl_elf_unwind_dw2_register(const rtems_rtl_obj *obj)
Definition: rtl-unwind-dw2.c:49
Definition: rtl-obj.h:181