JaegerMonkey/OpcodeProgress

From MozillaWiki
Jump to navigation Jump to search

This page is used for tracking which opcodes have been implemented for JaegerMonkey.

Opcode Status Notes High Priority?
JSOP_NOP IMPLEMENTED fast path Y
JSOP_PUSH IMPLEMENTED fast path Y
JSOP_POPV IMPLEMENTED fast path Y
JSOP_ENTERWITH


JSOP_LEAVEWITH


JSOP_RETURN IMPLEMENTED fast path Y
JSOP_GOTO IMPLEMENTED
Y
JSOP_IFEQ IMPLEMENTED
Y
JSOP_IFNE IMPLEMENTED
Y
JSOP_ARGUMENTS IMPLEMENTED

JSOP_FORARG


JSOP_FORLOCAL IMPLEMENTED

JSOP_DUP IMPLEMENTED fast path Y
JSOP_DUP2 IMPLEMENTED fast path Y
JSOP_SETCONST


JSOP_BITOR IMPLEMENTED
Y
JSOP_BITXOR IMPLEMENTED
Y
JSOP_BITAND IMPLEMENTED fast path Y
JSOP_EQ IMPLEMENTED (with FIXMEs)
Y
JSOP_NE IMPLEMENTED (with FIXMEs)
Y
JSOP_LT IMPLEMENTED
Y
JSOP_LE IMPLEMENTED
Y
JSOP_GT IMPLEMENTED
Y
JSOP_GE IMPLEMENTED
Y
JSOP_LSH IMPLEMENTED fast path Y
JSOP_RSH IMPLEMENTED fast path Y
JSOP_URSH IMPLEMENTED
Y
JSOP_ADD IMPLEMENTED
Y
JSOP_SUB IMPLEMENTED
Y
JSOP_MUL IMPLEMENTED
Y
JSOP_DIV IMPLEMENTED
Y
JSOP_MOD IMPLEMENTED
Y
JSOP_NOT IMPLEMENTED
Y
JSOP_BITNOT IMPLEMENTED
Y
JSOP_NEG IMPLEMENTED
Y
JSOP_POS


JSOP_DELNAME


JSOP_DELPROP


JSOP_DELELEM


JSOP_TYPEOF IMPLEMENTED

JSOP_VOID IMPLEMENTED

JSOP_INCNAME IMPLEMENTED

JSOP_INCPROP IMPLEMENTED

JSOP_INCELEM IMPLEMENTED

JSOP_DECNAME IMPLEMENTED

JSOP_DECPROP IMPLEMENTED

JSOP_DECELEM IMPLEMENTED

JSOP_NAMEINC IMPLEMENTED

JSOP_PROPINC IMPLEMENTED
Y
JSOP_ELEMINC IMPLEMENTED

JSOP_NAMEDEC IMPLEMENTED

JSOP_PROPDEC IMPLEMENTED

JSOP_ELEMDEC IMPLEMENTED

JSOP_GETPROP IMPLEMENTED
Y
JSOP_SETPROP IMPLEMENTED
Y
JSOP_GETELEM IMPLEMENTED
Y
JSOP_SETELEM IMPLEMENTED

Y
JSOP_CALLNAME IMPLEMENTED
Y
JSOP_CALL IMPLEMENTED hacky until bug547851 Y
JSOP_NAME IMPLEMENTED
Y
JSOP_DOUBLE IMPLEMENTED
Y
JSOP_STRING IMPLEMENTED
Y
JSOP_ZERO IMPLEMENTED
Y
JSOP_ONE IMPLEMENTED
Y
JSOP_NULL IMPLEMENTED fast path Y
JSOP_THIS IMPLEMENTED
Y
JSOP_FALSE IMPLEMENTED fast path Y
JSOP_TRUE IMPLEMENTED fast path Y
JSOP_OR IMPLEMENTED fast path Y
JSOP_AND IMPLEMENTED fast path Y
JSOP_TABLESWITCH


JSOP_LOOKUPSWITCH IMPLEMENTED
Y
JSOP_STRICTEQ IMPLEMENTED

JSOP_STRICTNE IMPLEMENTED

JSOP_SETCALL


JSOP_ITER IMPLEMENTED
Y
JSOP_NEXTITER IMPLEMENTED
Y
JSOP_ENDITER IMPLEMENTED
Y
JSOP_APPLY IMPLEMENTED

JSOP_SWAP


JSOP_OBJECT


JSOP_POP IMPLEMENTED
Y
JSOP_NEW IMPLEMENTED
Y
JSOP_TRAP


JSOP_GETARG IMPLEMENTED
Y
JSOP_SETARG IMPLEMENTED
Y
JSOP_GETLOCAL IMPLEMENTED fast path Y
JSOP_SETLOCAL IMPLEMENTED fast path Y
JSOP_UINT16 IMPLEMENTED
Y
JSOP_NEWINIT IMPLEMENTED
Y
JSOP_ENDINIT IMPLEMENTED
Y
JSOP_INITPROP IMPLEMENTED
Y
JSOP_INITELEM IMPLEMENTED
Y
JSOP_DEFSHARP


JSOP_USESHARP


JSOP_INCARG IMPLEMENTED fast path
JSOP_DECARG IMPLEMENTED fast path
JSOP_ARGINC IMPLEMENTED fast path
JSOP_ARGDEC IMPLEMENTED fast path Y
JSOP_INCLOCAL IMPLEMENTED fast-path Y
JSOP_DECLOCAL IMPLEMENTED fast-path
JSOP_LOCALINC IMPLEMENTED fast-path Y
JSOP_LOCALDEC IMPLEMENTED fast-path
JSOP_IMACOP


JSOP_FORNAME IMPLEMENTED

JSOP_FORPROP


JSOP_FORELEM


