Ignore:
Timestamp:
Jun 24, 2007, 6:50:40 PM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

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

    r56 r183  
     1#include <jenga/include/smoothie/Smoothie.h>
     2
     3#include <Compiler.h>
     4
    15#include "../BasicCompiler_Common/common.h"
    26#include "Opcode.h"
     
    1014        //and reg,00000000FFFFFFFFh
    1115    }
    12     else if(type==DEF_INTEGER || (isUnicode&&type==DEF_CHAR)){
     16    else if(type==DEF_INTEGER || (Smoothie::IsUnicode()&&type==DEF_CHAR)){
    1317        //movsx reg64,reg16
    1418        op_movsx64_FromReg16(reg,reg);
     
    1822        op_and64_value(reg,(int)0xFFFF);
    1923    }
    20     else if(type==DEF_SBYTE || (isUnicode==false&&type==DEF_CHAR)){
     24    else if(type==DEF_SBYTE || (Smoothie::IsUnicode()==false&&type==DEF_CHAR)){
    2125        //movsx reg64,reg8
    2226        op_movsx64_FromReg8(reg,reg);
     
    2832}
    2933void ExtendTypeTo32(int type,int reg){
    30     if(type==DEF_INTEGER || (isUnicode&&type==DEF_CHAR)){
     34    if(type==DEF_INTEGER || (Smoothie::IsUnicode()&&type==DEF_CHAR)){
    3135        //movsx reg32,reg16
    3236        op_movsx32_FromReg16(reg,reg);
     
    3640        op_and32_value(reg,(int)0xFFFF);
    3741    }
    38     else if(type==DEF_SBYTE || (isUnicode==false&&type==DEF_CHAR)){
     42    else if(type==DEF_SBYTE || (Smoothie::IsUnicode()==false&&type==DEF_CHAR)){
    3943        //movsx reg32,reg8
    4044        op_movsx32_FromReg8(reg,reg);
     
    4650}
    4751void ExtendTypeTo16(int type,int reg){
    48     if(type==DEF_SBYTE || (isUnicode==false&&type==DEF_CHAR)){
     52    if(type==DEF_SBYTE || (Smoothie::IsUnicode()==false&&type==DEF_CHAR)){
    4953        //movsx reg16,reg8
    5054        op_movsx16_FromReg8(reg,reg);
     
    8589            int temp;
    8690            _int64 i64data=0x43f0000000000000;
    87             temp=dataTable.Add( i64data );
     91            temp=Compiler::GetNativeCode().GetDataTable().Add( i64data );
    8892            OpBuffer[obp++]=(char)0xF2;
    8993            OpBuffer[obp++]=(char)0x0F;
     
    144148            int temp;
    145149            long i32data=0x5f800000;
    146             temp=dataTable.Add( i32data );
     150            temp=Compiler::GetNativeCode().GetDataTable().Add( i32data );
    147151            OpBuffer[obp++]=(char)0xF3;
    148152            OpBuffer[obp++]=(char)0x0F;
Note: See TracChangeset for help on using the changeset viewer.