Or, just "to hell with it" and just take the entire opcode and stuff C into it, no regard for R/I/U/S and instead do whatever we like.
-| 15 14 13 | 12 | 11 10 9 8 7 | 6 5 4 3 2 | 1 0
- funct4 rd/rs1 rs2 op
-funct3 imm rd/rs1 imm op
-funct3 imm rs2 op
-funct3 imm rd â\80² op
-funct3 imm rs1 â\80² imm rd â\80² op
-funct3 imm rs1 â\80² imm rs2 â\80² op
- funct6 rd â\80² /rs1 â\80² funct2 rs2 â\80² op
-funct3 offset rs1 â\80² offset op
-funct3 jump target op
++----------+------+---------------------+---------------------+-------+
+| 15 14 13 | 12 | 11 10 9 8 7 | 6 5 4 3 2 | 1 0 |
++----------+------+---------------------+---------------------+-------+
+| funct4 | rd/rs1 | rs2 | op |
++----------+------+---------------------+---------------------+-------+
+|funct3 | imm | rd/rs1 | imm | op |
++----------+------+---------------------+---------------------+-------+
+|funct3 | imm | rs2 | op |
++----------+----------------------------+---------+-----------+-------+
+|funct3 | imm | rd' | op |
++----------+----------------------------+---------+-----------+-------+
+|funct3 | imm | rs1' | imm | rd' | op |
++----------+----------------+-----------+---------+-----------+-------+
+|funct3 | imm | rs1' | imm | rs2' | op |
++----------+----------------+-----------+---------+-----------+-------+
+| funct6 | rd'/rs1' | funct2 | rs2' | op |
++----------+----------------+-----------+---------+-----------+-------+
+|funct3 | offset | rs1' | offset | op |
++----------+----------------+-----------+---------------------+-------+
+|funct3 | jump target | op |
++----------+--------------------------------------------------+-------+
Questions
=========