Ignore:
Timestamp:
Aug 11, 2007, 4:03:49 PM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler_Common/VariableOpe.cpp

    r265 r273  
    970970    // グローバル変数を追加
    971971    /////////////////////////
    972     extern int AllInitGlobalVarSize;
    973     extern int AllGlobalVarSize;
    974972
    975973    if( compiler.GetObjectModule().meta.GetGlobalVars().DuplicateCheck( Symbol( name ) ) ){
     
    997995
    998996    // 変数を追加
    999     compiler.GetObjectModule().meta.GetGlobalVars().push_back( pVar );
    1000 
    1001     //アラインメントを考慮
    1002     int alignment = 0;
    1003     if( pVar->GetType().IsStruct() ){
    1004         alignment = pVar->GetType().GetClass().GetFixedAlignment();
    1005     }
    1006 
    1007     if(InitBuf[0]||dwFlag==DIMFLAG_INITDEBUGVAR){
    1008         //初期バッファがあるとき
    1009 
    1010         if( alignment ){
    1011             if( AllInitGlobalVarSize % alignment ){
    1012                 AllInitGlobalVarSize += alignment - (AllInitGlobalVarSize % alignment);
    1013             }
    1014         }
    1015 
    1016         pVar->SetOffsetAddress( AllInitGlobalVarSize );
    1017         AllInitGlobalVarSize += pVar->GetMemorySize();
    1018     }
    1019     else{
    1020         //初期バッファがないとき
    1021 
    1022         if( alignment ){
    1023             if( AllGlobalVarSize % alignment ){
    1024                 AllGlobalVarSize += alignment - (AllGlobalVarSize % alignment);
    1025             }
    1026         }
    1027 
    1028         pVar->SetOffsetAddress( AllGlobalVarSize | 0x80000000 );
    1029         AllGlobalVarSize += pVar->GetMemorySize();
    1030     }
     997    compiler.GetObjectModule().meta.GetGlobalVars().Add(
     998        pVar,
     999        ( InitBuf[0] != 0 || dwFlag == DIMFLAG_INITDEBUGVAR )
     1000    );
    10311001
    10321002    if(InitBuf[0]){
     
    10351005            //初期バッファにデータをセット
    10361006            extern BYTE *initGlobalBuf;
    1037             initGlobalBuf=(BYTE *)HeapReAlloc(hHeap,
     1007            initGlobalBuf = (BYTE *)HeapReAlloc(
     1008                hHeap,
    10381009                HEAP_ZERO_MEMORY,
    10391010                initGlobalBuf,
    1040                 AllInitGlobalVarSize);
     1011                compiler.GetObjectModule().meta.GetGlobalVars().GetAllInitSize()
     1012            );
    10411013
    10421014            result = SetInitGlobalData(pVar->GetOffsetAddress(),
Note: See TracChangeset for help on using the changeset viewer.