JSOP_POPN


JSOP_BINDNAME IMPLEMENTED fast path Y
JSOP_SETNAME IMPLEMENTED
Y
JSOP_THROW IMPLEMENTED

JSOP_IN IMPLEMENTEd fused, tracing
JSOP_INSTANCEOF IMPLEMENTED

JSOP_DEBUGGER


JSOP_GOSUB


JSOP_RETSUB


JSOP_EXCEPTION IMPLEMENTED

JSOP_LINENO IMPLEMENTED
Y
JSOP_CONDSWITCH


JSOP_CASE


JSOP_DEFAULT


JSOP_EVAL IMPLEMENTED
Y
JSOP_ENUMELEM IMPLEMENTED

JSOP_GETTER


JSOP_SETTER


JSOP_DEFFUN IMPLEMENTED
Y
JSOP_DEFCONST IMPLEMENTED
Y
JSOP_DEFVAR IMPLEMENTED
Y
JSOP_LAMBDA IMPLEMENTED

JSOP_CALLEE


JSOP_SETLOCALPOP IMPLEMENTED

JSOP_PICK


JSOP_TRY IMPLEMENTED

JSOP_FINALLY


JSOP_GETDSLOT IMPLEMENTED
Y
JSOP_CALLDSLOT


JSOP_ARGSUB IMPLEMENTED

JSOP_ARGCNT IMPLEMENTED

JSOP_DEFLOCALFUN IMPLEMENTED
Y
JSOP_GOTOX


JSOP_IFEQX


JSOP_IFNEX


JSOP_ORX


JSOP_ANDX


JSOP_GOSUBX


JSOP_CASEX


JSOP_DEFAULTX


JSOP_TABLESWITCHX


JSOP_LOOKUPSWITCHX


JSOP_BACKPATCH


JSOP_BACKPATCH_POP


JSOP_THROWING


JSOP_SETRVAL IMPLEMENTED

JSOP_RETRVAL IMPLEMENTED

JSOP_GETGVAR IMPLEMENTED fast path Y
JSOP_SETGVAR IMPLEMENTED fast path Y
JSOP_INCGVAR IMPLEMENTED fast paths Y
JSOP_DECGVAR IMPLEMENTED fast paths Y
JSOP_GVARINC IMPLEMENTED fast paths Y
JSOP_GVARDEC IMPLEMENTED fast paths Y
JSOP_REGEXP IMPLEMENTED
Y
JSOP_DEFXMLNS


JSOP_ANYNAME


JSOP_QNAMEPART


JSOP_QNAMECONST


JSOP_QNAME


JSOP_TOATTRNAME


JSOP_TOATTRVAL


JSOP_ADDATTRNAME


JSOP_ADDATTRVAL


JSOP_BINDXMLNAME


JSOP_SETXMLNAME


JSOP_XMLNAME


JSOP_DESCENDANTS


JSOP_FILTER


JSOP_ENDFILTER


JSOP_TOXML


JSOP_TOXMLLIST


JSOP_XMLTAGEXPR


JSOP_XMLELTEXPR


JSOP_XMLOBJECT


JSOP_XMLCDATA


JSOP_XMLCOMMENT


JSOP_XMLPI


JSOP_CALLPROP IMPLEMENTED
Y
JSOP_GETUPVAR IMPLEMENTED

JSOP_CALLUPVAR IMPLEMENTED

JSOP_DELDESC


JSOP_UINT24 IMPLEMENTED
Y
JSOP_INDEXBASE


JSOP_RESETBASE


JSOP_RESETBASE0


JSOP_STARTXML


JSOP_STARTXMLEXPR


JSOP_CALLELEM IMPLEMENTED
Y
JSOP_STOP IMPLEMENTED
Y
JSOP_GETXPROP IMPLEMENTED

JSOP_CALLXMLNAME


JSOP_TYPEOFEXPR IMPLEMENTED

JSOP_ENTERBLOCK IMPLEMENTED

JSOP_LEAVEBLOCK IMPLEMENTED

JSOP_IFPRIMTOP


JSOP_PRIMTOP


JSOP_GENERATOR


JSOP_YIELD


JSOP_ARRAYPUSH


JSOP_GETFUNNS


JSOP_ENUMCONSTELEM


JSOP_LEAVEBLOCKEXPR


JSOP_GETTHISPROP IMPLEMENTED
Y
JSOP_GETARGPROP IMPLEMENTED
Y
JSOP_GETLOCALPROP IMPLEMENTED
Y
JSOP_INDEXBASE1


JSOP_INDEXBASE2


JSOP_INDEXBASE3


JSOP_CALLGVAR IMPLEMENTED

JSOP_CALLLOCAL IMPLEMENTED
Y
JSOP_CALLARG IMPLEMENTED
Y
JSOP_CALLBUILTIN


JSOP_INT8 IMPLEMENTED
Y
JSOP_INT32 IMPLEMENTED
Y
JSOP_LENGTH IMPLEMENTED
Y
JSOP_NEWARRAY IMPLEMENTED
Y
JSOP_HOLE


JSOP_DEFFUN_FC


JSOP_DEFLOCALFUN_FC IMPLEMENTED

JSOP_LAMBDA_FC IMPLEMENTED
Y
JSOP_OBJTOP


JSOP_TRACE IMPLEMENTED

JSOP_GETUPVAR_DBG


JSOP_CALLUPVAR_DBG


JSOP_DEFFUN_DBGFC


JSOP_DEFLOCALFUN_DBGFC


JSOP_LAMBDA_DBGFC


JSOP_CONCATN IMPLEMENTED
Y
JSOP_SETMETHOD IMPLEMENTED
Y
JSOP_INITMETHOD IMPLEMENTED

JSOP_UNBRAND


JSOP_SHARPINIT