Ignore:
Timestamp:
Jul 23, 2007, 3:24:20 AM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

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

    r226 r228  
    6767    ////////////////////
    6868
     69    int jmpOffset = 5;
     70
    6971    if(idCalc==CALC_PE){
    7072        //  reg1 <= reg2
     
    7274            //符号あり演算
    7375            //jle
    74             OpBuffer[obp++]=(char)0x7E;
     76            compiler.codeGenerator.op_jle( jmpOffset );
    7577        }
    7678        else{
    7779            //符号なし演算
    7880            //jbe
    79             OpBuffer[obp++]=(char)0x76;
     81            compiler.codeGenerator.op_jbe( jmpOffset );
    8082        }
    8183    }
     
    8587            //符号あり演算
    8688            //jge
    87             OpBuffer[obp++]=(char)0x7D;
     89            compiler.codeGenerator.op_jge( jmpOffset );
    8890        }
    8991        else{
    9092            //符号なし演算
    9193            //jae
    92             OpBuffer[obp++]=(char)0x73;
     94            compiler.codeGenerator.op_jae( jmpOffset );
    9395        }
    9496    }
     
    98100            //符号あり演算
    99101            //jl
    100             OpBuffer[obp++]=(char)0x7C;
     102            compiler.codeGenerator.op_jl( jmpOffset );
    101103        }
    102104        else{
    103105            //符号なし演算
    104106            //jb
    105             OpBuffer[obp++]=(char)0x72;
     107            compiler.codeGenerator.op_jb( jmpOffset );
    106108        }
    107109    }
     
    111113            //符号あり演算
    112114            //jg
    113             OpBuffer[obp++]=(char)0x7F;
     115            compiler.codeGenerator.op_jg( jmpOffset );
    114116        }
    115117        else{
    116118            //符号なし演算
    117119            //ja
    118             OpBuffer[obp++]=(char)0x77;
     120            compiler.codeGenerator.op_ja( jmpOffset );
    119121        }
    120122    }
     
    123125
    124126        //jne
    125         OpBuffer[obp++]=(char)0x75;
     127        compiler.codeGenerator.op_jne( jmpOffset );
    126128    }
    127129    else if(idCalc==CALC_EQUAL){
     
    129131
    130132        //je
    131         OpBuffer[obp++]=(char)0x74;
     133        compiler.codeGenerator.op_je( jmpOffset );
    132134    }
    133     OpBuffer[obp++]=(char)0x05;
    134135
    135136
     
    142143
    143144    //jmp 7(次のmovを飛び越す)
    144     OpBuffer[obp++]=(char)0xEB;
    145     OpBuffer[obp++]=(char)0x07;
     145    compiler.codeGenerator.op_jge( 7 );
    146146
    147147
Note: See TracChangeset for help on using the changeset viewer.