Changeset 225 in dev for trunk/abdev/BasicCompiler32/Opcode.h
- Timestamp:
- Jul 21, 2007, 11:47:40 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler32/Opcode.h
r206 r225 3 3 #include <Type.h> 4 4 #include <Procedure.h> 5 6 7 //未定義の定数情報 8 #define IMAGE_FILE_MACHINE_AMD64 0x8664 9 10 11 //レジスタを示す定数 12 #define REG_NON -1 13 #define REG_EAX 0x00 //reg:000 14 #define REG_ECX 0x01 //reg:001 15 #define REG_EDX 0x02 //reg:010 16 #define REG_EBX 0x03 //reg:011 17 #define REG_ESP 0x04 //reg:100 18 #define REG_EBP 0x05 //reg:101 19 #define REG_ESI 0x06 //reg:110 20 #define REG_EDI 0x07 //reg:111 21 22 #define REG_RAX REG_EAX 23 #define REG_RCX REG_ECX 24 #define REG_RDX REG_EDX 25 #define REG_RBX REG_EBX 26 #define REG_RSP REG_ESP 27 #define REG_RBP REG_EBP 28 #define REG_RSI REG_ESI 29 #define REG_RDI REG_EDI 30 31 #define REGISTER_OPERAND(reg) (reg&0x07) 5 #include "MachineFixed.h" 6 32 7 33 8 //変数の種類 … … 190 165 void SetReg_RealVariable(int type,RELATIVE_VAR *pRelativeVar); 191 166 void SetReg_WholeVariable(int type,RELATIVE_VAR *pRelativeVar,int reg, bool is64Head = false); 192 void PushDoubleVariable(RELATIVE_VAR *pRelativeVar);193 167 void PushLongVariable(RELATIVE_VAR *pRelativeVar); 194 void PushIntegerVariable(RELATIVE_VAR *pRelativeVar);195 void PushWordVariable(RELATIVE_VAR *pRelativeVar);196 void PushCharVariable(RELATIVE_VAR *pRelativeVar);197 void PushByteVariable(RELATIVE_VAR *pRelativeVar);198 168 199 169 //Compile_Object.cpp … … 294 264 //////////////////////////////// 295 265 296 //Mod(モード)297 #define MOD_BASE (char)0x00298 #define MOD_DISP32 (char)0xFF299 #define MOD_BASE_DISP8 (char)0x40300 #define MOD_BASE_DISP32 (char)0x80301 #define MOD_REG (char)0xC0302 303 #define USE_OFFSET 1304 #define NON_OFFSET 0305 306 266 //op32_main.cpp 307 267 BOOL IsSafeReg(int reg); 268 /* 308 269 void op_mov_RV (int reg,int offset); 309 270 void op_mov_RV (int op_size,int reg,int offset); … … 357 318 void op_call(const UserProc *pUserProc); 358 319 void op_ret(); 320 */
Note:
See TracChangeset
for help on using the changeset viewer.