binutils-gdb/gas/doc
Jan Beulich f2d4ba38f5 gas/ELF: don't accumulate .type settings
Recently a patch was submitted for a Xen Project test harness binary to
override the compiler specified @object to @func (see [1]). In a reply I
suggested we shouldn't make ourselves dependent on currently unspecified
behavior of gas here: It accumulates all requests, and then
bfd/elf.c:swap_out_syms(), in an apparently ad hoc manner, prioritizes
certain flags over others.

Make the behavior predictable: Generally the last .type is what counts.
Exceptions are directives which set multiple bits (TLS, IFUNC, and
UNIQUE): Subsequent directives requesting just the more generic bit
(i.e. FUNC following IFUNC) won't clear the more specific one.  Warn
about incompatible changes, except from/to STT_NOTYPE.

Also add a new target hook, which hppa wants to use right away afaict.

In the course of adding the warning I ran into two ld testsuite
failures.  I can only assume that it was a copy-and-paste mistake that
lead to the same symbol having its type set twice.

[1] https://lists.xenproject.org/archives/html/xen-devel/2019-05/msg01980.html
2019-07-04 10:35:47 +02:00
..
all.texi gas: add support for eBPF 2019-05-23 19:34:04 +02:00
as.texi gas/ELF: don't accumulate .type settings 2019-07-04 10:35:47 +02:00
c-aarch64.texi [gas][aarch64][SVE2] Fix pmull{t,b} requirement on SVE2-AES 2019-07-01 15:17:22 +01:00
c-alpha.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-arc.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-arm.texi GAS (documentation): Remove trademark acknowledgements. 2019-05-17 15:18:08 +02:00
c-avr.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-bfin.texi GAS (documentation): Remove trademark acknowledgements. 2019-05-17 15:18:08 +02:00
c-bpf.texi gas: add support for eBPF 2019-05-23 19:34:04 +02:00
c-cr16.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-cris.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-csky.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-d10v.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-d30v.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-epiphany.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-h8300.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-hppa.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-i386.texi Document the .value directive supported by the x86 and x86_64 assemblers. 2019-07-01 12:39:09 +01:00
c-ia64.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-ip2k.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-lm32.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-m32c.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-m32r.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-m68hc11.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-m68k.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-metag.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-microblaze.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-mips.texi [MIPS] Add i6500 CPU and fix i6400 default ASEs 2019-04-13 10:15:56 -07:00
c-mmix.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-msp430.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-mt.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-nds32.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-nios2.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-ns32k.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-or1k.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-pdp11.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-pj.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-ppc.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-pru.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-riscv.texi RISC-V: Support ELF attribute for gas and readelf. 2019-01-16 13:14:59 -08:00
c-rl78.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-rx.texi RX: gas - Add RXv3 instruction support. 2019-01-05 22:51:41 +09:00
c-s12z.texi S12Z: GAS: New option --mdollar-hex. 2019-05-22 08:13:36 +02:00
c-s390.texi S/390: Implement instruction set extensions 2019-01-31 17:32:18 +01:00
c-score.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-sh.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-sparc.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-tic6x.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-tic54x.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-tilegx.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-tilepro.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-v850.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-vax.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-visium.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-wasm32.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-xc16x.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-xgate.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-xstormy16.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-xtensa.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-z8k.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
c-z80.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
fdl.texi
h8.texi Update year range in copyright notice of binutils files 2019-01-01 22:06:53 +10:30
internals.texi gas: Pass max_bytes to TC_FRAG_INIT 2019-02-10 04:34:22 -08:00
Makefile.am gas: add support for eBPF 2019-05-23 19:34:04 +02:00
Makefile.in Regenerate with approved autotools version 2019-06-14 10:30:35 +09:30