RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
rtl-unresolved.h
Go to the documentation of this file.
1/*
2 * COPYRIGHT (c) 2012, 2019 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 */
52#if !defined (_RTEMS_RTL_UNRESOLVED_H_)
53#define _RTEMS_RTL_UNRESOLVED_H_
54
55#include <rtems.h>
56#include <rtems/chain.h>
57#include "rtl-obj-fwd.h"
58
59#ifdef __cplusplus
60extern "C" {
61#endif /* __cplusplus */
62
67typedef uint32_t rtems_rtl_word;
68
73{
79
83#define RTEMS_RTL_UNRESOLV_SYM_SEARCH_ARCHIVE (1 << 0)
84#define RTEMS_RTL_UNRESOLV_SYM_HAS_ERROR (1 << 1)
96{
97 uint16_t refs;
98 uint16_t flags;
99 uint16_t length;
100 const char name[];
102
108{
110 uint16_t flags;
111 uint16_t name;
112 uint16_t sect;
115
120{
122 uint16_t flags;
123 uint16_t sect;
127
132{
134 union
135 {
139 } rec;
141
146{
148 uint32_t recs;
151
156{
157 uint32_t marker;
158 size_t block_recs;
161
171 void* data);
172
183 size_t block_records);
184
191
196 void* data);
197
211 const uint16_t flags,
212 const char* name,
213 const uint16_t sect,
214 const rtems_rtl_word* rel);
215
220
230 const char* name,
231 const uint16_t sect,
232 const rtems_rtl_word* rel);
233
239
243void rtems_rtl_unresolved_dump (void);
244
245#ifdef __cplusplus
246}
247#endif /* __cplusplus */
248
249#endif
Chain API.
RTEMS Run-Time Linker ELF Headers.
bool rtems_rtl_unresolved_iterate(rtems_rtl_unresolved_iterator iterator, void *data)
Definition: rtl-unresolved.c:509
void rtems_rtl_unresolved_resolve(void)
Definition: rtl-unresolved.c:636
rtems_rtl_unresolved_rtype
Definition: rtl-unresolved.h:73
@ rtems_rtl_unresolved_reloc
Definition: rtl-unresolved.h:76
@ rtems_rtl_unresolved_symbol
Definition: rtl-unresolved.h:75
@ rtems_rtl_unresolved_empty
Definition: rtl-unresolved.h:74
@ rtems_rtl_trampoline_reloc
Definition: rtl-unresolved.h:77
struct rtems_rtl_unresolv_symbol rtems_rtl_unresolv_symbol
uint32_t rtems_rtl_word
Definition: rtl-unresolved.h:67
struct rtems_rtl_unresolved rtems_rtl_unresolved
void rtems_rtl_unresolved_dump(void)
Definition: rtl-unresolved.c:808
void rtems_rtl_unresolved_set_archive_search(void)
Definition: rtl-unresolved.c:816
bool rtems_rtl_unresolved_iterator(rtems_rtl_unresolv_rec *rec, void *data)
Definition: rtl-unresolved.h:170
struct rtems_rtl_unresolv_reloc rtems_rtl_unresolv_reloc
bool rtems_rtl_unresolved_add(rtems_rtl_obj *obj, const uint16_t flags, const char *name, const uint16_t sect, const rtems_rtl_word *rel)
Definition: rtl-unresolved.c:535
struct rtems_rtl_unresolv_block rtems_rtl_unresolv_block
bool rtems_rtl_unresolved_remove(rtems_rtl_obj *obj, const char *name, const uint16_t sect, const rtems_rtl_word *rel)
struct rtems_rtl_tramp_reloc rtems_rtl_tramp_reloc
struct rtems_rtl_unresolv_rec rtems_rtl_unresolv_rec
void rtems_rtl_unresolved_table_close(rtems_rtl_unresolved *unresolved)
Definition: rtl-unresolved.c:497
bool rtems_rtl_unresolved_table_open(rtems_rtl_unresolved *unresolved, size_t block_records)
Definition: rtl-unresolved.c:487
Definition: chain.h:68
Definition: rtl-obj.h:181
Definition: rtl-unresolved.h:120
rtems_rtl_word symvalue
Definition: rtl-unresolved.h:124
uint16_t sect
Definition: rtl-unresolved.h:123
rtems_rtl_obj * obj
Definition: rtl-unresolved.h:121
uint16_t flags
Definition: rtl-unresolved.h:122
rtems_rtl_word rel[3]
Definition: rtl-unresolved.h:125
Definition: rtl-unresolved.h:146
uint32_t recs
Definition: rtl-unresolved.h:148
rtems_rtl_unresolv_rec rec[]
Definition: rtl-unresolved.h:149
rtems_chain_node link
Definition: rtl-unresolved.h:147
Definition: rtl-unresolved.h:132
rtems_rtl_unresolv_symbol name
Definition: rtl-unresolved.h:136
rtems_rtl_tramp_reloc tramp
Definition: rtl-unresolved.h:138
rtems_rtl_unresolv_reloc reloc
Definition: rtl-unresolved.h:137
Definition: rtl-unresolved.h:108
rtems_rtl_obj * obj
Definition: rtl-unresolved.h:109
uint16_t flags
Definition: rtl-unresolved.h:110
uint16_t name
Definition: rtl-unresolved.h:111
rtems_rtl_word rel[3]
Definition: rtl-unresolved.h:113
uint16_t sect
Definition: rtl-unresolved.h:112
Definition: rtl-unresolved.h:96
uint16_t flags
Definition: rtl-unresolved.h:98
uint16_t length
Definition: rtl-unresolved.h:99
uint16_t refs
Definition: rtl-unresolved.h:97
Definition: rtl-unresolved.h:156
rtems_chain_control blocks
Definition: rtl-unresolved.h:159
uint32_t marker
Definition: rtl-unresolved.h:157
size_t block_recs
Definition: rtl-unresolved.h:158
Definition: chain.h:86