1
0
Fork 0
forked from len0rd/rockbox

sbtools: elf library can now load global symbols

Change-Id: I4d9f38ce31e65542d6ab192158bff52b6fad8f09
This commit is contained in:
Amaury Pouly 2013-08-04 15:04:06 +02:00
parent e4c9eaa7e8
commit f72617c002
3 changed files with 171 additions and 35 deletions

View file

@ -61,6 +61,23 @@ struct elf_segment_t
struct elf_segment_t *next;
};
enum elf_symbol_type_t
{
ESYT_NOTYPE,
ESYT_OBJECT,
ESYT_FUNC,
};
struct elf_symbol_t
{
char *name;
uint32_t addr;
uint32_t size;
enum elf_symbol_type_t type;
char *section;
struct elf_symbol_t *next;
};
struct elf_params_t
{
bool has_start_addr;
@ -69,6 +86,8 @@ struct elf_params_t
struct elf_section_t *last_section;
struct elf_segment_t *first_segment;
struct elf_segment_t *last_segment;
struct elf_symbol_t *first_symbol;
struct elf_symbol_t *last_symbol;
};
typedef bool (*elf_read_fn_t)(void *user, uint32_t addr, void *buf, size_t count);