Changeset 226 in dev for trunk/abdev/BasicCompiler64/Compile_Calc_PushVar.cpp
- Timestamp:
- Jul 22, 2007, 4:58:47 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler64/Compile_Calc_PushVar.cpp
r206 r226 1 1 #include "stdafx.h" 2 3 #include <Compiler.h> 2 4 3 5 #include "../BasicCompiler_Common/common.h" … … 71 73 else{ 72 74 //mov r11,qword ptr[rsp+offset] 73 op_mov_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32);75 compiler.codeGenerator.op_mov_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32); 74 76 obp-=sizeof(long); 75 77 AddLocalVarAddrSchedule(); … … 155 157 else{ 156 158 //mov r11,qword ptr[rsp+offset] 157 op_mov_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32);159 compiler.codeGenerator.op_mov_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32); 158 160 obp-=sizeof(long); 159 161 AddLocalVarAddrSchedule(); … … 183 185 if(pRelativeVar->bOffsetOffset){ 184 186 //mov reg, ptr[r11+offset] 185 op_mov_RM(varSize,reg,REG_R11,(int)pRelativeVar->offset,MOD_BASE_DISP32);187 compiler.codeGenerator.op_mov_RM(varSize,reg,REG_R11,(int)pRelativeVar->offset,MOD_BASE_DISP32); 186 188 obp-=sizeof(long); 187 189 pobj_GlobalVarSchedule->add(); … … 190 192 else{ 191 193 //mov reg, ptr[offset] 192 op_mov_RM(varSize,reg,0,(int)pRelativeVar->offset,MOD_DISP32);194 compiler.codeGenerator.op_mov_RM(varSize,reg,0,(int)pRelativeVar->offset,MOD_DISP32); 193 195 obp-=sizeof(long); 194 196 pobj_GlobalVarSchedule->add(); … … 199 201 if(pRelativeVar->bOffsetOffset){ 200 202 //add r11,qword ptr[offset] 201 op_add_RM(sizeof(_int64),REG_R11,REG_NON,(int)pRelativeVar->offset,MOD_DISP32);203 compiler.codeGenerator.op_add_RM(sizeof(_int64),REG_R11,REG_NON,(int)pRelativeVar->offset,MOD_DISP32); 202 204 obp-=sizeof(long); 203 205 pobj_GlobalVarSchedule->add(); … … 206 208 else{ 207 209 //mov r11,qword ptr[offset] 208 op_mov_RM(sizeof(_int64),REG_R11,REG_NON,(int)pRelativeVar->offset,MOD_DISP32);210 compiler.codeGenerator.op_mov_RM(sizeof(_int64),REG_R11,REG_NON,(int)pRelativeVar->offset,MOD_DISP32); 209 211 obp-=sizeof(long); 210 212 pobj_GlobalVarSchedule->add(); … … 217 219 if(pRelativeVar->bOffsetOffset){ 218 220 //mov reg, ptr[rsp+r11+offset] 219 op_mov_RM_ex(varSize,reg,REG_RSP,REG_R11,(int)pRelativeVar->offset,USE_OFFSET);221 compiler.codeGenerator.op_mov_RM_ex(varSize,reg,REG_RSP,REG_R11,(int)pRelativeVar->offset,USE_OFFSET); 220 222 obp-=sizeof(long); 221 223 AddLocalVarAddrSchedule(); … … 224 226 else{ 225 227 //mov reg, ptr[rsp+offset] 226 op_mov_RM(varSize,reg,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32);228 compiler.codeGenerator.op_mov_RM(varSize,reg,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32); 227 229 obp-=sizeof(long); 228 230 AddLocalVarAddrSchedule(); … … 233 235 if(pRelativeVar->bOffsetOffset){ 234 236 //add r11,qword ptr[rsp+offset] 235 op_add_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32);237 compiler.codeGenerator.op_add_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32); 236 238 obp-=sizeof(long); 237 239 AddLocalVarAddrSchedule(); … … 240 242 else{ 241 243 //mov r11,qword ptr[rsp+offset] 242 op_mov_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32);244 compiler.codeGenerator.op_mov_RM(sizeof(_int64),REG_R11,REG_RSP,(int)pRelativeVar->offset,MOD_BASE_DISP32); 243 245 obp-=sizeof(long); 244 246 AddLocalVarAddrSchedule(); … … 251 253 directmem: 252 254 //mov reg, ptr[r11] 253 op_mov_RM(varSize,reg,REG_R11,0,MOD_BASE);255 compiler.codeGenerator.op_mov_RM(varSize,reg,REG_R11,0,MOD_BASE); 254 256 } 255 257 }
Note:
See TracChangeset
for help on using the changeset viewer.