Changeset 183 in dev for trunk/abdev/BasicCompiler32/NumOpe.cpp
- Timestamp:
- Jun 24, 2007, 6:50:40 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler32/NumOpe.cpp
r159 r183 1 #include <jenga/include/smoothie/Smoothie.h> 2 #include <jenga/include/smoothie/LexicalAnalysis.h> 3 4 #include <Compiler.h> 5 1 6 #include "../BasicCompiler_Common/common.h" 2 7 #include "Opcode.h" … … 39 44 op_push(REG_EAX); 40 45 } 41 else if(type==DEF_INTEGER || ( isUnicode&&type==DEF_CHAR)){46 else if(type==DEF_INTEGER || (Smoothie::IsUnicode()&&type==DEF_CHAR)){ 42 47 //movsx ebx,ax 43 48 OpBuffer[obp++]=(char)0x0F; … … 48 53 op_push(REG_EBX); 49 54 } 50 else if(type==DEF_SBYTE || ( isUnicode==false&&type==DEF_CHAR)){55 else if(type==DEF_SBYTE || (Smoothie::IsUnicode()==false&&type==DEF_CHAR)){ 51 56 //movsx ebx,al 52 57 OpBuffer[obp++]=(char)0x0F; … … 77 82 SetStringQuotes( parameter ); 78 83 79 Operator_New( * pobj_DBClass->GetStringClassPtr(), "", parameter, Type( DEF_OBJECT, *pobj_DBClass->GetStringClassPtr() ) );84 Operator_New( *Smoothie::GetMeta().GetClasses().GetStringClassPtr(), "", parameter, Type( DEF_OBJECT, *Smoothie::GetMeta().GetClasses().GetStringClassPtr() ) ); 80 85 81 86 free( parameter ); … … 244 249 char member[VN_SIZE]; 245 250 CClass::RefType refType; 246 if( SplitMemberName( termFull, termLeft, member, refType ) ){251 if( CClass::SplitName( termFull, termLeft, member, refType ) ){ 247 252 /////////////////////////////////////////////////////////////////// 248 253 // オブジェクトとメンバに分解できるとき … … 256 261 Type leftType; 257 262 if( GetTermType( termLeft, leftType, isLiteral, &isClassName ) ){ 258 if( isClassName == false && Smoothie:: meta.blittableTypes.IsExist( leftType ) ){263 if( isClassName == false && Smoothie::GetMeta().blittableTypes.IsExist( leftType ) ){ 259 264 // 左側のオブジェクト部分がBlittable型のとき 260 265 … … 262 267 lstrcpy( temporary, termLeft ); 263 268 sprintf( termLeft, "%s(%s)", 264 Smoothie:: meta.blittableTypes.Find( leftType ).GetCreateStaticMethodFullName().c_str(),269 Smoothie::GetMeta().blittableTypes.Find( leftType ).GetCreateStaticMethodFullName().c_str(), 265 270 temporary ); 266 271 } … … 291 296 292 297 if( pIsClassName ){ 293 if( pobj_DBClass->Find( termFull ) ){298 if( Smoothie::GetMeta().GetClasses().Find( termFull ) ){ 294 299 *pIsClassName = true; 295 300 return true; … … 307 312 if(lstrcmpi(termFull,"This")==0 && isProcedureCallOnly == false ){ 308 313 //Thisオブジェクト 309 resultType.SetType( DEF_OBJECT, pobj_CompilingClass );314 resultType.SetType( DEF_OBJECT, Smoothie::Temp::pCompilingClass ); 310 315 311 316 SetThisPtrToReg( useReg ); … … 588 593 } 589 594 590 i2 = dataTable.AddBinary( binary, num * tempBaseType.GetSize() );595 i2 = Compiler::GetNativeCode().GetDataTable().AddBinary( binary, num * tempBaseType.GetSize() ); 591 596 592 597 //mov eax,i2 … … 735 740 736 741 type_stack[sp]=DEF_OBJECT; 737 index_stack[sp]=(LONG_PTR) pobj_DBClass->GetStringClassPtr();742 index_stack[sp]=(LONG_PTR)Smoothie::GetMeta().GetClasses().GetStringClassPtr(); 738 743 bLiteralCalculation=0; 739 744 … … 746 751 bLiteralCalculation=0; 747 752 748 i2= dataTable.AddString(term,i3);753 i2=Compiler::GetNativeCode().GetDataTable().AddString(term,i3); 749 754 750 755 //push DataSize … … 833 838 } 834 839 else{ 835 index_stack[sp] = (LONG_PTR) pobj_DBClass->GetObjectClassPtr();840 index_stack[sp] = (LONG_PTR)Smoothie::GetMeta().GetClasses().GetObjectClassPtr(); 836 841 } 837 842
Note:
See TracChangeset
for help on using the changeset viewer.