These changes fix logical consistency and correctness issues with the instruction definitions as printed in the SH4 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
11 lines
232 B
Plaintext
11 lines
232 B
Plaintext
1111001111111101
|
|
Available only when PR=0
|
|
sr ← ZeroExtend32(SR);
|
|
sz ← ZeroExtend1(FPSCR.SZ);
|
|
IF (FpuIsDisabled(sr) AND IsDelaySlot())
|
|
THROW SLOTFPUDIS;
|
|
IF (FpuIsDisabled(sr))
|
|
THROW FPUDIS;
|
|
sz ← sz ⊕ 1;
|
|
FPSCR.SZ ← Bit(sz);
|