Ignore:
Timestamp:
Mar 9, 2007, 4:59:13 AM (17 years ago)
Author:
dai_9181
Message:

参照型の整数型パラメータに実数を代入すると「内部エラー」になってしまうバグを修正。
参照型の整数型にリテラル値を直接指定すると「内部エラー」になってしまうバグを修正。
バージョンをβ15にした。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BasicCompiler64/Compile_Calc_PushVar.cpp

    r62 r66  
    174174
    175175void SetReg_WholeVariable(int type,RELATIVE_VAR *pRelativeVar,int reg){
    176     int var_size;
    177 
    178     var_size=GetTypeSize(type,-1);
     176    int varSize;
     177
     178    varSize=GetTypeSize(type,-1);
    179179
    180180    if(pRelativeVar->dwKind==VAR_GLOBAL){
    181181        if(pRelativeVar->bOffsetOffset){
    182182            //mov reg, ptr[r11+offset]
    183             op_mov_RM(var_size,reg,REG_R11,(int)pRelativeVar->offset,MOD_BASE_DISP32);
     183            op_mov_RM(varSize,reg,REG_R11,(int)pRelativeVar->offset,MOD_BASE_DISP32);
    184184            obp-=sizeof(long);
    185185            pobj_GlobalVarSchedule->add();
     
    188188        else{
    189189            //mov reg, ptr[offset]
    190             op_mov_RM(var_size,reg,0,(int)pRelativeVar->offset,MOD_DISP32);
     190            op_mov_RM(varSize,reg,0,(int)pRelativeVar->offset,MOD_DISP32);
    191191            obp-=sizeof(long);
    192192            pobj_GlobalVarSchedule->add();
     
    215215        if(pRelativeVar->bOffsetOffset){
    216216            //mov reg, ptr[rsp+r11+offset]
    217             op_mov_RM_ex(var_size,reg,REG_RSP,REG_R11,(int)pRelativeVar->offset,USE_OFFSET);
     217            op_mov_RM_ex(varSize,reg,REG_RSP,REG_R11,(int)pRelativeVar->offset,USE_OFFSET);
    218218            obp-=sizeof(long);
    219219            AddLocalVarAddrSchedule();
     
    222222        else{
    223223            //mov reg, ptr[rsp+offset]
    224             op_mov_RM(var_size,reg,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32);
     224            op_mov_RM(varSize,reg,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32);
    225225            obp-=sizeof(long);
    226226            AddLocalVarAddrSchedule();
     
    249249directmem:
    250250        //mov reg, ptr[r11]
    251         op_mov_RM(var_size,reg,REG_R11,0,MOD_BASE);
     251        op_mov_RM(varSize,reg,REG_R11,0,MOD_BASE);
    252252    }
    253253}
Note: See TracChangeset for help on using the changeset viewer.