sh-dis/sh4/BF_S label
Zack Buhman 4dd67c7204 sh4: fix manual typos for SH2 instructions
These changes fix logical consistency and correctness issues with the
instruction definitions as printed in the manual.

The most serious issues were:

- div0u/div0s/div1 use `m` as a temporary variable which
  contradicts the existence of the `m` register number

- missing semicolons

- inconsistent references to immediate and displacement variable names
2024-04-21 13:16:14 +08:00

14 lines
275 B
Plaintext

10001111dddddddd
t ← ZeroExtend1(T);
pc ← SignExtend32(PC);
delayedpc ← SignExtend32(PC’’);
label ← SignExtend8(d) << 1;
IF (IsDelaySlot())
THROW ILLSLOT;
IF (t = 0)
{
temp ← ZeroExtend32(pc + 4 + label);
delayedpc ← temp;
}
PC’’ ← Register(delayedpc);