binutils-gdb/opcodes
Jim Wilson 1080bf78c0 RISC-V: Accept version, supervisor ext and more than one NSE for -march.
This patch moves all -march parsing logic into bfd, because we will use this
code in ELF attributes.

	bfd/
	* elfxx-riscv.h (RISCV_DONT_CARE_VERSION): New macro.
	(struct riscv_subset_t): New structure.
	(riscv_subset_t): New typedef.
	(riscv_subset_list_t): New structure.
	(riscv_release_subset_list): New prototype.
	(riscv_add_subset): Likewise.
	(riscv_lookup_subset): Likewise.
	(riscv_lookup_subset_version): Likewise.
	(riscv_release_subset_list): Likewise.
	* elfxx-riscv.c: Include safe-ctype.h.
	(riscv_parsing_subset_version): New function.
	(riscv_supported_std_ext): Likewise.
	(riscv_parse_std_ext): Likewise.
	(riscv_parse_sv_or_non_std_ext): Likewise.
	(riscv_parse_subset): Likewise.
	(riscv_add_subset): Likewise.
	(riscv_lookup_subset): Likewise.
	(riscv_lookup_subset_version): Likewise.
	(riscv_release_subset_list): Likewise.
	gas/
	* config/tc-riscv.c: Include elfxx-riscv.h.
	(struct riscv_subset): Removed.
	(riscv_subsets): Change type to riscv_subset_list_t.
	(riscv_subset_supports): Removed argument: xlen_required and move
	logic into libbfd.
	(riscv_multi_subset_supports): Removed argument: xlen_required.
	(riscv_clear_subsets): Removed.
	(riscv_add_subset): Ditto.
	(riscv_set_arch): Extract parsing logic into libbfd.
	(riscv_ip): Update argument for riscv_multi_subset_supports and
	riscv_subset_supports. Update riscv_subsets due to struct definition
	changed.
	(riscv_after_parse_args): Update riscv_subsets due to struct
	definition changed, update and argument for riscv_subset_supports.
	* testsuite/gas/riscv/empty.s: New.
	* testsuite/gas/riscv/march-fail-rv32ef.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv32ef.l: Likewise.
	* testsuite/gas/riscv/march-fail-rv32i.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv32i.l: Likewise.
	* testsuite/gas/riscv/march-fail-rv32iam.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv32iam.l: Likewise.
	* testsuite/gas/riscv/march-fail-rv32ic.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv32ic.l: Likewise.
	* testsuite/gas/riscv/march-fail-rv32icx2p.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv32icx2p.l: Likewise.
	* testsuite/gas/riscv/march-fail-rv32imc.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv32imc.l: Likewise.
	* testsuite/gas/riscv/march-fail-rv64I.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv64I.l: Likewise.
	* testsuite/gas/riscv/march-fail-rv64e.d: Likewise.
	* testsuite/gas/riscv/march-fail-rv64e.l: Likewise.
	* testsuite/gas/riscv/march-ok-g2.d: Likewise.
	* testsuite/gas/riscv/march-ok-g2p0.d: Likewise.
	* testsuite/gas/riscv/march-ok-i2p0.d: Likewise.
	* testsuite/gas/riscv/march-ok-nse-with-version.: Likewise.d
	* testsuite/gas/riscv/march-ok-s-with-version.d: Likewise.
	* testsuite/gas/riscv/march-ok-s.d: Likewise.
	* testsuite/gas/riscv/march-ok-sx.d: Likewise.
	* testsuite/gas/riscv/march-ok-two-nse.d: Likewise.
	* testsuite/gas/riscv/march-ok-g2_p1.d: Likewise.
	* testsuite/gas/riscv/march-ok-i2p0m2_a2f2.d: Likewise.
	include/
	* opcode/riscv.h (riscv_opcode): Change type of xlen_requirement to
	unsigned.
	opcodes/
	* riscv-opc.c: Change the type of xlen, because type of
	xlen_requirement changed.
