summaryrefslogtreecommitdiff
path: root/bfd/elfxx-loongarch.h
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/elfxx-loongarch.h')
-rw-r--r--bfd/elfxx-loongarch.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/bfd/elfxx-loongarch.h b/bfd/elfxx-loongarch.h
index 13699beed01..8ea63d03fa5 100644
--- a/bfd/elfxx-loongarch.h
+++ b/bfd/elfxx-loongarch.h
@@ -29,3 +29,13 @@ loongarch_reloc_type_lookup (bfd *abfd, bfd_reloc_code_real_type code);
extern reloc_howto_type *
loongarch_reloc_name_lookup (bfd *abfd ATTRIBUTE_UNUSED, const char *r_name);
+
+bool loongarch_adjust_reloc_bitsfield (reloc_howto_type *howto, bfd_vma *fix_val);
+
+/* TRUE if this is a PLT reference to a local IFUNC. */
+#define PLT_LOCAL_IFUNC_P(INFO, H) \
+ ((H)->dynindx == -1 \
+ || ((bfd_link_executable (INFO) \
+ || ELF_ST_VISIBILITY ((H)->other) != STV_DEFAULT) \
+ && (H)->def_regular \
+ && (H)->type == STT_GNU_IFUNC))