Ignore:
Timestamp:
Aug 4, 2007, 4:36:34 AM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

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

    r255 r262  
    1616    //をセットしておかなければならない
    1717
    18     int jnz_back;
    19 
    2018
    2119    //jnzの番地
    22     jnz_back=obp;
     20    /*extern int obp;
     21    int jnz_back = obp;*/
    2322
    2423    if(bSomeObjects){
    2524        SetError();
    2625        //mov qword ptr[rsp+offset],rbx     ※スタックフレームを利用
    27         pobj_sf->push(REG_RBX);
     26        //pobj_sf->push(REG_RBX);
    2827
    2928        // ※ここでプッシュされた値はコンストラクタのthisポインタとなる
    3029        //mov qword ptr[rsp+offset],rax     ※スタックフレームを利用
    31         pobj_sf->push(REG_RAX);
     30        //pobj_sf->push(REG_RAX);
    3231    }
    3332
     
    7372
    7473    if(bSomeObjects){
     74        /*
    7575        //mov rax,qword ptr[rsp+offset]     ※スタックフレームを利用
    7676        pobj_sf->pop(REG_RAX);
     
    8787        //jnz ↑
    8888        compiler.codeGenerator.op_jne( jnz_back-obp, sizeof(long), false, true );
     89        */
    8990    }
    9091}
     
    180181
    181182    //mov rcx,DestructorProcAddr(デストラクタの関数ポインタ)
    182     compiler.codeGenerator.op_mov_RV(sizeof(_int64),REG_RCX,0);
    183     obp-=sizeof(long);
    184     pobj_SubAddrSchedule->add(&method->GetUserProc(),0);
    185     method->GetUserProc().Using();
    186     obp+=sizeof(long);
     183    compiler.codeGenerator.op_addressof( REG_RCX, &method->GetUserProc() );
    187184
    188185    //mov qword ptr[rax],rcx
Note: See TracChangeset for help on using the changeset viewer.