| Index: gold/target.h
|
| ===================================================================
|
| --- a/gold/target.h
|
| +++ b/gold/target.h
|
| @@ -60,6 +60,7 @@
|
| class Output_section;
|
| class Input_objects;
|
| class Task;
|
| +class Output_data_dynamic;
|
|
|
| // The abstract class for target specific handling.
|
|
|
| @@ -203,6 +204,11 @@
|
| Symbol_table* symtab)
|
| { return this->do_finalize_sections(layout, input_objects, symtab); }
|
|
|
| + // Fix data that are known after finalize_sections for MIPS (and possible
|
| + // some other architectures).
|
| + void fix_sections(Layout* layout, Symbol_table* symtab)
|
| + { return this->do_fix_sections(layout, symtab); }
|
| +
|
| // Return the value to use for a global symbol which needs a special
|
| // value in the dynamic symbol table. This will only be called if
|
| // the backend first calls symbol->set_needs_dynsym_value().
|
| @@ -235,6 +241,11 @@
|
| is_local_label_name(const char* name) const
|
| { return this->do_is_local_label_name(name); }
|
|
|
| + // Get the value for target specific dynamic tags.
|
| + unsigned int
|
| + dynamic_tag_value(elfcpp::DT tag) const
|
| + { return this->do_dynamic_tag_value(tag); }
|
| +
|
| // Get the symbol index to use for a target specific reloc.
|
| unsigned int
|
| reloc_symbol_index(void* arg, unsigned int type) const
|
| @@ -467,6 +478,11 @@
|
| { }
|
|
|
| // Virtual function which may be implemented by the child class.
|
| + virtual void
|
| + do_fix_sections(Layout*, Symbol_table*)
|
| + { }
|
| +
|
| + // Virtual function which may be implemented by the child class.
|
| virtual uint64_t
|
| do_dynsym_value(const Symbol*) const
|
| { gold_unreachable(); }
|
| @@ -495,6 +511,12 @@
|
| do_is_local_label_name(const char*) const;
|
|
|
| // Virtual function that must be overridden by a target which uses
|
| + // target specific dynamic tags.
|
| + virtual unsigned int
|
| + do_dynamic_tag_value(elfcpp::DT) const
|
| + { gold_unreachable(); }
|
| +
|
| + // Virtual function that must be overridden by a target which uses
|
| // target specific relocations.
|
| virtual unsigned int
|
| do_reloc_symbol_index(void*, unsigned int) const
|
|
|