Changeset 248 in dev for trunk/abdev/BasicCompiler32/NumOpe_Relation.cpp
- Timestamp:
- Jul 29, 2007, 12:33:04 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler32/NumOpe_Relation.cpp
r245 r248 142 142 compiler.codeGenerator.op_cmp_RR( REG_EDX, REG_ECX ); 143 143 144 const CodeGenerator::PertialSchedule *pFalsePertialSchedule1;144 const PertialSchedule *pFalsePertialSchedule1; 145 145 if(IsSignedType(type_stack[sp-2])==0&&IsSignedType(type_stack[sp-1])==0){ 146 146 //符号なし演算 … … 156 156 } 157 157 158 const CodeGenerator::PertialSchedule *pTruePertialSchedule;158 const PertialSchedule *pTruePertialSchedule; 159 159 if(IsSignedType(type_stack[sp-2])==0&&IsSignedType(type_stack[sp-1])==0){ 160 160 //符号なし演算 … … 174 174 175 175 //ja FalseSchedule2(偽へジャンプ) 176 const CodeGenerator::PertialSchedule *pFalsePertialSchedule2 = compiler.codeGenerator.op_ja( 0, sizeof(char), true );176 const PertialSchedule *pFalsePertialSchedule2 = compiler.codeGenerator.op_ja( 0, sizeof(char), true ); 177 177 178 178 //TrueScheduleのジャンプ先の設定 … … 351 351 compiler.codeGenerator.op_cmp_RR( REG_EDX, REG_ECX ); 352 352 353 const CodeGenerator::PertialSchedule *pFalsePertialSchedule1;353 const PertialSchedule *pFalsePertialSchedule1; 354 354 if(IsSignedType(AnswerType)){ 355 355 //符号あり演算 … … 365 365 } 366 366 367 const CodeGenerator::PertialSchedule *pTruePertialSchedule;367 const PertialSchedule *pTruePertialSchedule; 368 368 if(IsSignedType(AnswerType)){ 369 369 //符号あり演算 … … 383 383 384 384 //jb FalseSchedule2(偽へジャンプ) 385 const CodeGenerator::PertialSchedule *pFalsePertialSchedule2 = compiler.codeGenerator.op_jb( 0, sizeof(char), true );385 const PertialSchedule *pFalsePertialSchedule2 = compiler.codeGenerator.op_jb( 0, sizeof(char), true ); 386 386 387 387 //TrueScheduleのジャンプ先の設定 … … 563 563 compiler.codeGenerator.op_cmp_RR( REG_EDX, REG_ECX ); 564 564 565 const CodeGenerator::PertialSchedule *pTruePertialSchedule1;565 const PertialSchedule *pTruePertialSchedule1; 566 566 if(IsSignedType(AnswerType)){ 567 567 //符号あり演算 … … 577 577 } 578 578 579 const CodeGenerator::PertialSchedule *pFalsePertialSchedule;579 const PertialSchedule *pFalsePertialSchedule; 580 580 if(IsSignedType(AnswerType)){ 581 581 //符号あり演算 … … 595 595 596 596 //jb TrueSchedule2(真へジャンプ) 597 const CodeGenerator::PertialSchedule *pTruePertialSchedule2 = compiler.codeGenerator.op_jb( 0, sizeof(char), true );597 const PertialSchedule *pTruePertialSchedule2 = compiler.codeGenerator.op_jb( 0, sizeof(char), true ); 598 598 599 599 //FalseScheduleのジャンプ先の設定 … … 771 771 compiler.codeGenerator.op_cmp_RR( REG_EDX, REG_ECX ); 772 772 773 const CodeGenerator::PertialSchedule *pTruePertialSchedule1;773 const PertialSchedule *pTruePertialSchedule1; 774 774 if(IsSignedType(AnswerType)){ 775 775 //符号有り … … 785 785 } 786 786 787 const CodeGenerator::PertialSchedule *pFalsePertialSchedule;787 const PertialSchedule *pFalsePertialSchedule; 788 788 if(IsSignedType(AnswerType)){ 789 789 //符号有り … … 803 803 804 804 //ja TrueSchedule2(真へジャンプ) 805 const CodeGenerator::PertialSchedule *pTruePertialSchedule2 = compiler.codeGenerator.op_ja( 0, sizeof(char), true );805 const PertialSchedule *pTruePertialSchedule2 = compiler.codeGenerator.op_ja( 0, sizeof(char), true ); 806 806 807 807 //FalseScheduleのジャンプ先の設定 … … 975 975 976 976 //jne TrueSchedule1(真へジャンプ) 977 const CodeGenerator::PertialSchedule *pTruePertialSchedule1 = compiler.codeGenerator.op_jne( 0, sizeof(char), true );977 const PertialSchedule *pTruePertialSchedule1 = compiler.codeGenerator.op_jne( 0, sizeof(char), true ); 978 978 979 979 //cmp edx,ecx … … 981 981 982 982 //jne TrueSchedule2(真へジャンプ) 983 const CodeGenerator::PertialSchedule *pTruePertialSchedule2 = compiler.codeGenerator.op_jne( 0, sizeof(char), true );983 const PertialSchedule *pTruePertialSchedule2 = compiler.codeGenerator.op_jne( 0, sizeof(char), true ); 984 984 985 985 //xor eax,eax(eaxを0にする) … … 1141 1141 1142 1142 //jne FalseSchedule1(偽へジャンプ) 1143 const CodeGenerator::PertialSchedule *pFalsePertialSchedule1 = compiler.codeGenerator.op_jne( 0, sizeof(char), true );1143 const PertialSchedule *pFalsePertialSchedule1 = compiler.codeGenerator.op_jne( 0, sizeof(char), true ); 1144 1144 1145 1145 //cmp edx,ecx … … 1147 1147 1148 1148 //jne FalseSchedule2(偽へジャンプ) 1149 const CodeGenerator::PertialSchedule *pFalsePertialSchedule2 = compiler.codeGenerator.op_jne( 0, sizeof(char), true );1149 const PertialSchedule *pFalsePertialSchedule2 = compiler.codeGenerator.op_jne( 0, sizeof(char), true ); 1150 1150 1151 1151 //mov eax,1
Note:
See TracChangeset
for help on using the changeset viewer.