@pervognsen Even for a 5-bit immediate? Also they used the remaining 1/4 of the funct3 values under the BRANCH opcode. These have been sat reserved for a long time waiting for people to come up with some more interesting branch conditions, and I think there's reluctance to put non-branch instructions under that opcode.
I'm not enthused about fusion here because:
* Either destructive of original value (c.addi; c.beqz/bnez) or greater code size plus a clobber (c.li; beq/bne)
* For compressed case, has a range of +-256B instead of +-4096B
* More complex to implement than just some new branch conditions