Fixed in commit e0d002f17d1db1ade2b8d24b4a7c7ab361256726

** Changed in: qemu
       Status: Confirmed => Fix Committed

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1071149

Title:
  target-mips: special3 instruction dinsm translation error

Status in QEMU:
  Fix Committed

Bug description:
  Function decode_opc() in translate.c calls function gen_bitops(),
  which has such prototype:

  /* special3 bitfield operations */
  static void gen_bitops (DisasContext *ctx, uint32_t opc, int rt,
                          int rs, int lsb, int msb)

  The code for DINSM instruction is:

  case OPC_DINSM ... OPC_DINS:
              check_insn(env, ctx, ISA_MIPS64R2);
              check_mips_64(ctx);
              gen_bitops(ctx, op1, rt, rs, sa, rd);
              break;

  But rd ≠ msb according to MIPS64R2 standard, rd = msb - 32.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1071149/+subscriptions

Reply via email to