aboutsummaryrefslogtreecommitdiff
path: root/gold/layout.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2008-02-28 04:45:47 +0000
committerIan Lance Taylor <iant@google.com>2008-02-28 04:45:47 +0000
commit919ed24cbc56717156ee86a754281cc08919d2ba (patch)
tree87151a758daf5709e798f285c607fb459b72523b /gold/layout.h
parent15cf077ef4df71bb31c803ed9cf94d8ccdb72dc5 (diff)
downloadbinutils-919ed24cbc56717156ee86a754281cc08919d2ba.zip
binutils-919ed24cbc56717156ee86a754281cc08919d2ba.tar.gz
binutils-919ed24cbc56717156ee86a754281cc08919d2ba.tar.bz2
Don't check assertions until symbols are finalized. Create an output
section if the script uses a data statement with no input sections. Don't create a loadable segment for the headers if there is no room.
Diffstat (limited to 'gold/layout.h')
-rw-r--r--gold/layout.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/gold/layout.h b/gold/layout.h
index 658eb1e..d1caa2c 100644
--- a/gold/layout.h
+++ b/gold/layout.h
@@ -168,6 +168,11 @@ class Layout
void
define_section_symbols(Symbol_table*);
+ // Create sections for linker scripts.
+ void
+ create_script_sections()
+ { this->script_options_->create_script_sections(this); }
+
// Define symbols from any linker script.
void
define_script_symbols(Symbol_table* symtab)
@@ -314,6 +319,10 @@ class Layout
void
get_allocated_sections(Section_list*) const;
+ // Make a section for a linker script to hold data.
+ Output_section*
+ make_output_section_for_script(const char* name);
+
// Make a segment. This is used by the linker script code.
Output_segment*
make_output_segment(elfcpp::Elf_Word type, elfcpp::Elf_Word flags);