add
Six Arithmetic Instructions and
bisz
Addition bsh
div
Logical Shift jcc
Unsigned Division ldm
mod
Unsigned Modulo mul
Unsigned Multiplication nop
Subtraction or
stm
str
sub
undef
unkn
xor
add
Three Bitwise Instructions and
bisz
Bitwise AND bsh
div
Bitwise OR jcc
Bitwise XOR ldm
mod
mul
nop
or
stm
str
sub
undef
unkn
xor
add
Three Data Transfer Instructions and
bisz
Load Memory bsh
div
Store Memory jcc
Transfer Register Content ldm
mod
mul
nop
or
stm
str
sub
undef
unkn
xor
add
Two Logical Instructions and
bisz
Compare to Zero bsh
div
Jump Conditional jcc
ldm
mod
mul
nop
or
stm
str
sub
undef
unkn
xor
add
Three Other Instructions and
bisz
No Operation bsh
div
Undefine Register jcc
Unknown Mnemonic ldm
mod
mul
nop
or
stm
str
sub
undef
unkn
xor
All Instructions are equal ...
add t0, t1, t2
and t0, t1, t2
bsh t0, t1, t2
div t0, t1, t2
mod t0, t1, t2
... but some instructions are
mul t0, t1, t2
or t0, t1, t2 more equal than others
sub t0, t1, t2 bisz t0, , t2
xor t0, t1, t2 jcc t0, , t2
ldm t0, , t2
nop , ,
stm t0, , t2
str t0, , t2
undef , , t2
unkn , ,
What REIL can‘t do
FPU Instructions fadd
...
System Instructions int
...
Weird Instructions setend
...