ZealOS/Demo/InFile/InEd.DD
2020-02-15 14:01:48 -06:00

228 lines
4.9 KiB
Text
Executable file

//Intermediate compiler codes
#define IC_END 0x00
#define IC_START 0x01
#define IC_NOP1 0x02
#define IC_END_EXP 0x03
#define IC_NOP2 0x04
#define IC_LABEL 0x05
#define IC_CALL_START 0x06
#define IC_CALL_END 0x07
#define IC_CALL_END2 0x08
#define IC_RETURN_VAL 0x09
#define IC_RETURN_VAL2 0x0A
#define IC_IMM_I64 0x0B
#define IC_IMM_F64 0x0C
#define IC_STR_CONST 0x0D
#define IC_ABS_ADDR 0x0E
#define IC_ADDR_IMPORT 0x0F
#define IC_HEAP_GLBL 0x10
#define IC_SIZEOF 0x11
#define IC_TYPE 0x12
#define IC_GET_LABEL 0x13
#define IC_RBP 0x14
#define IC_REG 0x15
#define IC_FS 0x16
#define IC_GS 0x17
#define IC_LEA 0x18
#define IC_MOV 0x19
#define IC_TO_I64 0x1A
#define IC_TO_F64 0x1B
#define IC_TO_BOOL 0x1C
#define IC_TOUPPER 0x1D
#define IC_HOLYC_TYPECAST 0x1E
#define IC_ADDR 0x1F
#define IC_COM 0x20
#define IC_NOT 0x21
#define IC_UNARY_MINUS 0x22
#define IC_DEREF 0x23
#define IC_DEREF_PP 0x24
#define IC_DEREF_MM 0x25
#define IC__PP 0x26
#define IC__MM 0x27
#define IC_PP_ 0x28
#define IC_MM_ 0x29
#define IC_SHL 0x2A
#define IC_SHR 0x2B
#define IC_SHL_CONST 0x2C
#define IC_SHR_CONST 0x2D
#define IC_POWER 0x2E
#define IC_MUL 0x2F
#define IC_DIV 0x30
#define IC_MOD 0x31
#define IC_AND 0x32
#define IC_OR 0x33
#define IC_XOR 0x34
#define IC_ADD 0x35
#define IC_SUB 0x36
#define IC_ADD_CONST 0x37
#define IC_SUB_CONST 0x38
#define IC_EQU_EQU 0x39
#define IC_NOT_EQU 0x3A
#define IC_LESS 0x3B
#define IC_GREATER 0x3C
#define IC_LESS_EQU 0x3D
#define IC_GREATER_EQU 0x3E
#define IC_PUSH_CMP 0x3F
#define IC_AND_AND 0x40
#define IC_OR_OR 0x41
#define IC_XOR_XOR 0x42
#define IC_COLON 0x43
#define IC_QUESTION 0x44
#define IC_ASSIGN 0x45
#define IC_ASSIGN_PP 0x46
#define IC_ASSIGN_MM 0x47
#define IC_SHL_EQU 0x48
#define IC_SHR_EQU 0x49
#define IC_MUL_EQU 0x4A
#define IC_DIV_EQU 0x4B
#define IC_MOD_EQU 0x4C
#define IC_AND_EQU 0x4D
#define IC_OR_EQU 0x4E
#define IC_XOR_EQU 0x4F
#define IC_ADD_EQU 0x50
#define IC_SUB_EQU 0x51
#define IC_JMP 0x52
#define IC_SWITCH 0x53
#define IC_NOBOUND_SWITCH 0x54
#define IC_ADD_RSP 0x55
#define IC_ADD_RSP1 0xC1
#define IC_ENTER 0x56
#define IC_PUSH_REGS 0x57
#define IC_POP_REGS 0x58
#define IC_LEAVE 0x59
#define IC_RET 0x5A
#define IC_CALL 0x5B
#define IC_CALL_INDIRECT 0x5C
#define IC_CALL_INDIRECT2 0x5D
#define IC_CALL_IMPORT 0x5E
#define IC_CALL_EXTERN 0x5F
#define IC_IRQ 0x60
#define IC_ASM 0x61
#define IC_CLI 0x62
#define IC_STI 0x63
#define IC_CLD 0x65
#define IC_STD 0x66
#define IC_HLT 0x67
#define IC_PUSHFD 0x68
#define IC_POPFD 0x69
#define IC_PAUSE 0x6A
#define IC_CLFLUSH 0x6B
#define IC_INVLPG 0x6C
#define IC_WBINVD 0x6F
#define IC_INVD 0x70
#define IC_IN_U8 0x71
#define IC_IN_U16 0x72
#define IC_IN_U32 0x73
#define IC_OUT_U8 0x74
#define IC_OUT_U16 0x75
#define IC_OUT_U32 0x76
#define IC_GET_RFLAGS 0x77
#define IC_SET_RFLAGS 0x78
#define IC_GET_RAX 0x79
#define IC_SET_RAX 0x7A
#define IC_GET_RBP 0x7B
#define IC_SET_RBP 0x7C
#define IC_GET_RSP 0x7D
#define IC_SET_RSP 0x7E
#define IC_RIP 0x7F
#define IC_RDTSC 0x80
#define IC_BT 0x82
#define IC_BTS 0x83
#define IC_BTR 0x84
#define IC_BTC 0x85
#define IC_BEQU 0x86
#define IC_LBTS 0x87
#define IC_LBTR 0x88
#define IC_LBTC 0x89
#define IC_LBEQU 0x8A
#define IC_BSF 0x8B
#define IC_BSR 0x8C
#define IC_QUE_INS 0x8D
#define IC_QUE_INS_REV 0x8E
#define IC_QUE_REM 0x8F
#define IC_STRLEN 0x90
#define IC_MEMCPY 0x91
#define IC_MEMSET 0x92
#define IC_MEMSET_U16 0xC2
#define IC_MEMSET_U32 0xC3
#define IC_MEMSET_I64 0xC4
#define IC_BR_ZERO 0x93
#define IC_BR_NOT_ZERO 0x94
#define IC_BR_NOT_EQU 0x95
#define IC_BR_EQU_EQU 0x96
#define IC_BR_GREATER_EQU 0x97
#define IC_BR_LESS_EQU 0x98
#define IC_BR_GREATER 0x99
#define IC_BR_LESS 0x9A
#define IC_BR_NOT_EQU2 0x9B
#define IC_BR_EQU_EQU2 0x9C
#define IC_BR_GREATER_EQU2 0x9D
#define IC_BR_LESS_EQU2 0x9E
#define IC_BR_GREATER2 0x9F
#define IC_BR_LESS2 0xA0
#define IC_BR_AND_ZERO 0xA1
#define IC_BR_AND_NOT_ZERO 0xA2
#define IC_BR_AND_AND_ZERO 0xA3
#define IC_BR_AND_AND_NOT_ZERO 0xA4
#define IC_BR_OR_OR_ZERO 0xA5
#define IC_BR_OR_OR_NOT_ZERO 0xA6
#define IC_BR_BT 0xA7
#define IC_BR_BTS 0xA8
#define IC_BR_BTR 0xA9
#define IC_BR_BTC 0xAA
#define IC_BR_LBTS 0xAB
#define IC_BR_LBTR 0xAC
#define IC_BR_LBTC 0xAD
#define IC_BR_NOT_BT 0xAE
#define IC_BR_NOT_BTS 0xAF
#define IC_BR_NOT_BTR 0xB0
#define IC_BR_NOT_BTC 0xB1
#define IC_BR_NOT_LBTS 0xB2
#define IC_BR_NOT_LBTR 0xB3
#define IC_BR_NOT_LBTC 0xB4
#define IC_SWAP_U8 0xB5
#define IC_SWAP_U16 0xB6
#define IC_SWAP_U32 0xB7
#define IC_SWAP_I64 0xB8
#define IC_ABS_I64 0xB9
#define IC_SIGN_I64 0xBA
#define IC_MIN_I64 0xBB
#define IC_MIN_U64 0xBC
#define IC_MAX_I64 0xBD
#define IC_MAX_U64 0xBE
#define IC_LIMIT_I64 0xBF
#define IC_LIMIT_U64 0xC0
#define IC_ICS_NUM 0xC5