1# compressed instructions 2 3# these aren't really pseudo-ops, but they overlay other encodings, 4# so they are here to prevent parse_opcodes from barfing 5 6@c.nop 1..0=1 15..13=0 12=0 11..7=0 6..2=0 7@c.addi16sp 1..0=1 15..13=3 12=ignore 11..7=2 6..2=ignore 8@c.jr 1..0=2 15..13=4 12=0 11..7=ignore 6..2=0 9@c.jalr 1..0=2 15..13=4 12=1 11..7=ignore 6..2=0 10@c.ebreak 1..0=2 15..13=4 12=1 11..7=0 6..2=0 11 12# C0 encoding space 13c.addi4spn 1..0=0 15..13=0 12=ignore 11..2=ignore 14c.fld 1..0=0 15..13=1 12=ignore 11..2=ignore # c.lq for RV128 15c.lw 1..0=0 15..13=2 12=ignore 11..2=ignore 16c.flw 1..0=0 15..13=3 12=ignore 11..2=ignore # c.ld for RV64 17c.fsd 1..0=0 15..13=5 12=ignore 11..2=ignore # c.sq for RV128 18c.sw 1..0=0 15..13=6 12=ignore 11..2=ignore 19c.fsw 1..0=0 15..13=7 12=ignore 11..2=ignore # c.sd for RV64 20 21# C1 encoding space 22c.addi 1..0=1 15..13=0 12=ignore 11..2=ignore 23c.jal 1..0=1 15..13=1 12=ignore 11..2=ignore # c.addiw for RV64 24c.li 1..0=1 15..13=2 12=ignore 11..2=ignore 25c.lui 1..0=1 15..13=3 12=ignore 11..2=ignore # c.addi16sp when rd=2 26c.srli 1..0=1 15..13=4 12=ignore 11..10=0 9..2=ignore 27c.srai 1..0=1 15..13=4 12=ignore 11..10=1 9..2=ignore 28c.andi 1..0=1 15..13=4 12=ignore 11..10=2 9..2=ignore 29c.sub 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=0 4..2=ignore 30c.xor 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=1 4..2=ignore 31c.or 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=2 4..2=ignore 32c.and 1..0=1 15..13=4 12=0 11..10=3 9..7=ignore 6..5=3 4..2=ignore 33c.j 1..0=1 15..13=5 12=ignore 11..2=ignore 34c.beqz 1..0=1 15..13=6 12=ignore 11..2=ignore 35c.bnez 1..0=1 15..13=7 12=ignore 11..2=ignore 36 37# C2 encoding space 38c.slli 1..0=2 15..13=0 12=ignore 11..2=ignore 39c.fldsp 1..0=2 15..13=1 12=ignore 11..2=ignore # c.lqsp for RV128 40c.lwsp 1..0=2 15..13=2 12=ignore 11..2=ignore 41c.flwsp 1..0=2 15..13=3 12=ignore 11..2=ignore # c.ldsp for RV64 42c.mv 1..0=2 15..13=4 12=0 11..2=ignore # !rs2 = c.jr 43c.add 1..0=2 15..13=4 12=1 11..2=ignore # !rs1 = c.ebreak; !rs2=c.jalr 44c.fsdsp 1..0=2 15..13=5 12=ignore 11..2=ignore # c.sqsp for RV128 45c.swsp 1..0=2 15..13=6 12=ignore 11..2=ignore 46c.fswsp 1..0=2 15..13=7 12=ignore 11..2=ignore # c.sdsp for RV64 47