[patch][gold][arm]Support IFUNC
Cary Coutant
ccoutant@google.com
Thu Jan 29 00:14:00 GMT 2015
> 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
More information about the Binutils
mailing list