2018-12-03 14:05:17 -08:00
..
po csky regen 2018-08-01 10:32:56 +09:30
.gitignore
ChangeLog RISC-V: Accept version, supervisor ext and more than one NSE for -march. 2018-12-03 14:05:17 -08:00
ChangeLog-0001
ChangeLog-0203
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015
ChangeLog-2016
ChangeLog-2017
ChangeLog-9297
ChangeLog-9899
MAINTAINERS
Makefile.am csky-opc.h: Initialize fields of last array elements 2018-09-21 10:27:49 -04:00
Makefile.in csky-opc.h: Initialize fields of last array elements 2018-09-21 10:27:49 -04:00
aarch64-asm-2.c [BINUTILS, AARCH64, 6/8] Add Tag getting instruction in Memory Tagging Extension 2018-11-12 13:20:58 +00:00
aarch64-asm.c [BINUTILS, AARCH64, 6/8] Add Tag getting instruction in Memory Tagging Extension 2018-11-12 13:20:58 +00:00
aarch64-asm.h [BINUTILS, AARCH64, 6/8] Add Tag getting instruction in Memory Tagging Extension 2018-11-12 13:20:58 +00:00
aarch64-dis-2.c [BINUTILS, AARCH64, 6/8] Add Tag getting instruction in Memory Tagging Extension 2018-11-12 13:20:58 +00:00
aarch64-dis.c [BINUTILS, AARCH64, 6/8] Add Tag getting instruction in Memory Tagging Extension 2018-11-12 13:20:58 +00:00
aarch64-dis.h [BINUTILS, AARCH64, 6/8] Add Tag getting instruction in Memory Tagging Extension 2018-11-12 13:20:58 +00:00
aarch64-gen.c
aarch64-opc-2.c [BINUTILS, AARCH64, 6/8] Add Tag getting instruction in Memory Tagging Extension 2018-11-12 13:20:58 +00:00
aarch64-opc.c [BINUTILS, AARCH64, 8/8] Add data cache instructions for Memory Tagging Extension 2018-11-12 13:29:38 +00:00
aarch64-opc.h [BINUTILS, AARCH64, 2/8] Add Tag generation instructions in Memory Tagging Extension 2018-11-12 12:59:22 +00:00
aarch64-tbl.h [aarch64] - Only use MOV for disassembly when shifter op is LSL #0 2018-12-03 17:34:33 +00:00
aclocal.m4 csky-opc.h: Initialize fields of last array elements 2018-09-21 10:27:49 -04:00
alpha-dis.c
alpha-opc.c
arc-dis.c
arc-dis.h
arc-ext-tbl.h
arc-ext.c
arc-ext.h
arc-fxi.h
arc-nps400-tbl.h ARC: Fix build errors with large constants and C89 2018-09-20 15:49:00 +01:00
arc-opc.c [ARC] Fix decoding of w6 signed short immediate. 2018-07-23 11:09:43 +02:00
arc-regs.h [ARC] Update handling AUX-registers. 2018-08-06 16:41:32 +03:00
arc-tbl.h [ARC] Allow vewt instruction for ARC EM family. 2018-07-23 11:09:43 +02:00
arm-dis.c [BINUTILS, ARM] Add Armv8.5-A to select_arm_features and update macros. 2018-11-06 12:13:45 +00:00
avr-dis.c
bfin-dis.c
cgen-asm.c
cgen-asm.in
cgen-bitset.c
cgen-dis.c
cgen-dis.in
cgen-ibld.in
cgen-opc.c
cgen.sh
config.in
configure csky-opc.h: Initialize fields of last array elements 2018-09-21 10:27:49 -04:00
configure.ac csky-opc.h: Initialize fields of last array elements 2018-09-21 10:27:49 -04:00
configure.com
cr16-dis.c
cr16-opc.c
cris-dis.c
cris-opc.c
crx-dis.c
crx-opc.c
csky-dis.c Add support for the C_SKY series of processors. 2018-07-30 12:24:14 +01:00
csky-opc.h csky-opc.h: Initialize fields of last array elements 2018-09-21 10:27:49 -04:00
d10v-dis.c
d10v-opc.c
d30v-dis.c
d30v-opc.c
dep-in.sed
dis-buf.c
dis-init.c
disassemble.c Andes Technology has good news for you, we plan to update the nds32 port of binutils on upstream! 2018-09-20 13:32:58 +01:00
disassemble.h Add support for the C_SKY series of processors. 2018-07-30 12:24:14 +01:00
dlx-dis.c
epiphany-asm.c
epiphany-desc.c
epiphany-desc.h
epiphany-dis.c
epiphany-ibld.c
epiphany-opc.c
epiphany-opc.h
fr30-asm.c
fr30-desc.c
fr30-desc.h
fr30-dis.c
fr30-ibld.c
fr30-opc.c
fr30-opc.h
frv-asm.c
frv-desc.c
frv-desc.h
frv-dis.c
frv-ibld.c
frv-opc.c
frv-opc.h
ft32-dis.c
ft32-opc.c
h8300-dis.c
hppa-dis.c
i386-dis-evex.h x86: correctly handle VPBROADCASTD with EVEX.W set outside of 64-bit mode 2018-11-06 11:45:49 +01:00
i386-dis.c x86: correctly handle VMOVD with EVEX.W set outside of 64-bit mode 2018-11-06 11:45:11 +01:00
i386-gen.c x86: fold Size{16,32,64} template attributes 2018-10-10 08:41:52 +02:00
i386-init.h x86: Add CpuCMOV and CpuFXSR 2018-08-11 14:37:32 -07:00
i386-opc.c
i386-opc.h x86: fold Size{16,32,64} template attributes 2018-10-10 08:41:52 +02:00
i386-opc.tbl x86: adjust {,E}VEX.W handling for PEXTR* / PINSR* 2018-11-06 11:43:55 +01:00
i386-reg.tbl x86: fold RegEip/RegRip and RegEiz/RegRiz 2018-08-06 08:34:36 +02:00
i386-tbl.h x86: adjust {,E}VEX.W handling for PEXTR* / PINSR* 2018-11-06 11:43:55 +01:00
ia64-asmtab.c
ia64-asmtab.h
ia64-dis.c
ia64-gen.c
ia64-ic.tbl
ia64-opc-a.c
ia64-opc-b.c
ia64-opc-d.c
ia64-opc-f.c
ia64-opc-i.c
ia64-opc-m.c
ia64-opc-x.c
ia64-opc.c
ia64-opc.h
ia64-raw.tbl
ia64-war.tbl
ia64-waw.tbl
ip2k-asm.c
ip2k-desc.c
ip2k-desc.h
ip2k-dis.c
ip2k-ibld.c
ip2k-opc.c
ip2k-opc.h
iq2000-asm.c
iq2000-desc.c
iq2000-desc.h
iq2000-dis.c
iq2000-ibld.c
iq2000-opc.c
iq2000-opc.h
lm32-asm.c
lm32-desc.c
lm32-desc.h
lm32-dis.c
lm32-ibld.c
lm32-opc.c
lm32-opc.h
lm32-opinst.c
m32c-asm.c
m32c-desc.c
m32c-desc.h
m32c-dis.c
m32c-ibld.c
m32c-opc.c
m32c-opc.h
m32r-asm.c
m32r-desc.c
m32r-desc.h
m32r-dis.c
m32r-ibld.c
m32r-opc.c
m32r-opc.h
m32r-opinst.c
m68hc11-dis.c
m68hc11-opc.c
m68k-dis.c
m68k-opc.c
m10200-dis.c
m10200-opc.c
m10300-dis.c
m10300-opc.c
makefile.vms
mcore-dis.c
mcore-opc.h
mep-asm.c
mep-desc.c
mep-desc.h
mep-dis.c
mep-ibld.c
mep-opc.c
mep-opc.h
metag-dis.c
microblaze-dis.c
microblaze-dis.h
microblaze-opc.h
microblaze-opcm.h
micromips-opc.c
mips-dis.c [MIPS] Add Loongson 2K1000 proccessor support. 2018-08-29 20:55:25 +08:00
mips-formats.h
mips-opc.c [MIPS] Add Loongson 3A1000 proccessor support. 2018-08-29 20:32:30 +08:00
mips16-opc.c
mmix-dis.c
mmix-opc.c
moxie-dis.c
moxie-opc.c
msp430-decode.c
msp430-decode.opc
msp430-dis.c
mt-asm.c
mt-desc.c
mt-desc.h
mt-dis.c
mt-ibld.c
mt-opc.c
mt-opc.h
nds32-asm.c Andes Technology has good news for you, we plan to update the nds32 port of binutils on upstream! 2018-09-20 13:32:58 +01:00
nds32-asm.h Andes Technology has good news for you, we plan to update the nds32 port of binutils on upstream! 2018-09-20 13:32:58 +01:00
nds32-dis.c Andes Technology has good news for you, we plan to update the nds32 port of binutils on upstream! 2018-09-20 13:32:58 +01:00
nds32-opc.h
nfp-dis.c opcodes/nfp: Fix disassembly of crc[] with swapped operands. 2018-11-13 15:33:21 +02:00
nios2-dis.c Fix incorrect extraction of signed constants in nios2 disassembler. 2018-09-23 12:31:23 -07:00
nios2-opc.c
ns32k-dis.c
opc2c.c
opintl.h
or1k-asm.c or1k: Add the l.adrp insn and supporting relocations 2018-10-05 11:41:41 +09:00
or1k-desc.c or1k: Add the l.muld, l.muldu, l.macu, l.msbu insns 2018-10-05 11:41:42 +09:00
or1k-desc.h or1k: Add the l.muld, l.muldu, l.macu, l.msbu insns 2018-10-05 11:41:42 +09:00
or1k-dis.c or1k: Add the l.adrp insn and supporting relocations 2018-10-05 11:41:41 +09:00
or1k-ibld.c or1k: Add the l.adrp insn and supporting relocations 2018-10-05 11:41:41 +09:00
or1k-opc.c or1k: Add the l.muld, l.muldu, l.macu, l.msbu insns 2018-10-05 11:41:42 +09:00
or1k-opc.h or1k: Add the l.muld, l.muldu, l.macu, l.msbu insns 2018-10-05 11:41:42 +09:00
or1k-opinst.c or1k: Add the l.muld, l.muldu, l.macu, l.msbu insns 2018-10-05 11:41:42 +09:00
pdp11-dis.c
pdp11-opc.c
pj-dis.c
pj-opc.c
ppc-dis.c Use operand->extract to provide defaults for optional PowerPC operands 2018-08-21 16:05:36 +09:30
ppc-opc.c PowerPC instruction mask checks 2018-11-06 21:17:28 +10:30
pru-dis.c
pru-opc.c
riscv-dis.c RISC-V: Accept version, supervisor ext and more than one NSE for -march. 2018-12-03 14:05:17 -08:00
riscv-opc.c RISC-V: Add missing c.unimp instruction. 2018-11-29 13:10:38 -08:00
rl78-decode.c
rl78-decode.opc
rl78-dis.c
rx-decode.c
rx-decode.opc
rx-dis.c
s12z-dis.c S12Z opcodes: Fix bug disassembling certain shift instructions. 2018-11-21 21:34:47 +01:00
s390-dis.c
s390-mkopc.c
s390-opc.c
s390-opc.txt S/390: Support vector alignment hints 2018-10-23 18:13:01 +02:00
score-dis.c
score-opc.h
score7-dis.c
sh-dis.c
sh-opc.h Tidy bit twiddling 2018-08-20 09:54:20 +09:30
sparc-dis.c
sparc-opc.c sparc/leon: add support for partial write psr instruction 2018-08-29 20:52:28 +02:00
spu-dis.c
spu-opc.c
stamp-h.in
sysdep.h
tic4x-dis.c
tic6x-dis.c
tic30-dis.c
tic54x-dis.c
tic54x-opc.c
tic80-dis.c
tic80-opc.c
tilegx-dis.c
tilegx-opc.c
tilepro-dis.c
tilepro-opc.c
v850-dis.c
v850-opc.c
vax-dis.c
visium-dis.c
visium-opc.c
wasm32-dis.c
xc16x-asm.c
xc16x-desc.c
xc16x-desc.h
xc16x-dis.c
xc16x-ibld.c
xc16x-opc.c
xc16x-opc.h
xgate-dis.c
xgate-opc.c
xstormy16-asm.c
xstormy16-desc.c
xstormy16-desc.h
xstormy16-dis.c
xstormy16-ibld.c
xstormy16-opc.c
xstormy16-opc.h
xtensa-dis.c
z8k-dis.c
z8k-opc.h
z8kgen.c
z80-dis.c