This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch][gold][arm]Support IFUNC


> This patch adds IFUNC support for arm gold backend, which is a
> required feature in chromeos  arm development work.

+  // Unlike aarch64, which records symbol value in "addend" field of
relocations
+  // and could be done at the same time an IRelative reloc is created for the
+  // symbol, arm puts the symbol value into "GOT" table, which, however, is
+  // issued later in Output_data_plt_arm::do_write(). So we have a struct here
+  // to keep necessary symbol information for later use in do_write. We usually
+  // have only a very limited number of ifuncs, so the extra data required here
+  // is also limited.
+
+   struct IRelative_data
+  {

"struct" is indented one space too many.

   // Set the final size.
   void
   set_final_data_size()
   {
     this->set_data_size(this->first_plt_entry_offset()
+                       + (this->count_ + this->irelative_count_)
+                       * this->get_plt_entry_size());
  }

Please add another pair of parentheses around the multiplication
expression, and indent the "*" accordingly.

This is OK with those changes. Thanks!

-cary


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]