LTCD_070816.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:45:20 +02:00
1 parent d14bbc24f9
commit 0e9364ff4c
506 files changed
+157705 -41812

No files matched your search

+254
View File
@@ -0,0 +1,254 @@
//Intermediate compiler codes
#define EC_NULL 0x000
#define EC_NOP 0x001
#define EC_END_EXP 0x002
#define EC_LABEL 0x003
#define EC_CALL_START 0x004
#define EC_CALL_END 0x005
#define EC_RETURN_START 0x006
#define EC_RETURN_END 0x007
#define EC_NOP1 0x008
#define EC_IMM 0x009
#define EC_DOUBLE 0x00A
#define EC_STR_CONST 0x00B
#define EC_ABSOLUTE_ADDRESS 0x00C
#define EC_TYPE 0x00D //not used (yet)
#define EC_GET_LABEL 0x00E
#define EC_RBP 0x00F
#define EC_REG 0x010
#define EC_FS 0x011
#define EC_GS 0x012
#define EC_LEA 0x013
#define EC_MOV 0x014
#define EC_ADDRESS 0x015
#define EC_COM 0x016
#define EC_NOT 0x017
#define EC_UNARY_MINUS 0x018
#define EC_DEREF 0x019
#define EC__PP 0x01A
#define EC__MM 0x01B
#define EC_PP_ 0x01C
#define EC_MM_ 0x01D
#define EC_SHL 0x01E
#define EC_SHR 0x01F
#define EC_POWER 0x020
#define EC_MUL 0x021
#define EC_DIV 0x022
#define EC_MOD 0x023
#define EC_AND 0x024
#define EC_OR 0x025
#define EC_XOR 0x026
#define EC_ADD 0x027
#define EC_SUB 0x028
#define EC_EQUAL_EQUAL 0x029
#define EC_NOT_EQUAL 0x02A
#define EC_LESS 0x02B
#define EC_GREATER 0x02C
#define EC_LESS_EQUAL 0x02D
#define EC_GREATER_EQUAL 0x02E
#define EC_AND_AND 0x02F
#define EC_OR_OR 0x030
#define EC_XOR_XOR 0x031
#define EC_COLON 0x032
#define EC_QUESTION 0x033
#define EC_ASSIGN 0x034
#define EC_SHL_EQUAL 0x035
#define EC_SHR_EQUAL 0x036
#define EC_MUL_EQUAL 0x037
#define EC_DIV_EQUAL 0x038
#define EC_AND_EQUAL 0x039
#define EC_OR_EQUAL 0x03A
#define EC_XOR_EQUAL 0x03B
#define EC_ADD_EQUAL 0x03C
#define EC_SUB_EQUAL 0x03D
#define EC_ADD_RSP 0x03E
#define EC_ENTER 0x03F
#define EC_LEAVE 0x040
#define EC_RET 0x041
#define EC_CALL 0x042
#define EC_CALL_INDIRECT 0x043
#define EC_CALL_INDIRECT2 0x044
#define EC_IRQ 0x045
#define EC_CLI 0x046
#define EC_STI 0x047
#define EC_DISABLE_CACHE 0x048
#define EC_ENABLE_CACHE 0x049
#define EC_WBINVD 0x04A
#define EC_INVD 0x04B
#define EC_GET_FLAGS 0x04C
#define EC_SET_FLAGS 0x04D
#define EC_GET_BASE_PTR 0x04E
#define EC_SET_BASE_PTR 0x04F
#define EC_GET_STACK_PTR 0x050
#define EC_SET_STACK_PTR 0x051
#define EC_SET_RAX 0x052
#define EC_BT 0x053
#define EC_BTS 0x054
#define EC_BTR 0x055
#define EC_BTC 0x056
#define EC_BSF 0x057
#define EC_BSR 0x058
#define EC_INSQUE 0x059
#define EC_INSQUE_REV 0x05A
#define EC_REMQUE 0x05B
#define EC_STRLEN 0x05C
#define EC_MEMCPY 0x05D
#define EC_MEMSET 0x05E
#define EC_INPD 0x05F
#define EC_INPW 0x060
#define EC_INP 0x061
#define EC_OUTPD 0x062
#define EC_OUTPW 0x063
#define EC_OUTP 0x064
#define EC_RDTSC 0x065
#define EC_JMP 0x066
#define EC_SWITCH 0x067
#define EC_BR_ZERO 0x068
#define EC_BR_NOT_ZERO 0x069
//ADDED DURING PASS1
#define EC_BR_NOT_EQUAL 0x06A
#define EC_BR_EQUAL_EQUAL 0x06B
#define EC_BR_GREATER_EQUAL 0x06C
#define EC_BR_LESS_EQUAL 0x06D
#define EC_BR_GREATER 0x06E
#define EC_BR_LESS 0x06F
#define EC_BR_OR_OR_ZERO 0x070
#define EC_BR_OR_OR_NOT_ZERO 0x071
#define EC_SHL_CONST 0x072
#define EC_SHR_CONST 0x073
#define EC_ADD_CONST 0x074
#define EC_SUB_CONST 0x075
#define EC_PUSH_REGS 0x076
#define EC_POP_REGS 0x077
#define EC_BR_BT 0x078
#define EC_BR_BTS 0x079
#define EC_BR_BTR 0x07A
#define EC_BR_BTC 0x07B
#define EC_BR_NOT_BT 0x07C
#define EC_BR_NOT_BTS 0x07D
#define EC_BR_NOT_BTR 0x07E
#define EC_BR_NOT_BTC 0x07F
#define EC_CALL_END2 0x080
#define EC_LBTS 0x081
#define EC_LBTR 0x082
#define EC_LBTC 0x083
#define EC_BR_LBTS 0x084
#define EC_BR_LBTR 0x085
#define EC_BR_LBTC 0x086
#define EC_BR_NOT_LBTS 0x087
#define EC_BR_NOT_LBTR 0x088
#define EC_BR_NOT_LBTC 0x089
#define EC_BR_AND_AND_ZERO 0x08A
#define EC_BR_AND_AND_NOT_ZERO 0x08B
#define EC_BR_AND_ZERO 0x08C
#define EC_BR_AND_NOT_ZERO 0x08D
#define EC_MOD_EQUAL 0x08E
#define EC_CALL_EXTERN 0x08F
#define EC_ABSI8 0x090
#define EC_PUSH_CMP 0x091
#define EC_PREEMPT 0x092
#define EC_NUM_ENTRIES 0x093
#define KW_INCLUDE 0
#define KW_DEFINE 1
#define KW_UNION 2
#define KW_CATCH 3
#define KW_CLASS 4
#define KW_TRY 5
#define KW_IF 6
#define KW_ELSE 7
#define KW_FOR 8
#define KW_WHILE 9
#define KW_EXTERN 10
#define KW_LTEXTERN 11
#define KW_RETURN 12
#define KW_SIZEOF 13
#define KW_INTERNAL 14
#define KW_FMTSTR 15
#define KW_FMTDATA 16
#define KW_OUTPUT_FUN 17
#define KW_INPUT_FUN 18
#define KW_COUT 19
#define KW_DO 20
#define KW_ASM 21
#define KW_GOTO 22
#define KW_EXE 23
#define KW_BREAK 24
#define KW_CONTINUE 25
#define KW_SWITCH 26
#define KW_CASE 27
#define KW_DEFAULT 28
#define KW_PUBLIC 29
#define KW_OFFSET 30
#define KW_TYPEOF 31
#define KW_IMPORT 32
#define KW_LTIMPORT 33
#define KW_COUTLN 34
#define KW_IFDEF 35
#define KW_IFNDEF 36
#define KW_ENDIF 37
#define KW_ASSERT 38
#define KW_REG 39
#define KW_NOREG 40
#define KW_NOUNUSEDWARN 41
#define KW_HELP_INDEX 42
#define KW_HELP_FILE 43
#define AKW_ALIGN 64
#define AKW_END 65
#define AKW_U1 66
#define AKW_U2 67
#define AKW_U4 68
#define AKW_U8 69
#define AKW_DU1 70
#define AKW_DU2 71
#define AKW_DU4 72
#define AKW_DU8 73
#define AKW_DUP 74
#define AKW_ORG 75
#define AKW_STRUC 76
#define AKW_ENDS 77
#define AKW_USE16 78
#define AKW_USE32 79
#define AKW_USE64 80
#define AKW_IMPORT 81
#define AKW_EXPORT 82
#define AKW_INSERT 83
#define AKW_LIST 84
#define AKW_NOLIST 85
#define AKW_INSERT_COMPRESSED 86