From eb97d02405c08bd0c006c8d65b3649fbfb1148e0 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Sat, 11 Dec 2021 14:52:36 +1030 Subject: [GOLD] PowerPC64 @notoc in non-power10 code Gold version of commit 7aba54da42. elfcpp/ * powerpc.h (R_PPC64_REL24_P9NOTOC): Define. gold/ * powerpc.cc (Target_powerpc::maybe_skip_tls_get_addr_call, is_branch_reloc, max_branch_delta): Handle R_PPC64_REL24_P9NOTOC. (Target_powerpc::Branch_info::make_stub): Likewise. (struct Plt_stub_ent): Add p9notoc_, p9off_, tsize_. (struct Branch_stub_ent): Add p9notoc_, p9off_. (Stub_table::add_plt_call_entry): Handle R_PPC64_REL24_P9NOTOC. (Stub_table::add_long_branch_entry): Likewise. (Stub_table::add_eh_frame): Likewise. (Stub_table::plt_call_size): Return aligned size. Adjust callers. Handle p9notoc_ sizing. (Stub_table::do_write): Write out p9notoc_ stubs. (Target_powerpc::Scan::get_reference_flags, local, global): Handle R_PPC64_REL24_P9NOTOC. (Target_powerpc::Relocate::relocate): Likewise. --- elfcpp/powerpc.h | 1 + 1 file changed, 1 insertion(+) (limited to 'elfcpp/powerpc.h') diff --git a/elfcpp/powerpc.h b/elfcpp/powerpc.h index b17777b..3f4f79d 100644 --- a/elfcpp/powerpc.h +++ b/elfcpp/powerpc.h @@ -184,6 +184,7 @@ enum R_PPC64_PLTSEQ_NOTOC = 121, R_PPC64_PLTCALL_NOTOC = 122, R_PPC64_PCREL_OPT = 123, + R_PPC64_REL24_P9NOTOC = 124, R_PPC64_D34 = 128, R_PPC64_D34_LO = 129, -- cgit v1.1