diff options
Diffstat (limited to 'extensions')
-rw-r--r-- | extensions/rv32_zclsd | 9 | ||||
-rw-r--r-- | extensions/rv32_zilsd | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/extensions/rv32_zclsd b/extensions/rv32_zclsd new file mode 100644 index 0000000..f8d7e82 --- /dev/null +++ b/extensions/rv32_zclsd @@ -0,0 +1,9 @@ +# Compressed load/store pair for RV32 + +# quadrant 0 +$pseudo_op rv32_c_f::c.flw c.ld rd_p_e rs1_p c_uimm8lo c_uimm8hi 2..0=0 15..13=3 +$pseudo_op rv32_c_f::c.fsw c.sd rs1_p rs2_p_e c_uimm8hi c_uimm8lo 2..0=0 15..13=7 + +#quadrant 2 +$pseudo_op rv32_c_f::c.flwsp c.ldsp rd_n0_e c_uimm9sphi c_uimm9splo 1..0=2 15..13=3 7=0 +$pseudo_op rv32_c_f::c.fswsp c.sdsp c_rs2_e c_uimm9sp_s 2..0=2 15..13=7 diff --git a/extensions/rv32_zilsd b/extensions/rv32_zilsd new file mode 100644 index 0000000..b9682e4 --- /dev/null +++ b/extensions/rv32_zilsd @@ -0,0 +1,4 @@ +# Load/store pair for RV32 + +$pseudo_op rv64_i::ld ld rd_e rs1 imm12 14..12=3 7..2=0x00 1..0=3 +$pseudo_op rv64_i::ld ld imm12hi rs1 rs2_e imm12lo 20=0 14..12=3 6..2=0x08 1..0=3 |