aboutsummaryrefslogtreecommitdiff
path: root/gold/symtab.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2008-02-04 05:43:05 +0000
committerIan Lance Taylor <iant@google.com>2008-02-04 05:43:05 +0000
commita445fddf828b0e8251fbdce91bc9372e7efd24f0 (patch)
tree6af0ee8254a9432643798126eef663603d92eb08 /gold/symtab.h
parentd16c732117ed4b752abd51dd1598c9cec9d2b26c (diff)
downloadgdb-a445fddf828b0e8251fbdce91bc9372e7efd24f0.zip
gdb-a445fddf828b0e8251fbdce91bc9372e7efd24f0.tar.gz
gdb-a445fddf828b0e8251fbdce91bc9372e7efd24f0.tar.bz2
Fully implement the SECTIONS clause.
Diffstat (limited to 'gold/symtab.h')
-rw-r--r--gold/symtab.h16
1 files changed, 12 insertions, 4 deletions
diff --git a/gold/symtab.h b/gold/symtab.h
index 73b0cb7..b60256e 100644
--- a/gold/symtab.h
+++ b/gold/symtab.h
@@ -552,6 +552,10 @@ class Symbol
return true;
}
+ // Return whether this symbol currently has an absolute value.
+ bool
+ value_is_absolute() const;
+
// Return whether there should be a warning for references to this
// symbol.
bool
@@ -1053,13 +1057,17 @@ class Symbol_table
elfcpp::STB binding, elfcpp::STV visibility,
unsigned char nonvis, bool only_if_ref);
- // Define a set of symbols in output sections.
+ // Define a set of symbols in output sections. If ONLY_IF_REF is
+ // true, only define them if they are referenced.
void
- define_symbols(const Layout*, int count, const Define_symbol_in_section*);
+ define_symbols(const Layout*, int count, const Define_symbol_in_section*,
+ bool only_if_ref);
- // Define a set of symbols in output segments.
+ // Define a set of symbols in output segments. If ONLY_IF_REF is
+ // true, only defined them if they are referenced.
void
- define_symbols(const Layout*, int count, const Define_symbol_in_segment*);
+ define_symbols(const Layout*, int count, const Define_symbol_in_segment*,
+ bool only_if_ref);
// Define SYM using a COPY reloc. POSD is the Output_data where the
// symbol should be defined--typically a .dyn.bss section. VALUE is