RTEMS: cpukit/libdl/rtl-unwind-dw2.h Source File

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
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
45bool rtems_rtl_elf_unwind_dw2_parse (const rtems_rtl_obj* obj,
46 const char* name,
47 uint32_t flags);
48
57bool rtems_rtl_elf_unwind_dw2_register (const rtems_rtl_obj* obj);
58
67bool rtems_rtl_elf_unwind_dw2_deregister (const rtems_rtl_obj* obj);
68
72 const 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
rtl-elf.h
RTEMS Run-Time Linker ELF Headers.
rtems_rtl_elf_unwind_dw2_parse
bool rtems_rtl_elf_unwind_dw2_parse(const rtems_rtl_obj *obj, const char *name, uint32_t flags)
Definition: rtl-unwind-dw2.c:38
rtems_rtl_elf_unwind_dw2_read_uleb128
const uint8_t * rtems_rtl_elf_unwind_dw2_read_uleb128(const uint8_t *data, rtems_rtl_elf_unwind_dw2_uleb128 *val)
rtems_rtl_elf_unwind_dw2_deregister
bool rtems_rtl_elf_unwind_dw2_deregister(const rtems_rtl_obj *obj)
Definition: rtl-unwind-dw2.c:61
rtems_rtl_elf_unwind_dw2_register
bool rtems_rtl_elf_unwind_dw2_register(const rtems_rtl_obj *obj)
Definition: rtl-unwind-dw2.c:49
rtems_rtl_obj
Definition: rtl-obj.h:181