summaryrefslogtreecommitdiff
path: root/gold/x86_64.cc
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-10-29 08:47:12 -0700
committerH.J. Lu <hjl.tools@gmail.com>2015-10-29 09:26:41 -0700
commit41e83f2b16ec57fb7e163c19fc315c86e4994b2e (patch)
treea122ed8dc81d79368cbda588ef7ba9363ed31f15 /gold/x86_64.cc
parentb10a8bc7de0087b5c509b4b0831e606b56b6702c (diff)
Make GOT entry size target-dependent
The GOT entry size is target-dependent. This patch adds a got_entry_size function to Sized_target class so that a target can provide a value different from default. PR gold/19184 * incremental.cc (Got_plt_view_info): Add got_entry_size. (Local_got_offset_visitor::visit): Replace got_entry_size_ with info_.got_entry_size. (Local_got_offset_visitor::got_entry_size_): Removed. (Global_got_offset_visitor::visit): Replace got_entry_size_ with info_.got_entry_size. (Global_got_offset_visitor::got_entry_size_): Removed. (Output_section_incremental_inputs::write_got_plt): Initialize view_info.got_entry_size. * target.h (Sized_target::got_entry_size): New virtual function. * x86_64.cc (Target_x86_64::got_entry_size): New function.
Diffstat (limited to 'gold/x86_64.cc')
-rw-r--r--gold/x86_64.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/gold/x86_64.cc b/gold/x86_64.cc
index d637b5ef7f..3651d398ff 100644
--- a/gold/x86_64.cc
+++ b/gold/x86_64.cc
@@ -594,6 +594,11 @@ class Target_x86_64 : public Sized_target<size, false>
unsigned int
plt_entry_size() const;
+ // Return the size of each GOT entry.
+ unsigned int
+ got_entry_size() const
+ { return 8; };
+
// Create the GOT section for an incremental update.
Output_data_got_base*
init_got_plt_for_update(Symbol_table* symtab,