diff options
Diffstat (limited to 'gold/merge.h')
-rw-r--r-- | gold/merge.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gold/merge.h b/gold/merge.h index 70fe6b7..a28ff42 100644 --- a/gold/merge.h +++ b/gold/merge.h @@ -209,10 +209,16 @@ class Output_merge_string : public Output_merge_base this->stringpool_.set_no_zero_null(); } + protected: // Add an input section. bool do_add_input_section(Relobj* object, unsigned int shndx); + // Do all the final processing after the input sections are read in. + // Returns the final data size. + off_t + finalize_merged_data(); + // Set the final data size. void set_final_data_size(); @@ -221,6 +227,16 @@ class Output_merge_string : public Output_merge_base void do_write(Output_file*); + // Writes the stringpool to a buffer. + void + stringpool_to_buffer(char* buffer, size_t buffer_size) + { this->stringpool_.write_to_buffer(buffer, buffer_size); } + + // Clears all the data in the stringpool, to save on memory. + void + clear_stringpool() + { stringpool_.clear(); } + private: // As we see input sections, we build a mapping from object, section // index and offset to strings. |