The previous implementation always made space for XLEN sized registers, in RV32D this leads to overlaps