old-cross-binutils/ld/testsuite
Alan Modra 14b57c7c6a PowerPC VLE
VLE is an encoding, not a particular processor architecture, so it
isn't really proper to select insns based on PPC_OPCODE_VLE.  For
example
{"evaddw",  VX (4, 512), VX_MASK, PPCSPE|PPCVLE, PPCNONE, {RS, RA, RB}},
{"vaddubs", VX (4, 512), VX_MASK, PPCVEC|PPCVLE, PPCNONE, {VD, VA, VB}},
shows two insns that have the same encoding, both available with VLE.
Enabling both with VLE means we can't disassemble the second variant
even if -Maltivec is given rather than -Mspe.  Also, we don't check
user assembly against the processor type as well as we could.

Another problem is that when using the VLE encoding, insns from the
main ppc opcode table are not available, except those using opcode 4
and 31.  Correcting this revealed two errors in the ld testsuite,
use of "nop" and "rfmci" when -mvle.

This patch fixes those problems in the opcode table, and removes
PPCNONE.  I find a plain 0 distracts less from other values.

In addition, I've implemented code to recognize some machine values
from the apuinfo note present in ppc32 objects.  It's not a complete
disambiguation since we're lacking info to detect newer chips, but
what we have should help with disassembly.

include/
	* elf/ppc.h (APUINFO_SECTION_NAME, APUINFO_LABEL, PPC_APUINFO_ISEL,
	PPC_APUINFO_PMR, PPC_APUINFO_RFMCI, PPC_APUINFO_CACHELCK,
	PPC_APUINFO_SPE, PPC_APUINFO_EFS, PPC_APUINFO_BRLOCK,
	PPC_APUINFO_VLE: Define.
opcodes/
	* ppc-dis.c (ppc_opts): Delete extraneous parentheses.  Default
	cpu for "vle" to e500.
	* ppc-opc.c (ALLOW8_SPRG): Remove PPC_OPCODE_VLE.
	(NO371, PPCSPE, PPCISEL, PPCEFS, MULHW, DCBT_EO): Likewise.
	(PPCNONE): Delete, substitute throughout.
	(powerpc_opcodes): Remove PPCVLE from "flags".  Add to "deprecated"
	except for major opcode 4 and 31.
	(vle_opcodes <se_rfmci>): Add PPCRFMCI to flags.
bfd/
	* cpu-powerpc.c (powerpc_compatible): Allow bfd_mach_ppc_vle entry
	to match other 32-bit archs.
	* elf32-ppc.c (_bfd_elf_ppc_set_arch): New function.
	(ppc_elf_object_p): Call it.
	(ppc_elf_special_sections): Use APUINFO_SECTION_NAME.  Fix
	overlong line.
	(APUINFO_SECTION_NAME, APUINFO_LABEL): Don't define here.
	* elf64-ppc.c (ppc64_elf_object_p): Call _bfd_elf_ppc_set_arch.
	* bfd-in.h (_bfd_elf_ppc_at_tls_transform,
	_bfd_elf_ppc_at_tprel_transform): Move to..
	* elf-bfd.h: ..here.
	(_bfd_elf_ppc_set_arch): Declare.
	* bfd-in2.h: Regenerate.
gas/
	* config/tc-ppc.c (PPC_APUINFO_ISEL, PPC_APUINFO_PMR,
	PPC_APUINFO_RFMCI, PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE,
	PPC_APUINFO_EFS, PPC_APUINFO_BRLOCK, PPC_APUINFO_VLE): Don't define.
	(ppc_setup_opcodes): Check vle disables powerpc_opcodes overridden
	by vle_opcodes, and that vle flag doesn't enable opcodes.  Don't
	add vle_opcodes twice.
	(ppc_cleanup): Use APUINFO_SECTION_NAME and APUINFO_LABEL.
ld/
	* testsuite/ld-powerpc/apuinfo1.s: Delete nop.
	* testsuite/ld-powerpc/apuinfo-vle2.s: New.
	* testsuite/ld-powerpc/powerpc.exp: Use apuinfo-vle2.s.
2016-06-07 22:04:38 +09:30
..
config Download source only on remote host 2016-04-29 06:52:55 -07:00
ld-aarch64 [AArch64] Also puts value in place for R_AARCH64_RELATIVE 2016-05-03 11:59:37 +01:00
ld-alpha Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-arc arc/nps400 : New cmem instructions and associated relocation 2016-04-14 17:16:46 +01:00
ld-arm Set dynamic tag VMA and size from dynamic section when possible 2016-05-13 14:34:45 +09:30
ld-auto-import Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-avr Fix possible failure in the AVR linker tests. 2016-03-18 09:51:47 +00:00
ld-bootstrap Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-cdtest Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-checks Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-cris ELF/LD: Avoid producing hidden and internal dynamic symbols 2016-04-05 15:14:54 +01:00
ld-crx Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-cygwin Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-d10v Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-discard [ARC] Fix ld testsuite failures. 2016-04-05 13:46:44 +02:00
ld-elf [ARC] Fixed-linker-related-testsuite-for-ARC 2016-05-19 15:06:51 +02:00
ld-elfcomm Skip ELF STT_COMMON linker tests if shared libraries are not supported. 2016-05-03 10:44:35 +01:00
ld-elfvers Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-elfvsb Skip debug sections when estimating distances 2016-04-27 09:13:10 -07:00
ld-elfweak Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-fastcall Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-frv Make linker assigned symbol dynamic only for shared object 2016-02-23 05:19:03 -08:00
ld-gc Fix some AVR test failures. 2016-05-04 13:03:52 +01:00
ld-h8300 Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-i386 Update x86 linker tests for --disable-x86-relax-relocations 2016-06-03 04:10:11 -07:00
ld-ia64 Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-ifunc Update x86 linker tests for --disable-x86-relax-relocations 2016-06-03 04:10:11 -07:00
ld-libs Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-linkonce Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-m68hc11 Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-m68k Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-mep Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-metag Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-mips-elf MIPS/BFD: Correctly handle `bfd_reloc_outofrange' with branches 2016-05-28 10:59:45 +01:00
ld-misc Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-mmix Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-mn10300 Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-nds32 Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-nios2 Add Nios II arch flags and compatibility tests 2015-07-01 15:55:28 -07:00
ld-pe Improve COFF/PE linker garbage collection by preventing the removal of sections containing exported symbols. 2016-03-22 12:25:08 +00:00
ld-pie Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-plugin Skip an archive element if not added by linker 2016-05-25 08:41:05 -07:00
ld-powerpc PowerPC VLE 2016-06-07 22:04:38 +09:30
ld-s390 Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
ld-scripts Hack crossref tests for powerpc64 2016-05-19 14:07:06 +09:30
ld-selective Fix some AVR test failures. 2016-05-04 13:03:52 +01:00
ld-sh Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
ld-shared Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-size Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-sparc Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-spu Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-srec [ARC] Fixed-linker-related-testsuite-for-ARC 2016-05-19 15:06:51 +02:00
ld-tic6x Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
ld-tilegx Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-tilepro Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-undefined Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-unique LD/ELF: Unify STB_GNU_UNIQUE handling 2016-05-17 12:21:40 +01:00
ld-v850 Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-vax-elf Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-versados Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-visium Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-vxworks Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-x86-64 Support x86-64 TLS code sequences without PLT 2016-06-06 11:07:16 -07:00
ld-xc16x Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-xstormy16 Copyright update for binutils 2016-01-01 23:00:01 +10:30
ld-xtensa Enhance GAS's .section directive so that it can take numeric values for the flags and type fields. (ELF only) 2016-02-15 11:11:46 +00:00
ld-z8k ld/testsuite/ld-z8k/test-ld.sh: Remove. Checked in by mistake. 2016-06-04 22:39:46 +02:00
lib [ARC] Fixed-linker-related-testsuite-for-ARC 2016-05-19 15:06:51 +02:00
ChangeLog-2004 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2005 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2006 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2007 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2008 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2009 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2010 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2011 Add copyright notices 2012-12-10 12:48:03 +00:00
ChangeLog-2012 Rotate binutils ChangeLog for 2013 2013-01-02 17:06:32 +00:00
ChangeLog-2013 New Year - binutils ChangeLog rotation 2014-01-08 05:32:12 -08:00
ChangeLog-2014 ChangeLog rotatation and copyright year update 2015-01-02 00:53:45 +10:30
ChangeLog-2015 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-9303 Add copyright notices 2012-12-10 12:48:03 +00:00