2016-09-24 16:31:35 +00:00
|
|
|
# Flags:
|
|
|
|
# S: has size (use in CONST1, CONST2, CONST4, CONST8 forms)
|
|
|
|
# V: has no size (use in JUMP, CJUMP, RET forms)
|
2016-09-26 20:12:46 +00:00
|
|
|
#
|
|
|
|
# Types:
|
|
|
|
# I, F: integer, float
|
|
|
|
# A: any (will be coerced to I or F during IR postprocessing)
|
|
|
|
#
|
|
|
|
# Any instruction with an A type must be followed by the corresponding F
|
|
|
|
# version.
|
2016-09-24 16:31:35 +00:00
|
|
|
|
|
|
|
# Simple terminals
|
2016-09-26 20:12:46 +00:00
|
|
|
SA.. CONST
|
|
|
|
SF.. CONSTF
|
|
|
|
SA.. REG
|
|
|
|
SF.. REGF
|
|
|
|
SI.. LABEL
|
|
|
|
SI.. BLOCK
|
|
|
|
V... PAIR
|
|
|
|
SA.. ANY
|
|
|
|
SF.. ANYF
|
|
|
|
S... LOCAL
|
|
|
|
S... PHI
|
2016-09-24 16:31:35 +00:00
|
|
|
|
|
|
|
# Magic stack operations
|
2016-09-26 20:12:46 +00:00
|
|
|
S.A. PUSH
|
|
|
|
S.F. PUSHF
|
|
|
|
SA.. POP
|
|
|
|
SF.. POPF
|
|
|
|
|
|
|
|
#... Memory operations
|
|
|
|
SAI. LOAD
|
|
|
|
SFI. LOADF
|
|
|
|
S.IA STORE
|
|
|
|
S.IF STOREF
|
2016-09-24 16:31:35 +00:00
|
|
|
|
|
|
|
# Arithemetic operations
|
2016-09-26 20:12:46 +00:00
|
|
|
SIII ADD
|
|
|
|
SIII SUB
|
|
|
|
SIII MUL
|
|
|
|
SIII DIV
|
|
|
|
SIII MOD
|
|
|
|
SIII NEG
|
|
|
|
|
|
|
|
SFFF ADDF
|
|
|
|
SFFF SUBF
|
|
|
|
SFFF MULF
|
|
|
|
SFFF DIVF
|
|
|
|
SFFF NEGF
|
|
|
|
|
|
|
|
SIII AND
|
|
|
|
SIII OR
|
|
|
|
SIII EOR
|
|
|
|
SIII NOT
|
|
|
|
|
2016-09-24 16:31:35 +00:00
|
|
|
# Conversions
|
2016-09-26 20:12:46 +00:00
|
|
|
SIII CII1
|
|
|
|
SIII CII2
|
|
|
|
SIII CII4
|
|
|
|
SIII CII8
|
|
|
|
|
|
|
|
SIII CIU1
|
|
|
|
SIII CIU2
|
|
|
|
SIII CIU4
|
|
|
|
SIII CIU8
|
|
|
|
|
2016-09-24 16:31:35 +00:00
|
|
|
# Tristate comparisons
|
2016-09-26 20:12:46 +00:00
|
|
|
SIII COMPARES
|
|
|
|
SIII COMPAREU
|
|
|
|
|
2016-09-24 16:31:35 +00:00
|
|
|
# Boolean comparisons
|
2016-09-26 20:12:46 +00:00
|
|
|
SIII IFEQ
|
|
|
|
SIII IFLT
|
|
|
|
SIII IFLE
|
|
|
|
|
2016-09-24 16:31:35 +00:00
|
|
|
# Procedures
|
2016-09-26 20:12:46 +00:00
|
|
|
VI.. CALL
|
|
|
|
|
2016-09-24 16:31:35 +00:00
|
|
|
# Flow control --- these never return
|
2016-09-26 20:12:46 +00:00
|
|
|
V.I. JUMP
|
|
|
|
VIII CJUMPEQ
|
|
|
|
VIII CJUMPLT
|
|
|
|
VIII CJUMPLE
|
|
|
|
V... RET
|
2016-09-24 16:31:35 +00:00
|
|
|
|
|
|
|
# Special
|
2016-09-26 20:12:46 +00:00
|
|
|
SI.. STACKADJUST
|
|
|
|
SA.. GETRET
|
|
|
|
SF.. GETRETF
|
|
|
|
S.A. SETRET
|
|
|
|
S.F. SETRETF
|
2016-09-24 16:31:35 +00:00
|
|
|
|