Ignore:
Timestamp:
Jun 24, 2007, 6:50:40 PM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

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

    r159 r183  
     1#include <jenga/include/smoothie/Smoothie.h>
     2#include <jenga/include/smoothie/LexicalAnalysis.h>
     3
     4#include <Compiler.h>
     5
    16#include "../BasicCompiler_Common/common.h"
    27#include "Opcode.h"
     
    1823        SetStringQuotes( parameter );
    1924
    20         Operator_New( *pobj_DBClass->GetStringClassPtr(), "", parameter, Type( DEF_OBJECT, *pobj_DBClass->GetStringClassPtr() ) );
     25        Operator_New( *Smoothie::GetMeta().GetClasses().GetStringClassPtr(), "", parameter, Type( DEF_OBJECT, *Smoothie::GetMeta().GetClasses().GetStringClassPtr() ) );
    2126
    2227        free( parameter );
     
    241246    char member[VN_SIZE];
    242247    CClass::RefType refType;
    243     if( SplitMemberName( termFull, termLeft, member, refType ) ){
     248    if( CClass::SplitName( termFull, termLeft, member, refType ) ){
    244249        ///////////////////////////////////////////////////////////////////
    245250        // オブジェクトとメンバに分解できるとき
     
    253258        Type leftType;
    254259        if( GetTermType( termLeft, leftType, isLiteral, &isClassName ) ){
    255             if( isClassName == false && Smoothie::meta.blittableTypes.IsExist( leftType ) ){
     260            if( isClassName == false && Smoothie::GetMeta().blittableTypes.IsExist( leftType ) ){
    256261                // 左側のオブジェクト部分がBlittable型のとき
    257262
     
    259264                lstrcpy( temporary, termLeft );
    260265                sprintf( termLeft, "%s(%s)",
    261                     Smoothie::meta.blittableTypes.Find( leftType ).GetCreateStaticMethodFullName().c_str(),
     266                    Smoothie::GetMeta().blittableTypes.Find( leftType ).GetCreateStaticMethodFullName().c_str(),
    262267                    temporary );
    263268            }
     
    287292
    288293    if( pIsClassName ){
    289         if( pobj_DBClass->Find( termFull ) ){
     294        if( Smoothie::GetMeta().GetClasses().Find( termFull ) ){
    290295            *pIsClassName = true;
    291296            return true;
     
    304309    if(lstrcmpi(termFull,"This")==0 && isProcedureCallOnly == false ){
    305310        //Thisオブジェクト
    306         resultType.SetType( DEF_OBJECT, pobj_CompilingClass );
     311        resultType.SetType( DEF_OBJECT, Smoothie::Temp::pCompilingClass );
    307312
    308313        SetThisPtrToReg( UseReg );
     
    588593        }
    589594
    590         i2 = dataTable.AddBinary( binary, num * tempBaseType.GetSize() );
     595        i2 = Compiler::GetNativeCode().GetDataTable().AddBinary( binary, num * tempBaseType.GetSize() );
    591596
    592597        //mov reg,i2
     
    768773
    769774                        type_stack[sp]=DEF_OBJECT;
    770                         index_stack[sp]=(LONG_PTR)pobj_DBClass->GetStringClassPtr();
     775                        index_stack[sp]=(LONG_PTR)Smoothie::GetMeta().GetClasses().GetStringClassPtr();
    771776                        bLiteralCalculation=0;
    772777
     
    781786                    bLiteralCalculation=0;
    782787
    783                     i2 = dataTable.AddString( term, i3 );
     788                    i2 = Compiler::GetNativeCode().GetDataTable().AddString( term, i3 );
    784789
    785790                    //mov reg,i2
     
    877882                        }
    878883                        else{
    879                             index_stack[sp] = (LONG_PTR)pobj_DBClass->GetObjectClassPtr();
     884                            index_stack[sp] = (LONG_PTR)Smoothie::GetMeta().GetClasses().GetObjectClassPtr();
    880885                        }
    881886
     
    966971                        }
    967972                        else{
    968                             i3 = dataTable.Add( i64data );
     973                            i3 = Compiler::GetNativeCode().GetDataTable().Add( i64data );
    969974
    970975                            //movlpd xmm_reg,qword ptr[data table offset]
     
    9951000                        }
    9961001                        else{
    997                             i3=dataTable.Add( i32data );
     1002                            i3=Compiler::GetNativeCode().GetDataTable().Add( i32data );
    9981003
    9991004                            //movss xmm_reg,dword ptr[data table offset]
     
    11341139
    11351140            if(resultType.IsDouble()){
    1136                 i3 = dataTable.Add( i64data );
     1141                i3 = Compiler::GetNativeCode().GetDataTable().Add( i64data );
    11371142
    11381143                //movlpd xmm_reg,qword ptr[data table offset]
     
    11541159                memcpy(&i32data,&flt,sizeof(long));
    11551160
    1156                 i3 = dataTable.Add( i32data );
     1161                i3 = Compiler::GetNativeCode().GetDataTable().Add( i32data );
    11571162
    11581163                //movss xmm_reg,dword ptr[data table offset]
Note: See TracChangeset for help on using the changeset viewer.