binutils-gdb/gas/doc
Jose E. Marchesi 46a2d504dd gas: detect DCTI couples in sparc
Before SPARC V9 the effect of having a delayed branch instruction in the
delay slot of a conditional delayed branch was undefined.

In SPARC V9 DCTI couples are well defined.

However, starting with the UltraSPARC Architecture 2005, DCTI
couples (of all kind) are deprecated and should not be used, as they may
be slow or behave differently to what the programmer expects.

This patch adds a new command line option --dcti-couples-detect to `as',
disabled by default, that makes the assembler to warn the user if an
unpredictable DCTI couple is found.  Tests and documentation are
included.

gas/ChangeLog:

2016-09-14  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* config/tc-sparc.c (md_assemble): Detect and warning on
	unpredictable DCTI couples in certain arches.
	(dcti_couples_detect): New global.
	(md_longopts): Add command line option -dcti-couples-detect.
	(md_show_usage): Document -dcti-couples-detect.
	(md_parse_option): Handle OPTION_DCTI_COUPLES_DETECT.
	* testsuite/gas/sparc/sparc.exp (gas_64_check): Run
	dcti-couples-v8, dcti-couples-v9 and dcti-couples-v9c tests.
	* testsuite/gas/sparc/dcti-couples.s: New file.
	* testsuite/gas/sparc/dcti-couples-v9c.d: Likewise.
	* testsuite/gas/sparc/dcti-couples-v8.d: Likewise.
	* testsuite/gas/sparc/dcti-couples-v9.d: Likewise.
	* testsuite/gas/sparc/dcti-couples-v9c.l: Likewise.
	* testsuite/gas/sparc/dcti-couples-v8.l: Likewise.
	* doc/as.texinfo (Overview): Document --dcti-couples-detect.
	* doc/c-sparc.texi (Sparc-Opts): Likewise.
2016-09-14 07:10:49 -07:00
..
Makefile.am Copyright update for binutils 2016-01-01 23:00:01 +10:30
Makefile.in Regenerate Makefile.in/aclocal.m4 automake 1.11.6 2016-04-15 16:20:55 -07:00
all.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
as.texinfo gas: detect DCTI couples in sparc 2016-09-14 07:10:49 -07:00
c-aarch64.texi Accept vulcan as a cpu name for the AArch64 port of GAS. 2016-06-13 14:17:31 +01:00
c-alpha.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-arc.texi Arc assembler: Convert nps400 from a machine type to an extension. 2016-06-21 14:03:08 +01:00
c-arm.texi [ARM] Add command line option for RAS extension. 2016-06-07 09:56:42 +01:00
c-avr.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-bfin.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-cr16.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-cris.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-d10v.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-d30v.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-epiphany.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-h8300.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-hppa.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-i370.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-i386.texi X86: Add ptwrite instruction 2016-08-24 15:29:39 -07:00
c-i860.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-i960.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-ia64.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-ip2k.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-lm32.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-m32c.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-m32r.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-m68hc11.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-m68k.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-metag.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-microblaze.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-mips.texi MIPS: Add support for P6600 2016-05-20 15:21:10 +01:00
c-mmix.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-msp430.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-mt.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-nds32.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-nios2.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-ns32k.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-pdp11.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-pj.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-ppc.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-rl78.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-rx.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-s390.texi S/390: Add alternate processor names. 2016-09-12 16:32:02 +02:00
c-score.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-sh.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-sh64.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-sparc.texi gas: detect DCTI couples in sparc 2016-09-14 07:10:49 -07:00
c-tic6x.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-tic54x.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-tilegx.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-tilepro.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-v850.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-vax.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-visium.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-xc16x.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-xgate.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-xstormy16.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-xtensa.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-z8k.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
c-z80.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
fdl.texi Change documentation license to FDL v1.3 2008-11-19 16:22:48 +00:00
h8.texi Copyright update for binutils 2016-01-01 23:00:01 +10:30
internals.texi Remove documentation of deleted function S_IS_EXTERN. 2016-02-16 10:37:32 +00:00