+ typedef Relocate_functions<size, big_endian> This;
+
+ public:
+ // Do a simple 8-bit REL relocation with the addend in the section
+ // contents.
+ static inline void
+ rel8(unsigned char* view, Address value)
+ { This::template rel<8>(view, value, CHECK_NONE); }
+
+ static inline Reloc_status
+ rel8_check(unsigned char* view, Address value, Overflow_check check)
+ { return This::template rel<8>(view, value, check); }
+
+ static inline void
+ rel8(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval)
+ { This::template rel<8>(view, object, psymval, CHECK_NONE); }
+
+ static inline Reloc_status
+ rel8_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Overflow_check check)
+ { return This::template rel<8>(view, object, psymval, check); }
+
+ // Do an 8-bit RELA relocation with the addend in the relocation.
+ static inline void
+ rela8(unsigned char* view, Address value, Addendtype addend)
+ { This::template rela<8>(view, value, addend, CHECK_NONE); }
+
+ static inline Reloc_status
+ rela8_check(unsigned char* view, Address value, Addendtype addend,
+ Overflow_check check)
+ { return This::template rela<8>(view, value, addend, check); }
+
+ static inline void
+ rela8(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend)
+ { This::template rela<8>(view, object, psymval, addend, CHECK_NONE); }
+
+ static inline Reloc_status
+ rela8_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend,
+ Overflow_check check)
+ { return This::template rela<8>(view, object, psymval, addend, check); }
+
+ // Do a simple 8-bit PC relative relocation with the addend in the
+ // section contents.
+ static inline void
+ pcrel8(unsigned char* view, unsigned char value, Address address)
+ { This::template pcrel<8>(view, value, address, CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrel8_check(unsigned char* view, unsigned char value, Address address,
+ Overflow_check check)
+ { return This::template pcrel<8>(view, value, address, check); }
+
+ static inline void
+ pcrel8(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Address address)
+ { This::template pcrel<8>(view, object, psymval, address, CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrel8_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Address address,
+ Overflow_check check)
+ { return This::template pcrel<8>(view, object, psymval, address, check); }
+
+ // Do a simple 8-bit PC relative RELA relocation with the addend in
+ // the reloc.
+ static inline void
+ pcrela8(unsigned char* view, Address value, Addendtype addend,
+ Address address)
+ { This::template pcrela<8>(view, value, addend, address, CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrela8_check(unsigned char* view, Address value, Addendtype addend,
+ Address address, Overflow_check check)
+ { return This::template pcrela<8>(view, value, addend, address, check); }
+
+ static inline void
+ pcrela8(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend,
+ Address address)
+ { This::template pcrela<8>(view, object, psymval, addend, address,
+ CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrela8_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend,
+ Address address,
+ Overflow_check check)
+ { return This::template pcrela<8>(view, object, psymval, addend, address,
+ check); }
+
+ // Do a simple 16-bit REL relocation with the addend in the section
+ // contents.
+ static inline void
+ rel16(unsigned char* view, Address value)
+ { This::template rel<16>(view, value, CHECK_NONE); }
+
+ static inline Reloc_status
+ rel16_check(unsigned char* view, Address value, Overflow_check check)
+ { return This::template rel<16>(view, value, check); }
+
+ static inline void
+ rel16(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval)
+ { This::template rel<16>(view, object, psymval, CHECK_NONE); }
+
+ static inline Reloc_status
+ rel16_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Overflow_check check)
+ { return This::template rel<16>(view, object, psymval, check); }
+
+ // Do an 16-bit RELA relocation with the addend in the relocation.
+ static inline void
+ rela16(unsigned char* view, Address value, Addendtype addend)
+ { This::template rela<16>(view, value, addend, CHECK_NONE); }
+
+ static inline Reloc_status
+ rela16_check(unsigned char* view, Address value, Addendtype addend,
+ Overflow_check check)
+ { return This::template rela<16>(view, value, addend, check); }
+
+ static inline void
+ rela16(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend)
+ { This::template rela<16>(view, object, psymval, addend, CHECK_NONE); }
+
+ static inline Reloc_status
+ rela16_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend,
+ Overflow_check check)
+ { return This::template rela<16>(view, object, psymval, addend, check); }
+
+ // Do a simple 16-bit PC relative REL relocation with the addend in
+ // the section contents.
+ static inline void
+ pcrel16(unsigned char* view, Address value, Address address)
+ { This::template pcrel<16>(view, value, address, CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrel16_check(unsigned char* view, Address value, Address address,
+ Overflow_check check)
+ { return This::template pcrel<16>(view, value, address, check); }
+
+ static inline void
+ pcrel16(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Address address)
+ { This::template pcrel<16>(view, object, psymval, address, CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrel16_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Address address,
+ Overflow_check check)
+ { return This::template pcrel<16>(view, object, psymval, address, check); }
+
+ // Do a simple 16-bit PC relative RELA relocation with the addend in
+ // the reloc.
+ static inline void
+ pcrela16(unsigned char* view, Address value, Addendtype addend,
+ Address address)
+ { This::template pcrela<16>(view, value, addend, address, CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrela16_check(unsigned char* view, Address value, Addendtype addend,
+ Address address, Overflow_check check)
+ { return This::template pcrela<16>(view, value, addend, address, check); }
+
+ static inline void
+ pcrela16(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend,
+ Address address)
+ { This::template pcrela<16>(view, object, psymval, addend, address,
+ CHECK_NONE); }
+
+ static inline Reloc_status
+ pcrela16_check(unsigned char* view,
+ const Sized_relobj_file<size, big_endian>* object,
+ const Symbol_value<size>* psymval,
+ Addendtype addend,
+ Address address,
+ Overflow_check check)
+ { return This::template pcrela<16>(view, object, psymval, addend, address,
+ check); }
+