// s390.cc -- s390 target support for gold.
-// Copyright (C) 2015-2016 Free Software Foundation, Inc.
+// Copyright (C) 2015-2022 Free Software Foundation, Inc.
// Written by Marcin KoĆcielnicki <koriakin@0x04.net>.
// This file is part of gold.
int64_t
do_tls_offset_for_local(const Relobj* object,
unsigned int symndx,
- unsigned int got_indx) const;
+ Output_data_got_base* got,
+ unsigned int got_indx,
+ uint64_t addend) const;
// Return the offset to use for the GOT_INDX'th got entry which is
// for global tls symbol GSYM.
int64_t
- do_tls_offset_for_global(Symbol* gsym, unsigned int got_indx) const;
+ do_tls_offset_for_global(Symbol* gsym,
+ Output_data_got_base* got,
+ unsigned int got_indx,
+ uint64_t addend) const;
// This function should be defined in targets that can use relocation
// types to determine (implemented in local_reloc_may_be_function_pointer
NULL, // attributes_vendor
"_start", // entry_symbol_name
32, // hash_entry_size
+ elfcpp::SHT_PROGBITS, // unwind_section_type
};
template<>
NULL, // attributes_vendor
"_start", // entry_symbol_name
64, // hash_entry_size
+ elfcpp::SHT_PROGBITS, // unwind_section_type
};
template<int size>
Target_s390<size>::do_tls_offset_for_local(
const Relobj*,
unsigned int,
- unsigned int) const
+ Output_data_got_base*,
+ unsigned int,
+ uint64_t) const
{
// The only way we can get called is when IEENT/GOTIE12/GOTIE20
// couldn't be optimised to LE.
int64_t
Target_s390<size>::do_tls_offset_for_global(
Symbol*,
- unsigned int) const
+ Output_data_got_base*,
+ unsigned int,
+ uint64_t) const
{
Output_segment* tls_segment = layout_->tls_segment();
return -tls_segment->memsz();