Lines Matching defs:target

1 // aarch64.cc -- aarch64 target support for gold.
39 #include "target.h"
40 #include "target-reloc.h"
41 #include "target-select.h"
925 // stubs can be shared because they're used to reach a specific target, whereas
1171 AArch64_address target);
1274 // Otherwise, it points to a relobj. We used the unsized and target
1350 // A class to hold stubs for the ARM target. This contains 2 different types of
2052 // adrp - final value transferred to target register is calculated as:
2056 // adr -final value transferred to target register is calucalted as:
2108 The_target_aarch64* target = The_target_aarch64::current_target();
2113 target->find_aarch64_input_section(this, i);
2135 stub_table->relocate_reloc_stubs(&relinfo, target, os, view, address,
2231 The_target_aarch64* target)
2282 target->scan_erratum_843419_span(
2287 target->scan_erratum_835769_span(
2300 The_target_aarch64* target,
2330 scan_errata(i, shdr, out_sections[i], symtab, target);
2369 target->scan_section_for_stubs(&relinfo, sh_type, prelocs,
2629 The_target_aarch64* target,
2645 target->new_aarch64_input_section(owner->relobj(), owner->shndx());
2651 target->new_stub_table(input_section);
2685 Target_aarch64<size, big_endian>* target,
2730 target, new_relaxed_sections,
2754 target, new_relaxed_sections, task);
2792 target, new_relaxed_sections, task);
2813 // The aarch64 target class.
2946 // Return the symbol index to use for a target specific relocation.
2947 // The only target specific relocation is R_AARCH64_TLSDESC for a
2956 // Return the addend to use for a target specific relocation.
3033 // Get the default AArch64 target.
3037 gold_assert(parameters->target().machine_code() == elfcpp::EM_AARCH64
3038 && parameters->target().get_size() == size
3039 && parameters->target().is_big_endian() == big_endian);
3145 local(Symbol_table* symtab, Layout* layout, Target_aarch64* target,
3154 global(Symbol_table* symtab, Layout* layout, Target_aarch64* target,
3397 // Information about this specific target which we pass to the
3413 // This type is used as the argument to the target specific
3414 // relocation routines. The only target specific reloc is
3449 // We handle R_AARCH64_TLSDESC against a local symbol as a target
3714 // to use a target-specific sub-class of Sized_relobj_file<size, big_endian> to
3922 // Currently we cannot handle a branch to a target in
6003 Target_aarch64<size, big_endian>* target,
6022 target->make_local_ifunc_plt_entry(symtab, layout, object, r_sym);
6043 Reloc_section* rela_dyn = target->rela_dyn_section(layout);
6065 target->got_section(symtab, layout);
6073 target->rela_dyn_section(layout)->
6136 target->got_section(symtab, layout);
6138 target->rela_dyn_section(layout),
6145 target->got_section(symtab, layout);
6170 target->got_section(symtab, layout);
6173 target->rela_dyn_section(layout),
6203 target->got_mod_index_entry(symtab, layout, object);
6222 target->define_tls_base_symbol(symtab, layout);
6226 target->reserve_tlsdesc_entries(symtab, layout);
6232 target->got_section(symtab, layout);
6234 target->got_tlsdesc_section();
6242 Reloc_section* rt = target->rela_tlsdesc_section(layout);
6245 // to the target specific routines.
6246 uintptr_t intarg = target->add_tlsdesc_info(object, r_sym);
6284 Target_aarch64<size, big_endian>* target,
6295 target->make_plt_entry(symtab, layout, gsym);
6315 target->make_plt_entry(symtab, layout, gsym);
6329 target->copy_reloc(symtab, layout, object,
6343 target->rela_irelative_section(layout);
6354 Reloc_section* rela_dyn = target->rela_dyn_section(layout);
6368 rela_dyn = target->rela_dyn_section(layout);
6383 target->make_plt_entry(symtab, layout, gsym);
6416 target->make_plt_entry(symtab, layout, gsym);
6423 target->copy_reloc(symtab, layout, object,
6438 target->got_section(symtab, layout);
6451 Reloc_section* rela_dyn = target->rela_dyn_section(layout);
6516 target->make_plt_entry(symtab, layout, gsym);
6534 target->got_section(symtab, layout);
6537 target->rela_dyn_section(layout),
6551 target->got_mod_index_entry(symtab, layout, object);
6575 = target->got_section(symtab, layout);
6580 target->rela_dyn_section(layout),
6614 target->define_tls_base_symbol(symtab, layout);
6620 target->reserve_tlsdesc_entries(symtab, layout);
6626 target->got_section(symtab, layout);
6628 target->got_tlsdesc_section();
6629 Reloc_section* rt = target->rela_tlsdesc_section(layout);
6637 = target->got_section(symtab, layout);
6639 target->rela_dyn_section(layout),
6929 Target_aarch64<size, big_endian>* target,
6966 symval.set_output_value(target->plt_address_for_global(gsym));
6974 symval.set_output_value(target->plt_address_for_local(object, r_sym));
6985 int got_base = (target->got_ != NULL
6986 ? (target->got_->current_data_size() >= 0x8000
7147 target->stub_group_size_))
7158 value = target->got_->address() + got_base + got_offset;
7164 value = target->got_->address() + got_base + got_offset;
7172 value = target->got_->address() + got_base + got_offset + addend -
7173 Reloc::Page(target->got_->address() + got_base);
7204 reloc_status = relocate_tls(relinfo, target, relnum, rela, r_type,
7261 Target_aarch64<size, big_endian>* target,
7299 return tls_gd_to_le(relinfo, target, rela, r_type, view,
7310 got_entry_address = target->got_->address() +
7318 got_entry_address = target->got_->address() +
7357 return this->tls_ld_to_le(relinfo, target, rela, r_type, view,
7365 got_entry_address = (target->got_mod_index_entry(NULL, NULL, NULL) +
7366 target->got_->address());
7433 return tls_ie_to_le(relinfo, target, rela, r_type, view,
7443 got_entry_address = target->got_->address() +
7451 got_entry_address = target->got_->address() +
7486 align_address(target->tcb_size(),
7524 return tls_desc_gd_to_le(relinfo, target, rela, r_type,
7539 got_tlsdesc_offset = (target->got_->data_size()
7540 + target->got_plt_section()->data_size());
7546 got_entry_address = target->got_->address()
7555 got_entry_address = target->got_->address() +
7561 return tls_desc_gd_to_ie(relinfo, target, rela, r_type,
7602 Target_aarch64<size, big_endian>* target,
7666 align_address(target->tcb_size(), tls_segment->maximum_alignment());
7702 Target_aarch64<size, big_endian>* target,
7766 align_address(target->tcb_size(), tls_segment->maximum_alignment());
7802 Target_aarch64<size, big_endian>* target,
7815 align_address(target->tcb_size(), tls_segment->maximum_alignment());
7857 Target_aarch64<size, big_endian>* target,
7886 align_address(target->tcb_size(), tls_segment->maximum_alignment());
7930 Target_aarch64<size, big_endian>* /* target */,
7974 // Set ldr target register to be x0.