From 2c38800bbe0544830863247a23594e37c531be8d Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Sat, 12 Nov 2016 23:16:07 +0800 Subject: Allow to get sym attr and fail if no entry Change alloc_sym_attr into get_sym_attr and add a parameter to control whether to allocate a new symattr structure or return NULL if symbol is not found; --- tcc.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'tcc.h') diff --git a/tcc.h b/tcc.h index f0cad40..3010bb9 100644 --- a/tcc.h +++ b/tcc.h @@ -570,6 +570,7 @@ typedef struct ASMOperand { } ASMOperand; #endif +/* extra symbol attributes (not in symbol table) */ struct sym_attr { unsigned long got_offset; unsigned long plt_offset; @@ -708,8 +709,6 @@ struct TCCState { /* got & plt handling */ Section *got; Section *plt; - struct sym_attr *sym_attrs; - int nb_sym_attrs; /* give the correspondance from symtab indexes to dynsym indexes */ int *symtab_to_dynsym; @@ -719,6 +718,9 @@ struct TCCState { Section *dynsym; /* copy of the gobal symtab_section variable */ Section *symtab; + /* extra attributes (eg. GOT/PLT value) for symtab symbols */ + struct sym_attr *sym_attrs; + int nb_sym_attrs; /* tiny assembler state */ Sym *asm_labels; -- cgit v1.3.1