diff options
author | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-05-31 23:23:36 -0700 |
---|---|---|
committer | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-05-31 23:23:36 -0700 |
commit | a5f329c88265a09674d47ef89db4ad2188c88636 (patch) | |
tree | 2608f8e3e2c2791b392a013ffac626e53540d9c7 /opcodes-rvc | |
parent | c177bd3efcfc88596b99f4c90bfc5ffe0ae764e5 (diff) | |
download | riscv-opcodes-a5f329c88265a09674d47ef89db4ad2188c88636.zip riscv-opcodes-a5f329c88265a09674d47ef89db4ad2188c88636.tar.gz riscv-opcodes-a5f329c88265a09674d47ef89db4ad2188c88636.tar.bz2 |
RVC v1.7 encoding
Diffstat (limited to 'opcodes-rvc')
-rw-r--r-- | opcodes-rvc | 55 |
1 files changed, 34 insertions, 21 deletions
diff --git a/opcodes-rvc b/opcodes-rvc index 720d1ba..36dcdd4 100644 --- a/opcodes-rvc +++ b/opcodes-rvc @@ -1,24 +1,37 @@ # compressed instructions -c.li 1..0=0 15..13=0 12=ignore 11..2=ignore -c.lui 1..0=0 15..13=1 12=ignore 11..2=ignore -c.addi 1..0=0 15..13=4 12=ignore 11..2=ignore -c.addiw 1..0=0 15..13=7 12=ignore 11..2=ignore -c.slli 1..0=0 15..13=6 12=ignore 11..2=ignore -c.addi4 1..0=0 15..13=5 12=ignore 11..2=ignore -c.mv 1..0=0 15..13=2 12=0 11..2=ignore -c.jalr 1..0=0 15..13=2 12=1 11..2=ignore -c.add 1..0=0 15..13=3 12=0 11..2=ignore -c.addw 1..0=0 15..13=3 12=1 11..2=ignore -c.lw 1..0=1 15..13=0 12=ignore 11..2=ignore -c.sw 1..0=1 15..13=2 12=ignore 11..2=ignore -c.ld 1..0=1 15..13=1 12=ignore 11..2=ignore -c.sd 1..0=1 15..13=3 12=ignore 11..2=ignore -c.lwsp 1..0=1 15..13=4 12=ignore 11..2=ignore -c.ldsp 1..0=1 15..13=6 12=ignore 11..2=ignore -c.swsp 1..0=1 15..13=5 12=ignore 11..2=ignore -c.sdsp 1..0=1 15..13=7 12=ignore 11..2=ignore +# C0 encoding space +c.mv 1..0=0 15..13=0 12=0 11..2=ignore +c.add 1..0=0 15..13=0 12=1 11..2=ignore # c.ebreak when rd=0, rs2=0 +c.srai 1..0=0 15..13=1 12=ignore 11..2=ignore +c.sw 1..0=0 15..13=2 12=ignore 11..2=ignore +c.sd 1..0=0 15..13=3 12=ignore 11..2=ignore +c.sub 1..0=0 15..13=4 12=0 11..2=ignore +c.addw 1..0=0 15..13=4 12=1 11..2=ignore +c.add3 1..0=0 15..13=5 12..7=ignore 6..5=0 4..2=ignore +c.sub3 1..0=0 15..13=5 12..7=ignore 6..5=1 4..2=ignore +c.or3 1..0=0 15..13=5 12..7=ignore 6..5=2 4..2=ignore +c.and3 1..0=0 15..13=5 12..7=ignore 6..5=3 4..2=ignore +c.lw 1..0=0 15..13=6 12=ignore 11..2=ignore +c.ld 1..0=0 15..13=7 12=ignore 11..2=ignore -c.beqz 1..0=2 15..13=1 12=ignore 11..2=ignore -c.bnez 1..0=2 15..13=3 12=ignore 11..2=ignore -c.j 1..0=2 15..13=5 12=ignore 11..2=ignore + +# C1 encoding space +c.slli 1..0=1 15..13=0 12=ignore 11..2=ignore +c.srli 1..0=1 15..13=1 12=ignore 11..2=ignore +c.swsp 1..0=1 15..13=2 12=ignore 11..2=ignore +c.sdsp 1..0=1 15..13=3 12=ignore 11..2=ignore +c.slliw 1..0=1 15..13=4 12=ignore 11..2=ignore +c.addi4spn 1..0=1 15..13=5 12=ignore 11..2=ignore +c.lwsp 1..0=1 15..13=6 12=ignore 11..2=ignore +c.ldsp 1..0=1 15..13=7 12=ignore 11..2=ignore + +# C2 encoding space +c.j 1..0=2 15..13=0 12=ignore 11..2=ignore +c.jal 1..0=2 15..13=1 12=ignore 11..2=ignore +c.beqz 1..0=2 15..13=2 12=ignore 11..2=ignore +c.bnez 1..0=2 15..13=3 12=ignore 11..2=ignore +c.li 1..0=2 15..13=4 12=ignore 11..2=ignore # c.jr when simm=0 +c.lui 1..0=2 15..13=5 12=ignore 11..2=ignore # c.jalr when simm=0 +c.addi 1..0=2 15..13=6 12=ignore 11..2=ignore # c.addi16sp when rd=0 +c.addiw 1..0=2 15..13=7 12=ignore 11..2=ignore |