Changeset 358 in dev for trunk/abdev/BasicCompiler32
- Timestamp:
- Nov 6, 2007, 2:35:15 AM (17 years ago)
- Location:
- trunk/abdev/BasicCompiler32
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler32/Compile_Func.cpp
r357 r358 20 20 if( lstrcmpi( FuncName, "_System_GetNowScopeCatchAddresses" ) == 0 )return FUNC_SYSTEM_GET_NOW_SCOPE_CATCH_ADDRESS; 21 21 if( lstrcmpi( FuncName, "_System_GetBp" ) == 0 ) return FUNC_SYSTEM_GET_BP; 22 if( lstrcmpi( FuncName, "_System_GetSp" ) == 0 ) return FUNC_SYSTEM_GET_SP; 22 23 if( lstrcmpi( FuncName, "GetDouble" ) == 0 ) return FUNC_GETDOUBLE; 23 24 if( lstrcmpi( FuncName, "GetSingle" ) == 0 ) return FUNC_GETSINGLE; … … 582 583 compiler.codeGenerator.op_mov_RR(REG_EAX,REG_EBP); 583 584 } 585 void Opcode_Func_System_Get_Sp() 586 { 587 //mov eax,esp 588 compiler.codeGenerator.op_mov_RR(REG_EAX,REG_ESP); 589 } 584 590 585 591 void Opcode_Func_GetPtrData(const char *Parameter,const int type){ … … 679 685 case FUNC_SYSTEM_GET_NOW_SCOPE_CATCH_ADDRESS: 680 686 if( isCallOn ) Exception::Opcode_Func_System_GetNowScopeCatchAddress(); 681 resultType.SetBasicType( DEF_ LONG);687 resultType.SetBasicType( DEF_PTR_VOID ); 682 688 break; 683 689 case FUNC_SYSTEM_GET_BP: … … 685 691 resultType.SetBasicType( DEF_LONG ); 686 692 break; 693 case FUNC_SYSTEM_GET_SP: 694 if( isCallOn ) Opcode_Func_System_Get_Sp(); 695 resultType.SetBasicType( DEF_LONG ); 696 break; 687 697 688 698 case FUNC_GETDOUBLE: -
trunk/abdev/BasicCompiler32/Compile_ProcOp.cpp
r355 r358 100 100 UserProc::CompileStartForUserProc( pBackUserProc ); 101 101 102 103 //ret104 compiler.codeGenerator.op_ret();105 }106 else if( userProc.GetName() == "_System_GetSp" ){107 //mov eax,esp108 compiler.codeGenerator.op_mov_RR(REG_EAX,REG_ESP);109 110 //add eax,PTR_SIZE111 compiler.codeGenerator.op_add_RV8(REG_EAX,PTR_SIZE);112 102 113 103 //ret -
trunk/abdev/BasicCompiler32/FunctionValue.h
r357 r358 19 19 #define FUNC_SYSTEM_GET_NOW_SCOPE_CATCH_ADDRESS 0x0623 20 20 #define FUNC_SYSTEM_GET_BP 0x0624 21 #define FUNC_SYSTEM_GET_SP 0x0625 21 22 22 23 //ポインタ -
trunk/abdev/BasicCompiler32/MakePeHdr.cpp
r357 r358 33 33 *pSub_System_Call_Destructor_of_GlobalObject, 34 34 *pSub_System_End, 35 *pSub_System_GetSp,36 35 *pSub_pow, 37 36 *pSub_calloc, … … 252 251 if(pSub_System_End=GetSubHash("_System_End",1)){ 253 252 pSub_System_End->Using(); 254 }255 256 if(pSub_System_GetSp=GetSubHash("_System_GetSp",1)){257 pSub_System_GetSp->Using();258 pSub_System_GetSp->ThisIsSystemProc();259 253 } 260 254
Note:
See TracChangeset
for help on using the changeset viewer.