Ignore:
Timestamp:
Nov 5, 2007, 3:26:20 AM (17 years ago)
Author:
dai_9181
Message:

例外処理機構実装中...

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler64/Compile_Func.cpp

    r349 r357  
    1616    if( lstrcmpi( FuncName, "__delegate_dynamicmethod_call" ) == 0 )    return FUNC_DELEGATE_DYNAMICMETHOD_CALL;
    1717    if( lstrcmpi( FuncName, "__delegate_staticmethod_call" ) == 0 )     return FUNC_DELEGATE_STATICMETHOD_CALL;
     18    if( lstrcmpi( FuncName, "_System_GetNowScopeCatchAddresses" ) == 0 )return FUNC_SYSTEM_GET_NOW_SCOPE_CATCH_ADDRESS;
    1819    if( lstrcmpi( FuncName, "GetDouble" ) == 0 )        return FUNC_GETDOUBLE;
    1920    if( lstrcmpi( FuncName, "GetSingle" ) == 0 )        return FUNC_GETSINGLE;
     
    441442}
    442443
     444void Opcode_Func_System_Get_Bp()
     445{
     446    //mov rax,rbp
     447    compiler.codeGenerator.op_mov_RR(REG_RAX,REG_RBP);
     448}
     449
    443450void Opcode_Func_GetPtrData( const char *Parameter, const int type ){
    444451    int reg=REG_RAX;
     
    492499            Opcode_Func_delegate_call( Parameter, resultType, false, isCallOn );
    493500            break;
     501        case FUNC_SYSTEM_GET_NOW_SCOPE_CATCH_ADDRESS:
     502            if( isCallOn ) Exception::Opcode_Func_System_GetNowScopeCatchAddress();
     503            resultType.SetBasicType( DEF_LONG );
     504            break;
     505        case FUNC_SYSTEM_GET_BP:
     506            if( isCallOn ) Opcode_Func_System_Get_Bp();
     507            resultType.SetBasicType( DEF_LONG );
     508            break;
    494509
    495510        case FUNC_GETDOUBLE:
Note: See TracChangeset for help on using the changeset viewer.