diff options
author | Ian Lance Taylor <iant@google.com> | 2008-02-12 00:28:48 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2008-02-12 00:28:48 +0000 |
commit | dceae3c154edcb9aada9f94452a72548a82914f5 (patch) | |
tree | b9fb771a92a28b7047bdea1b9e2104e8d6b82f73 /gold/object.h | |
parent | 709d67f15ab46ff1d18da0e2c2c7dcea140155a5 (diff) | |
download | gdb-dceae3c154edcb9aada9f94452a72548a82914f5.zip gdb-dceae3c154edcb9aada9f94452a72548a82914f5.tar.gz gdb-dceae3c154edcb9aada9f94452a72548a82914f5.tar.bz2 |
Support dynamic relocations against local section symbols.
Diffstat (limited to 'gold/object.h')
-rw-r--r-- | gold/object.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/gold/object.h b/gold/object.h index 36a2e1f..4011bdc 100644 --- a/gold/object.h +++ b/gold/object.h @@ -874,6 +874,7 @@ class Symbol_value void set_needs_output_dynsym_entry() { + gold_assert(!this->is_section_symbol()); this->output_dynsym_index_ = 0; } @@ -897,7 +898,8 @@ class Symbol_value unsigned int output_dynsym_index() const { - gold_assert(this->output_dynsym_index_ != 0); + gold_assert(this->output_dynsym_index_ != 0 + && this->output_dynsym_index_ != -1U); return this->output_dynsym_index_; } @@ -924,7 +926,10 @@ class Symbol_value // Record that this is a section symbol. void set_is_section_symbol() - { this->is_section_symbol_ = true; } + { + gold_assert(!this->needs_output_dynsym_entry()); + this->is_section_symbol_ = true; + } // Record that this is a TLS symbol. void |