diff options
Diffstat (limited to 'opcodes-rvc')
-rw-r--r-- | opcodes-rvc | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/opcodes-rvc b/opcodes-rvc index af5dbff..64fc19a 100644 --- a/opcodes-rvc +++ b/opcodes-rvc @@ -1,5 +1,14 @@ # compressed instructions +# these aren't really pseudo-ops, but they overlay other encodings, +# so they are here to prevent parse_opcodes from barfing + +@c.nop 1..0=1 15..13=0 12=0 11..7=0 6..2=0 +@c.addi16sp 1..0=1 15..13=3 12=ignore 11..7=2 6..2=ignore +@c.jr 1..0=2 15..13=4 12=0 11..7=ignore 6..2=0 +@c.jalr 1..0=2 15..13=4 12=1 11..7=ignore 6..2=0 +@c.ebreak 1..0=2 15..13=4 12=1 11..7=0 6..2=0 + # C0 encoding space c.addi4spn 1..0=0 15..13=0 12=ignore 11..2=ignore c.fld 1..0=0 15..13=1 12=ignore 11..2=ignore # c.lq for RV128 @@ -21,8 +30,6 @@ c.sub 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=0 4..2=ignore c.xor 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=1 4..2=ignore c.or 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=2 4..2=ignore c.and 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=3 4..2=ignore -c.subw 1..0=1 15..13=4 12=1 11..10=3 9..7=ignore 6..5=0 4..2=ignore -c.addw 1..0=1 15..13=4 12=1 11..10=3 9..7=ignore 6..5=1 4..2=ignore c.j 1..0=1 15..13=5 12=ignore 11..2=ignore c.beqz 1..0=1 15..13=6 12=ignore 11..2=ignore c.bnez 1..0=1 15..13=7 12=ignore 11..2=ignore |