NOP

|Opcode |Name |Arguments| |——-|——–|———| |00|NOP||


MOV

|Opcode |Name |Arguments| |——-|——–|———| |01|MOV|reg, reg| |02|LOAD_NIL|reg| |03|LOAD_TRUE|reg| |04|LOAD_FALSE|reg| |05|LOAD_UINT8|reg, uint8| |06|LOAD_UINT16|reg, uint16| |07|LOAD_UINT32|reg, uint32| |08|LOAD_UINT64|reg, uint64| |09|LOAD_INT8|reg, int8| |0A|LOAD_INT16|reg, int16| |0B|LOAD_INT32|reg, int32| |0C|LOAD_INT64|reg, int64| |0D|LOAD_CLASS|reg, uint16| |0E|LOAD_METHOD|reg, symbol| |0F|REFLECT|reg, symbol, uint16, uint16| |10|LOAD_NUMBER|reg, uint64| |11|LOAD_STRING|reg, uint64, uint64| |12|NEW_ARRAY|reg, reglist| |13|LOAD_SELF|reg| |14|GET_INSTVAR|reg, symbol| |15|LOAD_CLOSURE|reg, uint16| |16|LOAD_HAS_BLOCK|reg| |17|LOAD_ARG|reg, uint16|


FLOW

|Opcode |Name |Arguments| |——-|——–|———| |18|JMP|int16| |19|JMP_IF|reg, int16, int16| |1A|CALL|reg, symbol, reglist| |1B|CALL_BLOCK|reg, symbol, symbol, reg, reglist| |1C|INSTCALL|reg, reg, symbol, reglist| |1D|INSTCALL_BLOCK|reg, reg, symbol, symbol, reg, reglist| |1E|SYSCALL|reg, uint8, reglist| |1F|YIELD|reg, reglist| |20|RETURN|reg|


OTHER

|Opcode |Name |Arguments| |——-|——–|———| |21|RETAIN|reg| |22|RELEASE|reg| |23|CAST|reg, reg, uint16| |24|SET_INSTVAR|symbol, reg|


SPECIAL

|Opcode |Name |Arguments| |——-|——–|———| |25|COV|uint16, uint16| |26|STACK_RESERVE|uint16|


NEW

|Opcode |Name |Arguments| |——-|——–|———| |27|LOAD_FLOAT|reg, float| |28|LOAD_ARG_DEFAULT|reg, uint16, reg|


Autogenerated from src/shared/opcodes.rb, last revised: 2018-02-19