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
8 lines
185 B
Plaintext
8 lines
185 B
Plaintext
0000nnnn10000011
|
|
op1 ← SignExtend32(Rn);
|
|
IF (AddressUnavailable(op1))
|
|
THROW RADDERR, op1;
|
|
IF (NOT (MMU() AND DataAccessMiss(op1)))
|
|
IF (NOT (MMU() AND ReadProhibited(op1)))
|
|
PREF(op1);
|