Originally Gitea issue #11 by jfng (gitea) on 2022-04-11
Add/Subtract From/Negate instruction checks
Instructions
D-form:
addi
addis
addic
addic.
subfic
MLS:D-form:
DX-form:
XO-form:
add
add.
subf
subf.
addc
addc.
adde
adde.
subfc
subfc.
subfe
subfe.
addme
addme.
addze
addze.
subfme
subfme.
subfze
subfze.
neg
neg.
Invalid forms
Prefixed Add:
GPR access
RA (read):
- D-form/MLS:D-form if
(RA != 0)
RB (read):
- XO-form, except:
addme/addme.
addze/addze.
subfme/subfme.
subfze/subfze.
neg/neg.
RT (write):
CR access
Write:
SPR access
XER (read):
XER (write):
- 'c' suffix (Carrying)
- 'e' suffix (Extended)
Add/Subtract From/Negate instruction checks
Instructions
D-form:
addiaddisaddicaddic.subficMLS:D-form:
paddiDX-form:
addpcisXO-form:
addadd.subfsubf.addcaddc.addeadde.subfcsubfc.subfesubfe.addmeaddme.addzeaddze.subfmesubfme.subfzesubfze.negneg.Invalid forms
Prefixed Add:
(R == 1) and (RA != 0)GPR access
RA (read):
(RA != 0)RB (read):
addme/addme.addze/addze.subfme/subfme.subfze/subfze.neg/neg.RT (write):
CR access
Write:
SPR access
XER (read):
XER (write):