aboutsummaryrefslogtreecommitdiff
path: root/src/as_op.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/as_op.h')
-rw-r--r--src/as_op.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/as_op.h b/src/as_op.h
index dcd77e0..bded9e4 100644
--- a/src/as_op.h
+++ b/src/as_op.h
@@ -2,12 +2,27 @@
#define FVM_AS_OP_H_
enum op {
- ADD, SUB, MUL, DIV, MOD, EQ,
- // place holder for the end of the table
- OPEND
+ OP_SP, OP_SSP, OP_BP, OP_SBP, OP_PC, OP_RV, OP_SRV,
+ OP_IMM,
+ OP_LD8, OP_LD16, OP_LD32, OP_LD,
+ OP_ST8, OP_ST16, OP_ST32, OP_ST,
+ OP_DUP, OP_POP, OP_SWAP, OP_OVER, OP_ROT,
+ OP_ADD, OP_SUB, OP_DIV, OP_MUL, OP_MOD,
+ OP_SHR, OP_SHL, OP_SAR,
+ OP_AND, OP_OR, OP_NOT,
+ OP_BITAND, OP_BITOR, OP_XOR, OP_INVERT,
+ OP_GT, OP_LT, OP_GE, OP_LE, OP_EQ, OP_NEQ,
+ OP_JMP, OP_JZ, OP_JNZ, OP_RET, OP_CALL, OP_SYSCALL,
+ OP_FADD, OP_FSUB, OP_FMUL, OP_FDIV,
+ OP_FGE, OP_FGT, OP_FLE, OP_FLT, OP_FEQ, OP_FNEQ,
+ OP_FTI, OP_ITF,
+ OP_EXIT,
+ OP_LDARG, OP_LDVAR, OP_STARG, OP_STVAR,
+ OP_END
};
enum op str2op(const char *str);
+int isOp(const char *str);
#endif