binutils-gdb/gas/config
Alan Modra 7aba54da42 PowerPC64 @notoc in non-power10 code
R_PPC64_REL24_P9NOTOC is a variant of R_PPC64_REL24_NOTOC for use on
@notoc cals from non-power10 code in the rare case that using such a
construct is useful.  R_PPC64_REL24_P9NOTOC will be emitted by gas
rather than R_PPC64_REL24_NOTOC when @notoc is used in a branch
instruction if power10 instructions are not enabled at that point.
The new relocation tells the linker to not use power10 instructions on
any stub emitted for that branch, unless overridden by
--power10-stubs=yes.

The current linker heuristic of only generating power10 instructions
for stubs if power10-only relocations are detected, continues to be
used.

include/
	* elf/ppc64.h (R_PPC64_REL24_P9NOTOC): Define.
bfd/
	* reloc.c (BFD_RELOC_PPC64_REL24_P9NOTOC): Define.
	* elf64-ppc.c (ppc64_elf_howto_raw): Add entry for new reloc.
	(ppc64_elf_reloc_type_lookup): Handle it.
	(enum ppc_stub_type): Delete.
	(enum ppc_stub_main_type, ppc_stub_sub_type): New.
	(struct ppc_stub_type): New.
	(struct ppc_stub_hash_entry): Use the above new type.
	(struct ppc_link_hash_table): Update stub_count.
	(is_branch_reloc, ppc64_elf_check_relocs),
	(toc_adjusting_stub_needed): Handle new reloc.
	(stub_hash_newfunc, select_alt_stub, ppc_merge_stub),
	(ppc_type_of_stub, plt_stub_size, build_plt_stub),
	(build_tls_get_addr_head, build_tls_get_addr_tail),
	(ppc_build_one_stub, ppc_size_one_stub, ppc64_elf_size_stubs),
	(ppc64_elf_build_stubs, ppc64_elf_relocate_section): Handle new
	reloc.  Modify stub handling to suit new scheme.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
gas/
	* config/tc-ppc.c (ppc_elf_suffix): When power10 is not enabled
	return BFD_RELOC_PPC64_REL24_P9NOTOC for @notoc.
	(fixup_size, ppc_force_relocation, ppc_fix_adjustable): Handle
	BFD_RELOC_PPC64_REL24_P9NOTOC.
ld/
	* testsuite/ld-powerpc/callstub-2.s: Add .machine power10.
