binutils-gdb/include/opcode
Jiawei b0a101c53a RISC-V: Supports Zcb extension.
This patch support Zcb extension, contains new compressed instructions,
some instructions depend on other existed extension, like 'zba', 'zbb'
and 'zmmul'.  Zcb also imply Zca extension to enable the compressing
features.

Co-Authored by: Charlie Keaney <charlie.keaney@embecosm.com>
Co-Authored by: Mary Bennett <mary.bennett@embecosm.com>
Co-Authored by: Nandni Jamnadas <nandni.jamnadas@embecosm.com>
Co-Authored by: Sinan Lin <sinan.lin@linux.alibaba.com>
Co-Authored by: Simon Cook <simon.cook@embecosm.com>
Co-Authored by: Shihua Liao <shihua@iscas.ac.cn>
Co-Authored by: Yulong Shi <yulong@iscas.ac.cn>

bfd/ChangeLog:

        * elfxx-riscv.c (riscv_multi_subset_supports): New extension.
        (riscv_multi_subset_supports_ext): Ditto.

gas/ChangeLog:

        * config/tc-riscv.c (validate_riscv_insn): New operators.
        (riscv_ip): Ditto.
        * testsuite/gas/riscv/zcb.d: New test.
        * testsuite/gas/riscv/zcb.s: New test.

include/ChangeLog:

        * opcode/riscv-opc.h (MATCH_C_LBU): New opcode.
        (MASK_C_LBU): New mask.
        (MATCH_C_LHU): New opcode.
        (MASK_C_LHU): New mask.
        (MATCH_C_LH): New opcode.
        (MASK_C_LH): New mask.
        (MATCH_C_SB): New opcode.
        (MASK_C_SB): New mask.
        (MATCH_C_SH): New opcode.
        (MASK_C_SH): New mask.
        (MATCH_C_ZEXT_B): New opcode.
        (MASK_C_ZEXT_B): New mask.
        (MATCH_C_SEXT_B): New opcode.
        (MASK_C_SEXT_B): New mask.
        (MATCH_C_ZEXT_H): New opcode.
        (MASK_C_ZEXT_H): New mask.
        (MATCH_C_SEXT_H): New opcode.
        (MASK_C_SEXT_H): New mask.
        (MATCH_C_ZEXT_W): New opcode.
        (MASK_C_ZEXT_W): New mask.
        (MATCH_C_NOT): New opcode.
        (MASK_C_NOT): New mask.
        (MATCH_C_MUL): New opcode.
        (MASK_C_MUL): New mask.
        (DECLARE_INSN): New opcode.
        * opcode/riscv.h (EXTRACT_ZCB_BYTE_UIMM): New inline func.
        (EXTRACT_ZCB_HALFWORD_UIMM): Ditto.
        (ENCODE_ZCB_BYTE_UIMM): Ditto.
        (ENCODE_ZCB_HALFWORD_UIMM): Ditto.
        (VALID_ZCB_BYTE_UIMM): Ditto.
        (VALID_ZCB_HALFWORD_UIMM): Ditto.
        (enum riscv_insn_class): New extension class.

opcodes/ChangeLog:

        * riscv-dis.c (print_insn_args): New operators.
        * riscv-opc.c: New instructions.
2023-07-18 11:45:58 +08:00
..
aarch64.h aarch64: Remove stray reglist variable 2023-03-30 17:01:30 +01:00
alpha.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
arc-attrs.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
arc-func.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
arc.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
arm.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
avr.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
bfin.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
cgen.h bpf: fix error conversion from long unsigned int to unsigned int [-Werror=overflow] 2023-02-03 11:18:50 -06:00
ChangeLog-0415 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:03 +00:00
convex.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
cr16.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
cris.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
crx.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
csky.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
d10v.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
d30v.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
dlx.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
ft32.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
h8300.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
hppa.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
i386.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
ia64.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
loongarch.h LoongArch: gas: Add LVZ and LBT instructions support 2023-06-30 17:32:28 +08:00
m68hc11.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
m68k.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
metag.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
mips.h Add MIPS Allegrex CPU as a MIPS2-based CPU 2023-06-15 04:45:03 +01:00
mmix.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
mn10200.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
mn10300.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
moxie.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
msp430-decode.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
msp430.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
nds32.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
nfp.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
nios2.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
nios2r1.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
nios2r2.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
np1.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
ns32k.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
pdp11.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
pj.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
pn.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
ppc.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
pru.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
pyr.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
riscv-opc.h RISC-V: Supports Zcb extension. 2023-07-18 11:45:58 +08:00
riscv.h RISC-V: Supports Zcb extension. 2023-07-18 11:45:58 +08:00
rl78.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
rx.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
s12z.h Enable building the s12z target on Solaris hosts where REG_Y is defined in system header files. 2020-01-02 12:04:40 +00:00
s390.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
score-datadep.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
score-inst.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
sparc.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
spu-insns.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
spu.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tic4x.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tic6x-control-registers.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tic6x-insn-formats.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tic6x-opcode-table.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tic6x.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tic30.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tic54x.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tilegx.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
tilepro.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
v850.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
vax.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
visium.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
wasm.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30
xgate.h Update year range in copyright notice of binutils files 2023-01-01 21:50:11 +10:30