Changeset 7737

Show
Ignore:
Timestamp:
03/10/08 05:27:45 (5 years ago)
Author:
gyuque
Message:

tinyaction: supported [dup] [greater]

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/actionscript/tinyaction/tavm/TAContext.as

    r7732 r7737  
    1010                public static const PUSH_NULL:int   = 2; 
    1111                public static const PUSH_REG:int    = 4; 
     12                public static const PUSH_BOOL:int   = 5; 
    1213                public static const PUSH_DOUBLE:int = 6; 
    1314                public static const PUSH_INT32:int  = 7; 
     
    255256                                        break; 
    256257                                         
     258                                case 0x4c: // dup 
     259                                        mCallFrames.pushData( mCallFrames.topOfDataStack() ); 
     260                                        break; 
     261                                         
    257262                                case 0x4e: // getMember 
    258263                                        { 
     
    297302                                                doCallMethod(val1, name, cm_args); 
    298303//                                      TATest.p("  ret= "+mCallFrames.topOfDataStack()); 
     304                                        } 
     305                                        break; 
     306 
     307                                case 0x67: // greater 
     308                                        { 
     309                                                val2 = mCallFrames.popData(); 
     310                                                val1 = mCallFrames.topOfDataStack(); 
     311 
     312                                                mCallFrames.swapTopData(val1 > val2); 
    299313                                        } 
    300314                                        break; 
     
    333347                                                                read_len++; 
    334348                                                                break; 
     349 
     350                                                        case PUSH_BOOL: 
     351                                                                mCallFrames.pushData( read_byte() != 0 ); 
     352                                                                read_len++; 
     353                                                                break; 
    335354                                                                 
    336355                                                        case PUSH_DOUBLE: