![]() |
RTEMS 6.1
|
RTEMS Run-Time Linker Object File Unresolved Relocations Table. More...
#include <errno.h>#include <inttypes.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#include <rtems/rtl/rtl.h>#include "rtl-error.h"#include <rtems/rtl/rtl-unresolved.h>#include <rtems/rtl/rtl-trace.h>#include "rtl-trampoline.h"Data Structures | |
| struct | rtl_unresolved_name_data |
| struct | rtems_rtl_unresolved_reloc_data |
| struct | rtems_rtl_unresolved_archive_reloc_data |
| struct | rtems_rtl_unresolved_dump_data |
Typedefs | |
| typedef struct rtems_rtl_unresolved_reloc_data | rtems_rtl_unresolved_reloc_data |
| typedef struct rtems_rtl_unresolved_archive_reloc_data | rtems_rtl_unresolved_archive_reloc_data |
| typedef struct rtems_rtl_unresolved_dump_data | rtems_rtl_unresolved_dump_data |
Functions | |
| bool | rtems_rtl_unresolved_table_open (rtems_rtl_unresolved *unresolved, size_t block_recs) |
| void | rtems_rtl_unresolved_table_close (rtems_rtl_unresolved *unresolved) |
| bool | rtems_rtl_unresolved_iterate (rtems_rtl_unresolved_iterator iterator, void *data) |
| 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) |
| void | rtems_rtl_unresolved_resolve (void) |
| bool | rtems_rtl_trampoline_add (rtems_rtl_obj *obj, const uint16_t flags, const uint16_t sect, const rtems_rtl_word symvalue, const rtems_rtl_word *rel) |
| void | rtems_rtl_trampoline_remove (rtems_rtl_obj *obj) |
| void | rtems_rtl_unresolved_dump (void) |
| void | rtems_rtl_unresolved_set_archive_search (void) |
RTEMS Run-Time Linker Object File Unresolved Relocations Table.
Struct to pass archive relocation data in the iterator.
| typedef struct rtems_rtl_unresolved_dump_data rtems_rtl_unresolved_dump_data |
Struct to pass relocation data in the iterator.
| typedef struct rtems_rtl_unresolved_reloc_data rtems_rtl_unresolved_reloc_data |
Struct to pass relocation data in the iterator.
| bool rtems_rtl_trampoline_add | ( | rtems_rtl_obj * | obj, |
| const uint16_t | flags, | ||
| const uint16_t | sect, | ||
| const rtems_rtl_word | symvalue, | ||
| const rtems_rtl_word * | rel | ||
| ) |
Add a relocation to the list of trampolinr relocations.
| obj | The object table the relocation record is for. |
| flags | Format specific flags. |
| sect | The target section number the relocation references. |
| symvalue | The symbol's value. |
| rel | The format specific relocation data. |
| true | The relocation has been added. |
| false | The relocation could not be added. |
| void rtems_rtl_trampoline_remove | ( | rtems_rtl_obj * | obj | ) |
Remove the relocation records for an object file.
| obj | The object table the symbols are for. |
| 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 | ||
| ) |
Add a relocation to the list of unresolved relocations.
| unresolved | The unresolved symbol table. |
| obj | The object table the symbols are for. |
| flags | Format specific flags. |
| name | The symbol name the relocation references. |
| sect | The target section number the relocation references. |
| rel | The format specific relocation data. |
| true | The relocation has been added. |
| false | The relocation could not be added. |
| void rtems_rtl_unresolved_dump | ( | void | ) |
Dump the RTL unresolved data.
| bool rtems_rtl_unresolved_iterate | ( | rtems_rtl_unresolved_iterator | iterator, |
| void * | data | ||
| ) |
Iterate over the table of unresolved entries.
| void rtems_rtl_unresolved_resolve | ( | void | ) |
Resolve the unresolved symbols.
| void rtems_rtl_unresolved_set_archive_search | ( | void | ) |
Set all symbols to be archive searchable. This is done when the available archives have been refreshed and there are new archives to search for.
| void rtems_rtl_unresolved_table_close | ( | rtems_rtl_unresolved * | unresolved | ) |
Close the table and erase the blocks.
| unreolved | Close the unresolved table. |
| bool rtems_rtl_unresolved_table_open | ( | rtems_rtl_unresolved * | unresolved, |
| size_t | block_records | ||
| ) |
Open an unresolved relocation table.
| unresolv | The unresolved table to open. |
| block_records | The number of records per block allocated. |
| true | The table is open. |
| false | The unresolved relocation table could not created. The RTL error has the error. |