summaryrefslogtreecommitdiff
path: root/gold/layout.h
diff options
context:
space:
mode:
Diffstat (limited to 'gold/layout.h')
-rw-r--r--gold/layout.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/gold/layout.h b/gold/layout.h
index a7908925149..12f703f70c1 100644
--- a/gold/layout.h
+++ b/gold/layout.h
@@ -270,6 +270,11 @@ class Layout
Output_segment*
find_first_load_seg();
+ // Count the local symbols in the regular symbol table and the dynamic
+ // symbol table, and build the respective string pools.
+ void
+ count_local_symbols(const Input_objects*);
+
// Create the output sections for the symbol table.
void
create_symtab_sections(const Input_objects*, Symbol_table*, off_t*);
@@ -284,11 +289,16 @@ class Layout
// Create the dynamic symbol table.
void
- create_dynamic_symtab(const Target*, Symbol_table*, Output_section** pdynstr,
+ create_dynamic_symtab(const Input_objects*, const Target*,
+ Symbol_table*, Output_section** pdynstr,
unsigned int* plocal_dynamic_count,
std::vector<Symbol*>* pdynamic_symbols,
Versions* versions);
+ // Assign offsets to each local portion of the dynamic symbol table.
+ void
+ assign_local_dynsym_offsets(const Input_objects*);
+
// Finish the .dynamic section and PT_DYNAMIC segment.
void
finish_dynamic_section(const Input_objects*, const Symbol_table*);