9077baa850
variables to SSA. Also add dead block removal and block splicing. IR code is much better now.
71 lines
470 B
Text
71 lines
470 B
Text
# Simple terminals
|
|
CONST
|
|
REG
|
|
LABEL
|
|
BLOCK
|
|
PAIR
|
|
ANY
|
|
LOCAL
|
|
PHI
|
|
|
|
# Magic stack operations
|
|
PUSH
|
|
POP
|
|
SET
|
|
|
|
# Memory operations
|
|
LOAD
|
|
STORE
|
|
|
|
# Arithemetic operations
|
|
ADD
|
|
SUB
|
|
MUL
|
|
DIV
|
|
MOD
|
|
NEG
|
|
|
|
ADDF
|
|
SUBF
|
|
MULF
|
|
DIVF
|
|
NEGF
|
|
|
|
AND
|
|
OR
|
|
EOR
|
|
NOT
|
|
|
|
# Conversions
|
|
CII1
|
|
CII2
|
|
CII4
|
|
CII8
|
|
|
|
CIU1
|
|
CIU2
|
|
CIU4
|
|
CIU8
|
|
|
|
# Tristate comparisons
|
|
COMPARES
|
|
COMPAREU
|
|
|
|
# Boolean comparisons
|
|
IFEQ
|
|
IFLT
|
|
IFLE
|
|
|
|
# Procedures
|
|
CALL
|
|
|
|
# Flow control --- these never return
|
|
JUMP
|
|
CJUMP
|
|
RET
|
|
|
|
# Special
|
|
STACKADJUST
|
|
GETRET
|
|
SETRET
|
|
|