On 3/16/21 9:03 AM, Georg Kotheimer wrote:
When decode_insn16() fails, we fall back to decode_RV32_64C() for
further compressed instruction decoding.

I think this is all dead code now. Certainly c.ld/c.sd are in insn16-64.decode and c.flw/c.fsw are in insn16-32.decode.

Digging, we failed to remove these functions here: f330433b363.

You are absolutely right there's a missing

              if (!decode_insn16(ctx, opcode)) {
                  /* fall back to old decoder */
-                decode_RV32_64C(ctx, opcode);
+                if (!decode_RV32_64C(ctx, opcode)) {
+                    gen_exception_illegal(ctx);

exception here, but we can remove the last remnants of the old decoder instead of patching them.


r~

Reply via email to