mirror of
https://github.com/dingusdev/dingusppc.git
synced 2024-12-24 12:30:05 +00:00
One more fix for the segment reg instructions
This commit is contained in:
parent
07844c7388
commit
17e69677e8
@ -827,9 +827,6 @@ void opc_group31(PPCDisasmContext* ctx)
|
||||
ctx->instr_str = my_sprintf("%-8s%d, r%d", "mtsr", ra, rs);
|
||||
}
|
||||
else if (index == 7) { /* mtsrin */
|
||||
if (rb & 16)
|
||||
opc_illegal(ctx);
|
||||
else
|
||||
ctx->instr_str = my_sprintf("%-8sr%d, r%d", "mtsrin", rs, rb);
|
||||
}
|
||||
else if (index == 9) { /* tlbie */
|
||||
@ -1185,6 +1182,12 @@ void opc_group31(PPCDisasmContext* ctx)
|
||||
|
||||
fmt_threeop(ctx->instr_str, opcode, ra, rs, rb);
|
||||
return;
|
||||
case 595: /* mfsr */
|
||||
if (ra & 16)
|
||||
opc_illegal(ctx);
|
||||
else
|
||||
ctx->instr_str = my_sprintf("%-8sr%d, %d", "mfsr", rs, ra);
|
||||
break;
|
||||
case 597: /* lswi */
|
||||
if (rc_set) {
|
||||
opc_illegal(ctx);
|
||||
@ -1199,6 +1202,9 @@ void opc_group31(PPCDisasmContext* ctx)
|
||||
fmt_threeop_simm(ctx->instr_str, "lswi", rs, ra, rb);
|
||||
}
|
||||
break;
|
||||
case 659: /* mfsrin */
|
||||
ctx->instr_str = my_sprintf("%-8sr%d, r%d", "mtsrin", rs, rb);
|
||||
break;
|
||||
case 661: /* stswx */
|
||||
if (rc_set) {
|
||||
opc_illegal(ctx);
|
||||
|
Loading…
Reference in New Issue
Block a user