2021-11-15 12:20:13 +10:30
..
atof-ieee.c gas: fold IEEE encoding of -Inf with that of +Inf 2021-08-11 08:36:53 +02:00
atof-vax.c
bfin-aux.h Use bool in gas 2021-03-31 10:49:23 +10:30
bfin-defs.h
bfin-lex-wrapper.c Don't include bfd/sysdep.h for gas files 2021-03-31 23:07:51 +10:30
bfin-lex.l Don't include bfd/sysdep.h for gas files 2021-03-31 23:07:51 +10:30
bfin-parse.y Modernise yyerror 2021-11-06 21:15:49 +10:30
e-crisaout.c
e-criself.c
e-i386aout.c
e-i386coff.c
e-i386elf.c
e-mipself.c
itbl-mips.h
loongarch-lex-wrapper.c LoongArch gas support 2021-10-24 21:36:32 +10:30
loongarch-lex.h LoongArch gas support 2021-10-24 21:36:32 +10:30
loongarch-lex.l LoongArch gas support 2021-10-24 21:36:32 +10:30
loongarch-parse.y LoongArch gas support 2021-10-24 21:36:32 +10:30
m68k-parse.h
m68k-parse.y Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
obj-aout.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
obj-aout.h
obj-coff-seh.c Allow .seh_pushframe to take an optional [code] parameter 2021-04-23 16:33:47 +01:00
obj-coff-seh.h
obj-coff.c Fix .dwsect generation for XCOFF. Handle .function generated with DWARF on XCOFF. 2021-05-07 15:29:49 +01:00
obj-coff.h Fix .dwsect generation for XCOFF. Handle .function generated with DWARF on XCOFF. 2021-05-07 15:29:49 +01:00
obj-ecoff.c Use bool in gas 2021-03-31 10:49:23 +10:30
obj-ecoff.h
obj-elf.c as: Replace the removed symbol with the versioned symbol 2021-08-16 06:46:44 -07:00
obj-elf.h as: Replace the removed symbol with the versioned symbol 2021-08-16 06:46:44 -07:00
obj-evax.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
obj-evax.h
obj-fdpicelf.c
obj-fdpicelf.h
obj-macho.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
obj-macho.h
obj-multi.c
obj-multi.h
obj-som.c Use bool in gas 2021-03-31 10:49:23 +10:30
obj-som.h TRUE/FALSE simplification 2021-03-29 11:22:22 +10:30
rl78-defs.h
rl78-parse.y
rx-defs.h
rx-parse.y Fix a typo in the RX asse,bler. The Double-precision floating-point exception handling control register name is DECNT not DCENT. 2021-08-11 14:01:55 +01:00
tc-aarch64.c aarch64: Enable Cortex-X2 CPU 2021-09-30 21:01:34 +01:00
tc-aarch64.h
tc-alpha.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-alpha.h gas: default TC_VALIDATE_FIX_SUB to 0 2021-07-14 21:52:20 +09:30
tc-arc.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-arc.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-arm.c arm: enable Cortex-A710 CPU 2021-11-10 14:09:05 +00:00
tc-arm.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-avr.c Add a -mno-dollar-line-separator command line option to the AVR assembler. 2021-08-11 10:03:19 +01:00
tc-avr.h Add a -mno-dollar-line-separator command line option to the AVR assembler. 2021-08-11 10:03:19 +01:00
tc-bfin.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-bfin.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-bpf.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-bpf.h
tc-cr16.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-cr16.h
tc-cris.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-cris.h
tc-crx.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-crx.h
tc-csky.c Fix an internal error in the CSKY assembler when asked to resolve an overlarge constant. 2021-08-11 13:49:30 +01:00
tc-csky.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-d10v.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-d10v.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-d30v.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-d30v.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-dlx.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-dlx.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-epiphany.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-epiphany.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-fr30.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-fr30.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-frv.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-frv.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-ft32.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-ft32.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-generic.c
tc-generic.h
tc-h8300.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-h8300.h
tc-hppa.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-hppa.h gas: default TC_VALIDATE_FIX_SUB to 0 2021-07-14 21:52:20 +09:30
tc-i386-intel.c x86: remove pointless 2nd parameter from check_VecOperations() 2021-06-07 12:01:14 +02:00
tc-i386.c x86: Also handle stores for -muse-unaligned-vector-move 2021-10-25 10:38:04 -07:00
tc-i386.h x86: Don't pad .tfloat directive output 2021-08-16 14:40:30 -07:00
tc-ia64.c dwarf2 sub-section test 2021-09-22 10:24:05 +09:30
tc-ia64.h
tc-ip2k.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-ip2k.h
tc-iq2000.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-iq2000.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-lm32.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-lm32.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-loongarch.c LoongArch gas support 2021-10-24 21:36:32 +10:30
tc-loongarch.h LoongArch gas support 2021-10-24 21:36:32 +10:30
tc-m32c.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-m32c.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-m32r.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-m32r.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-m68hc11.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-m68hc11.h
tc-m68k.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-m68k.h
tc-m68851.h
tc-mcore.c Fix potential use on an uninitialised vairable in the MCore assembler. 2021-09-06 10:52:49 +01:00
tc-mcore.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-mep.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-mep.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-metag.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-metag.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-microblaze.c Fix potential uninitialised variable in microblaze assembler code. 2021-09-06 10:47:48 +01:00
tc-microblaze.h gas: default TC_VALIDATE_FIX_SUB to 0 2021-07-14 21:52:20 +09:30
tc-mips.c MIPS: don't use get_symbol_name() for section parsing. With s_change_section() later calling obj_elf_section(), it seems better to pre-parse the section name by the same function that will be used there. This way no differences in what is accepted will result. 2021-09-13 11:02:48 +01:00
tc-mips.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-mmix.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-mmix.h
tc-mn10200.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-mn10200.h
tc-mn10300.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-mn10300.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-moxie.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-moxie.h
tc-msp430.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-msp430.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-mt.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-mt.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-nds32.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-nds32.h Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-nios2.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-nios2.h
tc-ns32k.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-ns32k.h
tc-or1k.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-or1k.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-pdp11.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-pdp11.h
tc-pj.c picojava assembler and disassembler fixes 2021-06-22 17:44:45 +09:30
tc-pj.h
tc-ppc.c PowerPC64 @notoc in non-power10 code 2021-11-15 12:20:13 +10:30
tc-ppc.h PR 28447: implement multiple parameters for .file on XCOFF 2021-11-10 14:43:24 +10:30
tc-pru.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-pru.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-riscv.c RISC-V: Dump objects according to the elf architecture attribute. 2021-11-11 16:59:13 +08:00
tc-riscv.h RISC-V: PR27916, Support mapping symbols. 2021-08-30 17:36:11 +08:00
tc-rl78.c
tc-rl78.h
tc-rx.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-rx.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-s12z.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-s12z.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-s390.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-s390.h
tc-score7.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-score.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-score.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-sh.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-sh.h Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-sparc.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-sparc.h
tc-spu.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-spu.h
tc-tic4x.c Fix typo in previous delta 2021-08-11 08:44:40 +01:00
tc-tic4x.h
tc-tic6x.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-tic6x.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-tic30.c
tc-tic30.h
tc-tic54x.c C99 gas configury 2021-04-05 15:31:25 +09:30
tc-tic54x.h
tc-tilegx.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-tilegx.h
tc-tilepro.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-tilepro.h
tc-v850.c Fix the V850 assembler's generation of relocations for the st.b instruction. 2021-09-02 12:16:10 +01:00
tc-v850.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-vax.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-vax.h
tc-visium.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-visium.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-wasm32.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
tc-wasm32.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-xc16x.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-xc16x.h
tc-xgate.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-xgate.h
tc-xstormy16.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-xstormy16.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-xtensa.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-xtensa.h Use bool in gas 2021-03-31 10:49:23 +10:30
tc-z8k.c Use bool in gas 2021-03-31 10:49:23 +10:30
tc-z8k.h
tc-z80.c as_bad_subtract 2021-07-21 19:35:34 +09:30
tc-z80.h
te-386bsd.h
te-aix5.h
te-aix.h
te-armeabi.h
te-armfbsdeabi.h
te-armfbsdvfp.h
te-armlinuxeabi.h
te-cloudabi.h
te-csky_abiv1_linux.h
te-csky_abiv1.h
te-csky_abiv2_linux.h
te-csky_abiv2.h
te-dragonfly.h
te-freebsd.h
te-generic.h
te-gnu.h
te-go32.h
te-haiku.h Add support for the haiku operating system. These are the os support patches we have been grooming and maintaining for quite a few years over on git.haiku-os.org. All of these architectures are working and most have been stable for quite some time. 2021-09-02 12:19:14 +01:00
te-hppa64.h
te-hppa.h
te-hppalinux64.h
te-hpux.h
te-ia64aix.h
te-interix.h
te-irix.h
te-linux.h
te-lynx.h
te-macos.h
te-nacl.h
te-nbsd532.h
te-nbsd.h
te-pc532mach.h
te-pe.h
te-pep.h
te-solaris.h
te-svr4.h
te-tmips.h
te-uclinux.h
te-vms.c
te-vms.h
te-vxworks.h
te-wince-pe.h
vax-inst.h
xtensa-istack.h Use bool in gas 2021-03-31 10:49:23 +10:30
xtensa-relax.c Use startswith in gas subfolder. 2021-04-01 15:00:08 +02:00
xtensa-relax.h Use bool in gas 2021-03-31 10:49:23 +10:30