binutils-gdb/gas/doc
Andrew Burgess 66f8b2cbbb gas: Add --gdwarf-cie-version command line flag
Add a flag to control the version of CIE that is generated.  By
default gas produces CIE version 1, and this continues to be the
default after this patch.

However, a user can now provide --gdwarf-cie-version=NUMBER to switch
to either version 3 or version 4 of CIE, version 2 was never released,
and so causes an error as does any number less than 1 or greater than
4.

Producing version 4 CIE requires two new fields to be added to the
CIE, an address size field, and an segment selector field.  For a flat
address space the DWARF specification indicates that the segment
selector should be 0, and the address size fields just contains the
address size in bytes.  For now we support 4 or 8 byte addresses, and
the segment selector is always produced as 0.  At some future time we
might need to allow targets to override this.

gas/ChangeLog:

	* as.c (parse_args): Parse --gdwarf-cie-version option.
	(flag_dwarf_cie_version): New variable.
	* as.h (flag_dwarf_cie_version): Declare.
	* dw2gencfi.c (output_cie): Switch from DW_CIE_VERSION to
	flag_dwarf_cie_version.
	* doc/as.texi (Overview): Document --gdwarf-cie-version.
	* NEWS: Likewise.
	* testsuite/gas/cfi/cfi.exp: Add new tests.
	* testsuite/gas/cfi/cie-version-0.d: New file.
	* testsuite/gas/cfi/cie-version-1.d: New file.
	* testsuite/gas/cfi/cie-version-2.d: New file.
	* testsuite/gas/cfi/cie-version-3.d: New file.
	* testsuite/gas/cfi/cie-version-4.d: New file.
	* testsuite/gas/cfi/cie-version.s: New file.

include/ChangeLog:

	* dwarf2.h (DW_CIE_VERSION): Delete.

Change-Id: I9de19461aeb8332b5a57bbfe802953d0725a7ae8
2019-11-18 10:30:21 +00:00
..
Makefile.am gas: add support for eBPF 2019-05-23 19:34:04 +02:00
Makefile.in Re-generate many configure and Makefile.in files 2019-09-18 09:09:15 -04:00
all.texi gas: add support for eBPF 2019-05-23 19:34:04 +02:00
as.texi gas: Add --gdwarf-cie-version command line flag 2019-11-18 10:30:21 +00:00
c-aarch64.texi [binutils][aarch64] Matrix Multiply extension enablement [8/X] 2019-11-07 17:11:52 +00: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 [Patch][binutils][arm] Armv8.6-A Matrix Multiply extension [9/10] 2019-11-07 17:20:08 +00: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: support .half, .word and .dword directives in eBPF 2019-07-17 22:57:23 +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 x86: support further AMD Zen2 instructions 2019-11-07 09:29:14 +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 Add support for new functionality in the msp430 backend of GCC. 2019-10-07 16:34:31 +01:00
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 Kito's 5-part patch set to improve .insn support. 2019-07-05 15:19:11 +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: Add support for z15 as CPU name. 2019-10-08 11:24:29 +02: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 Change documentation license to FDL v1.3 2008-11-19 16:22:48 +00:00
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