aboutsummaryrefslogtreecommitdiff
path: root/gold/layout.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2009-12-30 04:16:50 +0000
committerIan Lance Taylor <ian@airs.com>2009-12-30 04:16:50 +0000
commitf0ba79e29c2b6fd25f66a9c1050cd09f6e069513 (patch)
tree1ec764143ef6cb7574263ece9fe15dee60bf1c70 /gold/layout.h
parente8cd95c71e5a6ea455f60d6428a34c621d11d3bf (diff)
downloadgdb-f0ba79e29c2b6fd25f66a9c1050cd09f6e069513.zip
gdb-f0ba79e29c2b6fd25f66a9c1050cd09f6e069513.tar.gz
gdb-f0ba79e29c2b6fd25f66a9c1050cd09f6e069513.tar.bz2
PR 10450
* layout.cc (Layout::Layout): Initialize dynamic_symbol_ field. (Layout::create_initial_dynamic_sections): Set dynamic_symbol_. (Layout::finalize): Call set_dynamic_symbol_size. (Layout::set_dynamic_symbol_size): New function. * layout.h (class Layout): Add dynamic_symbol_ field. Declare set_dynamic_symbol_size.
Diffstat (limited to 'gold/layout.h')
-rw-r--r--gold/layout.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gold/layout.h b/gold/layout.h
index 71afa96..0437cf1 100644
--- a/gold/layout.h
+++ b/gold/layout.h
@@ -708,6 +708,10 @@ class Layout
void
finish_dynamic_section(const Input_objects*, const Symbol_table*);
+ // Set the size of the _DYNAMIC symbol.
+ void
+ set_dynamic_symbol_size(const Symbol_table*);
+
// Create the .interp section and PT_INTERP segment.
void
create_interp(const Target* target);
@@ -947,6 +951,8 @@ class Layout
Output_symtab_xindex* dynsym_xindex_;
// The SHT_DYNAMIC output section if there is one.
Output_section* dynamic_section_;
+ // The _DYNAMIC symbol if there is one.
+ Symbol* dynamic_symbol_;
// The dynamic data which goes into dynamic_section_.
Output_data_dynamic* dynamic_data_;
// The exception frame output section if there is one.