aboutsummaryrefslogtreecommitdiff
path: root/gold/arm-reloc-property.h
diff options
context:
space:
mode:
Diffstat (limited to 'gold/arm-reloc-property.h')
-rw-r--r--gold/arm-reloc-property.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/gold/arm-reloc-property.h b/gold/arm-reloc-property.h
index 2d88211..349d862 100644
--- a/gold/arm-reloc-property.h
+++ b/gold/arm-reloc-property.h
@@ -293,6 +293,25 @@ class Arm_reloc_property_table
return this->table_[code];
}
+ // Like get_reloc_property but only return non-NULL if relocation code is
+ // static and implemented.
+ const Arm_reloc_property*
+ get_implemented_static_reloc_property(unsigned int code) const
+ {
+ gold_assert(code < Property_table_size);
+ const Arm_reloc_property* arp = this->table_[code];
+ return ((arp != NULL
+ && (arp->reloc_type() == Arm_reloc_property::RT_STATIC)
+ && arp->is_implemented())
+ ? arp
+ : NULL);
+ }
+
+ // Return a string describing the a relocation code that is not
+ // an implemented static reloc code.
+ std::string
+ reloc_name_in_error_message(unsigned int code);
+
private:
// Copying is not allowed.
Arm_reloc_property_table(const Arm_reloc_property_table&);