YARV: Yet another RubyVM - Software Architecture

by K.Sasada / Fri Mar 04 16:17:05 2005

maybe writing.

YARV instruction set

nop

nop

nop

instruction sequence
0x00
stack
=>

variable

getlocal

get local variable(which is pointed by idx).

instruction sequence
0x01 idx
stack
=> val

setlocal

get local variable (which is pointed by idx) as val.

instruction sequence
0x02 idx
stack
val =>

getspecial

get special local variable ($~, ...)

instruction sequence
0x03 idx type
stack
=> val

setspecial

set special local variables

instruction sequence
0x04 idx type
stack
obj =>

getdynamic

get block local variable(which is pointed by idx and level).

instruction sequence
0x05 idx level
stack
=> val

setdynamic

set block local variable(which is pointed by 'idx') as val.

instruction sequence
0x06 idx level
stack
val =>

getinstancevariable

get instance variable id of obj.

instruction sequence
0x07 id
stack
=> val

setinstancevariable

set instance variable id of obj as val.

instruction sequence
0x08 id
stack
val =>

getclassvariable

get class variable id of klass as val.

instruction sequence
0x09 id
stack
=> val

setclassvariable

set class variable id of klass as val.

instruction sequence
0x0a id declp
stack
val =>

getconstant

instruction sequence
0x0b id
stack
klass => val

setconstant

instruction sequence
0x0c id
stack
val klass =>

getglobal

get global variable id.

instruction sequence
0x0d entry
stack
=> val

setglobal

set global variable id as val.

instruction sequence
0x0e entry
stack
val =>

put

putnil

put nil

instruction sequence
0x0f
stack
=> val

putself

put self.

instruction sequence
0x10
stack
=> val

putobject

put some object.

instruction sequence
0x11 val
stack
=> val

putstring

put string val. string will be copied.

instruction sequence
0x12 val
stack
=> val

concatstrings

put concatenate strings

instruction sequence
0x13 num
stack
... => val

tostring

to_str

instruction sequence
0x14
stack
val => val

toregexp

to Regexp

instruction sequence
0x15 flag
stack
str => val

newarray

put new array.

instruction sequence
0x16 num
stack
... => val

duparray

dup array

instruction sequence
0x17 ary
stack
=> val

expandarray

expand array to num objects.

instruction sequence
0x18 num flag
stack
... ary => ...

newhash

put new Hash.

instruction sequence
0x19 num
stack
... => val

newrange

put new Range object.(Range.new(low, high, flag))

instruction sequence
0x1a flag
stack
low high => val

putnot

put !val.

instruction sequence
0x1b
stack
obj => val

stack

pop

pop from stack.

instruction sequence
0x1c
stack
val =>

dup

duplicate stack top.

instruction sequence
0x1d
stack
val => val1 val2

dupn

duplicate stack top n elements

instruction sequence
0x1e n
stack
... => ...

swap

swap top 2 vals

instruction sequence
0x1f
stack
val obj => obj val

reput

instruction sequence
0x20
stack
... val => val

topn

get nth stack value from stack top

instruction sequence
0x21 n
stack
... => val

setting

methoddef

define method id as body

instruction sequence
0x22 id body
stack
=>

singletonmethoddef

define singleton method id as body to obj.

instruction sequence
0x23 id body
stack
obj =>

alias

make alias (if v_p is Qtrue, make valias)

instruction sequence
0x24 v_p id1 id2
stack
=>

undef

undef

instruction sequence
0x25 id
stack
=>

defined

defined?

instruction sequence
0x26 type obj needstr
stack
... => val

class/module

classdef

instruction sequence
0x27 id klass_iseq
stack
cbase super => val

singletonclassdef

enter singleton class definition scope.

instruction sequence
0x28 sclass_iseq
stack
obj => val

moduledef

enter module definition scope.

instruction sequence
0x29 id module_iseq
stack
mbase => val

popcref

pop class reference

instruction sequence
0x2a
stack
=>

method/iterator

send

obj.send(id, args) # args.size => num

instruction sequence
0x2b id argc block flag ic
stack
... => val

super

super(args) # args.size => num

instruction sequence
0x2c num flag
stack
... => val

zsuper

super

instruction sequence
0x2d
stack
... => val

yield

yield(args) # args.size => num, flag shows expand argument or not

instruction sequence
0x2e num flag
stack
... => val

end

return from this scope.

instruction sequence
0x2f idx
stack
val => val

exception

throw

longjump

instruction sequence
0x30 throw_state
stack
throwobj =>

jump

jump

set PC to (PC + dst).

instruction sequence
0x31 dst
stack
=>

if

if val is not false or nil, set PC to (PC + dst).

instruction sequence
0x32 dst
stack
val =>

unless

if val is false or nil, set PC to (PC + dst).

instruction sequence
0x33 dst
stack
val =>

optimize

getinlinecache

inline cache

instruction sequence
0x34 ic dst
stack
=> val

setinlinecache

set inline cache

instruction sequence
0x35 dst
stack
val => val

opt_plus

optimized X+Y.

instruction sequence
0x36
stack
recv obj => val

opt_minus

optimized X-Y.

instruction sequence
0x37
stack
recv obj => val

opt_lt

optimized X<Y.

instruction sequence
0x38
stack
recv obj => val

opt_ltlt

<<

instruction sequence
0x39
stack
recv obj => val

opt_regexpmatch1

optimized regexp match

instruction sequence
0x3a r
stack
obj => val

opt_regexpmatch2

optimized regexp match 2

instruction sequence
0x3b
stack
obj2 obj1 => val

opt_call_native_compiled

call native compiled method

instruction sequence
0x3c
stack
=>

getlocal_OP_1

get local variable(which is pointed by idx).

instruction sequence
0x3d
stack
=> val

setlocal_OP_1

get local variable (which is pointed by idx) as val.

instruction sequence
0x3e
stack
val =>

getlocal_OP_2

get local variable(which is pointed by idx).

instruction sequence
0x3f
stack
=> val

setlocal_OP_2

get local variable (which is pointed by idx) as val.

instruction sequence
0x40
stack
val =>

getdynamic_OP__WC__0

get block local variable(which is pointed by idx and level).

instruction sequence
0x41 idx
stack
=> val

getdynamic_OP_1_0

get block local variable(which is pointed by idx and level).

instruction sequence
0x42
stack
=> val

putobject_OP_INT2FIX_O_0_C_

put some object.

instruction sequence
0x43
stack
=> val

putobject_OP_INT2FIX_O_1_C_

put some object.

instruction sequence
0x44
stack
=> val

putobject_OP_Qtrue

put some object.

instruction sequence
0x45
stack
=> val

putobject_OP_Qfalse

put some object.

instruction sequence
0x46
stack
=> val

send_OP__WC___WC__Qfalse_0__WC_

obj.send(id, args) # args.size => num

instruction sequence
0x47 id argc ic
stack
... => val

UNIFIED_putobject_putobject

unified insn

instruction sequence
0x48 val_0 val_1
stack
=> val_0 val_1

UNIFIED_putstring_putstring

unified insn

instruction sequence
0x49 val_0 val_1
stack
=> val_0 val_1

UNIFIED_putstring_putobject

unified insn

instruction sequence
0x4a val_0 val_1
stack
=> val_0 val_1

UNIFIED_putobject_putstring

unified insn

instruction sequence
0x4b val_0 val_1
stack
=> val_0 val_1

optimize(sc)

nop_SC_xx_xx

nop

instruction sequence
0x4c
stack
=>

nop_SC_ax_ax

nop

instruction sequence
0x4d
stack
=>

nop_SC_bx_bx

nop

instruction sequence
0x4e
stack
=>

nop_SC_ab_ab

nop

instruction sequence
0x4f
stack
=>

nop_SC_ba_ba

nop

instruction sequence
0x50
stack
=>

getlocal_SC_xx_ax

get local variable(which is pointed by idx).

instruction sequence
0x51 idx
stack
=> val

getlocal_SC_ax_ab

get local variable(which is pointed by idx).

instruction sequence
0x52 idx
stack
=> val

getlocal_SC_bx_ba

get local variable(which is pointed by idx).

instruction sequence
0x53 idx
stack
=> val

getlocal_SC_ab_ba

get local variable(which is pointed by idx).

instruction sequence
0x54 idx
stack
=> val

getlocal_SC_ba_ab

get local variable(which is pointed by idx).

instruction sequence
0x55 idx
stack
=> val

setlocal_SC_xx_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x56 idx
stack
val =>

setlocal_SC_ax_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x57 idx
stack
val =>

setlocal_SC_bx_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x58 idx
stack
val =>

setlocal_SC_ab_ax

get local variable (which is pointed by idx) as val.

instruction sequence
0x59 idx
stack
val =>

setlocal_SC_ba_bx

get local variable (which is pointed by idx) as val.

instruction sequence
0x5a idx
stack
val =>

getspecial_SC_xx_ax

get special local variable ($~, ...)

instruction sequence
0x5b idx type
stack
=> val

getspecial_SC_ax_ab

get special local variable ($~, ...)

instruction sequence
0x5c idx type
stack
=> val

getspecial_SC_bx_ba

get special local variable ($~, ...)

instruction sequence
0x5d idx type
stack
=> val

getspecial_SC_ab_ba

get special local variable ($~, ...)

instruction sequence
0x5e idx type
stack
=> val

getspecial_SC_ba_ab

get special local variable ($~, ...)

instruction sequence
0x5f idx type
stack
=> val

setspecial_SC_xx_xx

set special local variables

instruction sequence
0x60 idx type
stack
obj =>

setspecial_SC_ax_xx

set special local variables

instruction sequence
0x61 idx type
stack
obj =>

setspecial_SC_bx_xx

set special local variables

instruction sequence
0x62 idx type
stack
obj =>

setspecial_SC_ab_ax

set special local variables

instruction sequence
0x63 idx type
stack
obj =>

setspecial_SC_ba_bx

set special local variables

instruction sequence
0x64 idx type
stack
obj =>

getdynamic_SC_xx_ax

get block local variable(which is pointed by idx and level).

instruction sequence
0x65 idx level
stack
=> val

getdynamic_SC_ax_ab

get block local variable(which is pointed by idx and level).

instruction sequence
0x66 idx level
stack
=> val

getdynamic_SC_bx_ba

get block local variable(which is pointed by idx and level).

instruction sequence
0x67 idx level
stack
=> val

getdynamic_SC_ab_ba

get block local variable(which is pointed by idx and level).

instruction sequence
0x68 idx level
stack
=> val

getdynamic_SC_ba_ab

get block local variable(which is pointed by idx and level).

instruction sequence
0x69 idx level
stack
=> val

setdynamic_SC_xx_xx

set block local variable(which is pointed by 'idx') as val.

instruction sequence
0x6a idx level
stack
val =>

setdynamic_SC_ax_xx

set block local variable(which is pointed by 'idx') as val.

instruction sequence
0x6b idx level
stack
val =>

setdynamic_SC_bx_xx

set block local variable(which is pointed by 'idx') as val.

instruction sequence
0x6c idx level
stack
val =>

setdynamic_SC_ab_ax

set block local variable(which is pointed by 'idx') as val.

instruction sequence
0x6d idx level
stack
val =>

setdynamic_SC_ba_bx

set block local variable(which is pointed by 'idx') as val.

instruction sequence
0x6e idx level
stack
val =>

getinstancevariable_SC_xx_ax

get instance variable id of obj.

instruction sequence
0x6f id
stack
=> val

getinstancevariable_SC_ax_ab

get instance variable id of obj.

instruction sequence
0x70 id
stack
=> val

getinstancevariable_SC_bx_ba

get instance variable id of obj.

instruction sequence
0x71 id
stack
=> val

getinstancevariable_SC_ab_ba

get instance variable id of obj.

instruction sequence
0x72 id
stack
=> val

getinstancevariable_SC_ba_ab

get instance variable id of obj.

instruction sequence
0x73 id
stack
=> val

setinstancevariable_SC_xx_xx

set instance variable id of obj as val.

instruction sequence
0x74 id
stack
val =>

setinstancevariable_SC_ax_xx

set instance variable id of obj as val.

instruction sequence
0x75 id
stack
val =>

setinstancevariable_SC_bx_xx

set instance variable id of obj as val.

instruction sequence
0x76 id
stack
val =>

setinstancevariable_SC_ab_ax

set instance variable id of obj as val.

instruction sequence
0x77 id
stack
val =>

setinstancevariable_SC_ba_bx

set instance variable id of obj as val.

instruction sequence
0x78 id
stack
val =>

getclassvariable_SC_xx_ax

get class variable id of klass as val.

instruction sequence
0x79 id
stack
=> val

getclassvariable_SC_ax_ab

get class variable id of klass as val.

instruction sequence
0x7a id
stack
=> val

getclassvariable_SC_bx_ba

get class variable id of klass as val.

instruction sequence
0x7b id
stack
=> val

getclassvariable_SC_ab_ba

get class variable id of klass as val.

instruction sequence
0x7c id
stack
=> val

getclassvariable_SC_ba_ab

get class variable id of klass as val.

instruction sequence
0x7d id
stack
=> val

setclassvariable_SC_xx_xx

set class variable id of klass as val.

instruction sequence
0x7e id declp
stack
val =>

setclassvariable_SC_ax_xx

set class variable id of klass as val.

instruction sequence
0x7f id declp
stack
val =>

setclassvariable_SC_bx_xx

set class variable id of klass as val.

instruction sequence
0x80 id declp
stack
val =>

setclassvariable_SC_ab_ax

set class variable id of klass as val.

instruction sequence
0x81 id declp
stack
val =>

setclassvariable_SC_ba_bx

set class variable id of klass as val.

instruction sequence
0x82 id declp
stack
val =>

getconstant_SC_xx_ax

instruction sequence
0x83 id
stack
klass => val

getconstant_SC_ax_ax

instruction sequence
0x84 id
stack
klass => val

getconstant_SC_bx_ax

instruction sequence
0x85 id
stack
klass => val

getconstant_SC_ab_ab

instruction sequence
0x86 id
stack
klass => val

getconstant_SC_ba_ba

instruction sequence
0x87 id
stack
klass => val

setconstant_SC_xx_xx

instruction sequence
0x88 id
stack
val klass =>

setconstant_SC_ax_xx

instruction sequence
0x89 id
stack
val klass =>

setconstant_SC_bx_xx

instruction sequence
0x8a id
stack
val klass =>

setconstant_SC_ab_xx

instruction sequence
0x8b id
stack
val klass =>

setconstant_SC_ba_xx

instruction sequence
0x8c id
stack
val klass =>

getglobal_SC_xx_ax

get global variable id.

instruction sequence
0x8d entry
stack
=> val

getglobal_SC_ax_ab

get global variable id.

instruction sequence
0x8e entry
stack
=> val

getglobal_SC_bx_ba

get global variable id.

instruction sequence
0x8f entry
stack
=> val

getglobal_SC_ab_ba

get global variable id.

instruction sequence
0x90 entry
stack
=> val

getglobal_SC_ba_ab

get global variable id.

instruction sequence
0x91 entry
stack
=> val

setglobal_SC_xx_xx

set global variable id as val.

instruction sequence
0x92 entry
stack
val =>

setglobal_SC_ax_xx

set global variable id as val.

instruction sequence
0x93 entry
stack
val =>

setglobal_SC_bx_xx

set global variable id as val.

instruction sequence
0x94 entry
stack
val =>

setglobal_SC_ab_ax

set global variable id as val.

instruction sequence
0x95 entry
stack
val =>

setglobal_SC_ba_bx

set global variable id as val.

instruction sequence
0x96 entry
stack
val =>

putnil_SC_xx_ax

put nil

instruction sequence
0x97
stack
=> val

putnil_SC_ax_ab

put nil

instruction sequence
0x98
stack
=> val

putnil_SC_bx_ba

put nil

instruction sequence
0x99
stack
=> val

putnil_SC_ab_ba

put nil

instruction sequence
0x9a
stack
=> val

putnil_SC_ba_ab

put nil

instruction sequence
0x9b
stack
=> val

putself_SC_xx_ax

put self.

instruction sequence
0x9c
stack
=> val

putself_SC_ax_ab

put self.

instruction sequence
0x9d
stack
=> val

putself_SC_bx_ba

put self.

instruction sequence
0x9e
stack
=> val

putself_SC_ab_ba

put self.

instruction sequence
0x9f
stack
=> val

putself_SC_ba_ab

put self.

instruction sequence
0xa0
stack
=> val

putobject_SC_xx_ax

put some object.

instruction sequence
0xa1 val
stack
=> val

putobject_SC_ax_ab

put some object.

instruction sequence
0xa2 val
stack
=> val

putobject_SC_bx_ba

put some object.

instruction sequence
0xa3 val
stack
=> val

putobject_SC_ab_ba

put some object.

instruction sequence
0xa4 val
stack
=> val

putobject_SC_ba_ab

put some object.

instruction sequence
0xa5 val
stack
=> val

putstring_SC_xx_ax

put string val. string will be copied.

instruction sequence
0xa6 val
stack
=> val

putstring_SC_ax_ab

put string val. string will be copied.

instruction sequence
0xa7 val
stack
=> val

putstring_SC_bx_ba

put string val. string will be copied.

instruction sequence
0xa8 val
stack
=> val

putstring_SC_ab_ba

put string val. string will be copied.

instruction sequence
0xa9 val
stack
=> val

putstring_SC_ba_ab

put string val. string will be copied.

instruction sequence
0xaa val
stack
=> val

concatstrings_SC_xx_ax

put concatenate strings

instruction sequence
0xab num
stack
... => val

concatstrings_SC_ax_ax

put concatenate strings

instruction sequence
0xac num
stack
... => val

concatstrings_SC_bx_ax

put concatenate strings

instruction sequence
0xad num
stack
... => val

concatstrings_SC_ab_ax

put concatenate strings

instruction sequence
0xae num
stack
... => val

concatstrings_SC_ba_ax

put concatenate strings

instruction sequence
0xaf num
stack
... => val

tostring_SC_xx_ax

to_str

instruction sequence
0xb0
stack
val => val

tostring_SC_ax_ax

to_str

instruction sequence
0xb1
stack
val => val

tostring_SC_bx_ax

to_str

instruction sequence
0xb2
stack
val => val

tostring_SC_ab_ab

to_str

instruction sequence
0xb3
stack
val => val

tostring_SC_ba_ba

to_str

instruction sequence
0xb4
stack
val => val

toregexp_SC_xx_ax

to Regexp

instruction sequence
0xb5 flag
stack
str => val

toregexp_SC_ax_ax

to Regexp

instruction sequence
0xb6 flag
stack
str => val

toregexp_SC_bx_ax

to Regexp

instruction sequence
0xb7 flag
stack
str => val

toregexp_SC_ab_ab

to Regexp

instruction sequence
0xb8 flag
stack
str => val

toregexp_SC_ba_ba

to Regexp

instruction sequence
0xb9 flag
stack
str => val

newarray_SC_xx_ax

put new array.

instruction sequence
0xba num
stack
... => val

newarray_SC_ax_ax

put new array.

instruction sequence
0xbb num
stack
... => val

newarray_SC_bx_ax

put new array.

instruction sequence
0xbc num
stack
... => val

newarray_SC_ab_ax

put new array.

instruction sequence
0xbd num
stack
... => val

newarray_SC_ba_ax

put new array.

instruction sequence
0xbe num
stack
... => val

duparray_SC_xx_ax

dup array

instruction sequence
0xbf ary
stack
=> val

duparray_SC_ax_ab

dup array

instruction sequence
0xc0 ary
stack
=> val

duparray_SC_bx_ba

dup array

instruction sequence
0xc1 ary
stack
=> val

duparray_SC_ab_ba

dup array

instruction sequence
0xc2 ary
stack
=> val

duparray_SC_ba_ab

dup array

instruction sequence
0xc3 ary
stack
=> val

expandarray_SC_xx_xx

expand array to num objects.

instruction sequence
0xc4 num flag
stack
... ary => ...

expandarray_SC_ax_xx

expand array to num objects.

instruction sequence
0xc5 num flag
stack
... ary => ...

expandarray_SC_bx_xx

expand array to num objects.

instruction sequence
0xc6 num flag
stack
... ary => ...

expandarray_SC_ab_xx

expand array to num objects.

instruction sequence
0xc7 num flag
stack
... ary => ...

expandarray_SC_ba_xx

expand array to num objects.

instruction sequence
0xc8 num flag
stack
... ary => ...

newhash_SC_xx_ax

put new Hash.

instruction sequence
0xc9 num
stack
... => val

newhash_SC_ax_ax

put new Hash.

instruction sequence
0xca num
stack
... => val

newhash_SC_bx_ax

put new Hash.

instruction sequence
0xcb num
stack
... => val

newhash_SC_ab_ax

put new Hash.

instruction sequence
0xcc num
stack
... => val

newhash_SC_ba_ax

put new Hash.

instruction sequence
0xcd num
stack
... => val

newrange_SC_xx_ax

put new Range object.(Range.new(low, high, flag))

instruction sequence
0xce flag
stack
low high => val

newrange_SC_ax_ax

put new Range object.(Range.new(low, high, flag))

instruction sequence
0xcf flag
stack
low high => val

newrange_SC_bx_ax

put new Range object.(Range.new(low, high, flag))

instruction sequence
0xd0 flag
stack
low high => val

newrange_SC_ab_ax

put new Range object.(Range.new(low, high, flag))

instruction sequence
0xd1 flag
stack
low high => val

newrange_SC_ba_ax

put new Range object.(Range.new(low, high, flag))

instruction sequence
0xd2 flag
stack
low high => val

putnot_SC_xx_ax

put !val.

instruction sequence
0xd3
stack
obj => val

putnot_SC_ax_ax

put !val.

instruction sequence
0xd4
stack
obj => val

putnot_SC_bx_ax

put !val.

instruction sequence
0xd5
stack
obj => val

putnot_SC_ab_ab

put !val.

instruction sequence
0xd6
stack
obj => val

putnot_SC_ba_ba

put !val.

instruction sequence
0xd7
stack
obj => val

pop_SC_xx_xx

pop from stack.

instruction sequence
0xd8
stack
val =>

pop_SC_ax_xx

pop from stack.

instruction sequence
0xd9
stack
val =>

pop_SC_bx_xx

pop from stack.

instruction sequence
0xda
stack
val =>

pop_SC_ab_ax

pop from stack.

instruction sequence
0xdb
stack
val =>

pop_SC_ba_bx

pop from stack.

instruction sequence
0xdc
stack
val =>

dup_SC_xx_ab

duplicate stack top.

instruction sequence
0xdd
stack
val => val2 val1

dup_SC_ax_ab

duplicate stack top.

instruction sequence
0xde
stack
val => val2 val1

dup_SC_bx_ab

duplicate stack top.

instruction sequence
0xdf
stack
val => val2 val1

dup_SC_ab_ba

duplicate stack top.

instruction sequence
0xe0
stack
val => val2 val1

dup_SC_ba_ab

duplicate stack top.

instruction sequence
0xe1
stack
val => val2 val1

dupn_SC_xx_xx

duplicate stack top n elements

instruction sequence
0xe2 n
stack
... => ...

dupn_SC_ax_xx

duplicate stack top n elements

instruction sequence
0xe3 n
stack
... => ...

dupn_SC_bx_xx

duplicate stack top n elements

instruction sequence
0xe4 n
stack
... => ...

dupn_SC_ab_xx

duplicate stack top n elements

instruction sequence
0xe5 n
stack
... => ...

dupn_SC_ba_xx

duplicate stack top n elements

instruction sequence
0xe6 n
stack
... => ...

swap_SC_xx_ab

swap top 2 vals

instruction sequence
0xe7
stack
val obj => val obj

swap_SC_ax_ab

swap top 2 vals

instruction sequence
0xe8
stack
val obj => val obj

swap_SC_bx_ab

swap top 2 vals

instruction sequence
0xe9
stack
val obj => val obj

swap_SC_ab_ab

swap top 2 vals

instruction sequence
0xea
stack
val obj => val obj

swap_SC_ba_ab

swap top 2 vals

instruction sequence
0xeb
stack
val obj => val obj

reput_SC_xx_ax

instruction sequence
0xec
stack
... val => val

reput_SC_ax_ax

instruction sequence
0xed
stack
... val => val

reput_SC_bx_ax

instruction sequence
0xee
stack
... val => val

reput_SC_ab_ax

instruction sequence
0xef
stack
... val => val

reput_SC_ba_ax

instruction sequence
0xf0
stack
... val => val

topn_SC_xx_ax

get nth stack value from stack top

instruction sequence
0xf1 n
stack
... => val

topn_SC_ax_ax

get nth stack value from stack top

instruction sequence
0xf2 n
stack
... => val

topn_SC_bx_ax

get nth stack value from stack top

instruction sequence
0xf3 n
stack
... => val

topn_SC_ab_ax

get nth stack value from stack top

instruction sequence
0xf4 n
stack
... => val

topn_SC_ba_ax

get nth stack value from stack top

instruction sequence
0xf5 n
stack
... => val

methoddef_SC_xx_xx

define method id as body

instruction sequence
0xf6 id body
stack
=>

methoddef_SC_ax_ax

define method id as body

instruction sequence
0xf7 id body
stack
=>

methoddef_SC_bx_bx

define method id as body

instruction sequence
0xf8 id body
stack
=>

methoddef_SC_ab_ab

define method id as body

instruction sequence
0xf9 id body
stack
=>

methoddef_SC_ba_ba

define method id as body

instruction sequence
0xfa id body
stack
=>

singletonmethoddef_SC_xx_xx

define singleton method id as body to obj.

instruction sequence
0xfb id body
stack
obj =>

singletonmethoddef_SC_ax_xx

define singleton method id as body to obj.

instruction sequence
0xfc id body
stack
obj =>

singletonmethoddef_SC_bx_xx

define singleton method id as body to obj.

instruction sequence
0xfd id body
stack
obj =>

singletonmethoddef_SC_ab_ax

define singleton method id as body to obj.

instruction sequence
0xfe id body
stack
obj =>

singletonmethoddef_SC_ba_bx

define singleton method id as body to obj.

instruction sequence
0xff id body
stack
obj =>

alias_SC_xx_xx

make alias (if v_p is Qtrue, make valias)

instruction sequence
0x100 v_p id1 id2
stack
=>

alias_SC_ax_ax

make alias (if v_p is Qtrue, make valias)

instruction sequence
0x101 v_p id1 id2
stack
=>

alias_SC_bx_bx

make alias (if v_p is Qtrue, make valias)

instruction sequence
0x102 v_p id1 id2
stack
=>

alias_SC_ab_ab

make alias (if v_p is Qtrue, make valias)

instruction sequence
0x103 v_p id1 id2
stack
=>

alias_SC_ba_ba

make alias (if v_p is Qtrue, make valias)

instruction sequence
0x104 v_p id1 id2
stack
=>

undef_SC_xx_xx

undef

instruction sequence
0x105 id
stack
=>

undef_SC_ax_ax

undef

instruction sequence
0x106 id
stack
=>

undef_SC_bx_bx

undef

instruction sequence
0x107 id
stack
=>

undef_SC_ab_ab

undef

instruction sequence
0x108 id
stack
=>

undef_SC_ba_ba

undef

instruction sequence
0x109 id
stack
=>

defined_SC_xx_ax

defined?

instruction sequence
0x10a type obj needstr
stack
... => val

defined_SC_ax_ax

defined?

instruction sequence
0x10b type obj needstr
stack
... => val

defined_SC_bx_ax

defined?

instruction sequence
0x10c type obj needstr
stack
... => val

defined_SC_ab_ax

defined?

instruction sequence
0x10d type obj needstr
stack
... => val

defined_SC_ba_ax

defined?

instruction sequence
0x10e type obj needstr
stack
... => val

classdef_SC_xx_ax

instruction sequence
0x10f id klass_iseq
stack
cbase super => val

classdef_SC_ax_ax

instruction sequence
0x110 id klass_iseq
stack
cbase super => val

classdef_SC_bx_ax

instruction sequence
0x111 id klass_iseq
stack
cbase super => val

classdef_SC_ab_ax

instruction sequence
0x112 id klass_iseq
stack
cbase super => val

classdef_SC_ba_ax

instruction sequence
0x113 id klass_iseq
stack
cbase super => val

singletonclassdef_SC_xx_ax

enter singleton class definition scope.

instruction sequence
0x114 sclass_iseq
stack
obj => val

singletonclassdef_SC_ax_ax

enter singleton class definition scope.

instruction sequence
0x115 sclass_iseq
stack
obj => val

singletonclassdef_SC_bx_ax

enter singleton class definition scope.

instruction sequence
0x116 sclass_iseq
stack
obj => val

singletonclassdef_SC_ab_ab

enter singleton class definition scope.

instruction sequence
0x117 sclass_iseq
stack
obj => val

singletonclassdef_SC_ba_ba

enter singleton class definition scope.

instruction sequence
0x118 sclass_iseq
stack
obj => val

moduledef_SC_xx_ax

enter module definition scope.

instruction sequence
0x119 id module_iseq
stack
mbase => val

moduledef_SC_ax_ax

enter module definition scope.

instruction sequence
0x11a id module_iseq
stack
mbase => val

moduledef_SC_bx_ax

enter module definition scope.

instruction sequence
0x11b id module_iseq
stack
mbase => val

moduledef_SC_ab_ax

enter module definition scope.

instruction sequence
0x11c id module_iseq
stack
mbase => val

moduledef_SC_ba_ax

enter module definition scope.

instruction sequence
0x11d id module_iseq
stack
mbase => val

popcref_SC_xx_xx

pop class reference

instruction sequence
0x11e
stack
=>

popcref_SC_ax_ax

pop class reference

instruction sequence
0x11f
stack
=>

popcref_SC_bx_bx

pop class reference

instruction sequence
0x120
stack
=>

popcref_SC_ab_ab

pop class reference

instruction sequence
0x121
stack
=>

popcref_SC_ba_ba

pop class reference

instruction sequence
0x122
stack
=>

send_SC_xx_ax

obj.send(id, args) # args.size => num

instruction sequence
0x123 id argc block flag ic
stack
... => val

send_SC_ax_ax

obj.send(id, args) # args.size => num

instruction sequence
0x124 id argc block flag ic
stack
... => val

send_SC_bx_ax

obj.send(id, args) # args.size => num

instruction sequence
0x125 id argc block flag ic
stack
... => val

send_SC_ab_ax

obj.send(id, args) # args.size => num

instruction sequence
0x126 id argc block flag ic
stack
... => val

send_SC_ba_ax

obj.send(id, args) # args.size => num

instruction sequence
0x127 id argc block flag ic
stack
... => val

super_SC_xx_ax

super(args) # args.size => num

instruction sequence
0x128 num flag
stack
... => val

super_SC_ax_ax

super(args) # args.size => num

instruction sequence
0x129 num flag
stack
... => val

super_SC_bx_ax

super(args) # args.size => num

instruction sequence
0x12a num flag
stack
... => val

super_SC_ab_ax

super(args) # args.size => num

instruction sequence
0x12b num flag
stack
... => val

super_SC_ba_ax

super(args) # args.size => num

instruction sequence
0x12c num flag
stack
... => val

zsuper_SC_xx_ax

super

instruction sequence
0x12d
stack
... => val

zsuper_SC_ax_ax

super

instruction sequence
0x12e
stack
... => val

zsuper_SC_bx_ax

super

instruction sequence
0x12f
stack
... => val

zsuper_SC_ab_ax

super

instruction sequence
0x130
stack
... => val

zsuper_SC_ba_ax

super

instruction sequence
0x131
stack
... => val

yield_SC_xx_ax

yield(args) # args.size => num, flag shows expand argument or not

instruction sequence
0x132 num flag
stack
... => val

yield_SC_ax_ax

yield(args) # args.size => num, flag shows expand argument or not

instruction sequence
0x133 num flag
stack
... => val

yield_SC_bx_ax

yield(args) # args.size => num, flag shows expand argument or not

instruction sequence
0x134 num flag
stack
... => val

yield_SC_ab_ax

yield(args) # args.size => num, flag shows expand argument or not

instruction sequence
0x135 num flag
stack
... => val

yield_SC_ba_ax

yield(args) # args.size => num, flag shows expand argument or not

instruction sequence
0x136 num flag
stack
... => val

end_SC_xx_ax

return from this scope.

instruction sequence
0x137 idx
stack
val => val

end_SC_ax_ax

return from this scope.

instruction sequence
0x138 idx
stack
val => val

end_SC_bx_ax

return from this scope.

instruction sequence
0x139 idx
stack
val => val

end_SC_ab_ax

return from this scope.

instruction sequence
0x13a idx
stack
val => val

end_SC_ba_ax

return from this scope.

instruction sequence
0x13b idx
stack
val => val

throw_SC_xx_xx

longjump

instruction sequence
0x13c throw_state
stack
throwobj =>

throw_SC_ax_xx

longjump

instruction sequence
0x13d throw_state
stack
throwobj =>

throw_SC_bx_xx

longjump

instruction sequence
0x13e throw_state
stack
throwobj =>

throw_SC_ab_ax

longjump

instruction sequence
0x13f throw_state
stack
throwobj =>

throw_SC_ba_bx

longjump

instruction sequence
0x140 throw_state
stack
throwobj =>

jump_SC_xx_xx

set PC to (PC + dst).

instruction sequence
0x141 dst
stack
=>

jump_SC_ax_ax

set PC to (PC + dst).

instruction sequence
0x142 dst
stack
=>

jump_SC_bx_bx

set PC to (PC + dst).

instruction sequence
0x143 dst
stack
=>

jump_SC_ab_ab

set PC to (PC + dst).

instruction sequence
0x144 dst
stack
=>

jump_SC_ba_ba

set PC to (PC + dst).

instruction sequence
0x145 dst
stack
=>

if_SC_xx_xx

if val is not false or nil, set PC to (PC + dst).

instruction sequence
0x146 dst
stack
val =>

if_SC_ax_xx

if val is not false or nil, set PC to (PC + dst).

instruction sequence
0x147 dst
stack
val =>

if_SC_bx_xx

if val is not false or nil, set PC to (PC + dst).

instruction sequence
0x148 dst
stack
val =>

if_SC_ab_ax

if val is not false or nil, set PC to (PC + dst).

instruction sequence
0x149 dst
stack
val =>

if_SC_ba_bx

if val is not false or nil, set PC to (PC + dst).

instruction sequence
0x14a dst
stack
val =>

unless_SC_xx_xx

if val is false or nil, set PC to (PC + dst).

instruction sequence
0x14b dst
stack
val =>

unless_SC_ax_xx

if val is false or nil, set PC to (PC + dst).

instruction sequence
0x14c dst
stack
val =>

unless_SC_bx_xx

if val is false or nil, set PC to (PC + dst).

instruction sequence
0x14d dst
stack
val =>

unless_SC_ab_ax

if val is false or nil, set PC to (PC + dst).

instruction sequence
0x14e dst
stack
val =>

unless_SC_ba_bx

if val is false or nil, set PC to (PC + dst).

instruction sequence
0x14f dst
stack
val =>

getinlinecache_SC_xx_ax

inline cache

instruction sequence
0x150 ic dst
stack
=> val

getinlinecache_SC_ax_ab

inline cache

instruction sequence
0x151 ic dst
stack
=> val

getinlinecache_SC_bx_ba

inline cache

instruction sequence
0x152 ic dst
stack
=> val

getinlinecache_SC_ab_ba

inline cache

instruction sequence
0x153 ic dst
stack
=> val

getinlinecache_SC_ba_ab

inline cache

instruction sequence
0x154 ic dst
stack
=> val

setinlinecache_SC_xx_ax

set inline cache

instruction sequence
0x155 dst
stack
val => val

setinlinecache_SC_ax_ax

set inline cache

instruction sequence
0x156 dst
stack
val => val

setinlinecache_SC_bx_ax

set inline cache

instruction sequence
0x157 dst
stack
val => val

setinlinecache_SC_ab_ab

set inline cache

instruction sequence
0x158 dst
stack
val => val

setinlinecache_SC_ba_ba

set inline cache

instruction sequence
0x159 dst
stack
val => val

opt_plus_SC_xx_ax

optimized X+Y.

instruction sequence
0x15a
stack
recv obj => val

opt_plus_SC_ax_ax

optimized X+Y.

instruction sequence
0x15b
stack
recv obj => val

opt_plus_SC_bx_ax

optimized X+Y.

instruction sequence
0x15c
stack
recv obj => val

opt_plus_SC_ab_ax

optimized X+Y.

instruction sequence
0x15d
stack
recv obj => val

opt_plus_SC_ba_ax

optimized X+Y.

instruction sequence
0x15e
stack
recv obj => val

opt_minus_SC_xx_ax

optimized X-Y.

instruction sequence
0x15f
stack
recv obj => val

opt_minus_SC_ax_ax

optimized X-Y.

instruction sequence
0x160
stack
recv obj => val

opt_minus_SC_bx_ax

optimized X-Y.

instruction sequence
0x161
stack
recv obj => val

opt_minus_SC_ab_ax

optimized X-Y.

instruction sequence
0x162
stack
recv obj => val

opt_minus_SC_ba_ax

optimized X-Y.

instruction sequence
0x163
stack
recv obj => val

opt_lt_SC_xx_ax

optimized X<Y.

instruction sequence
0x164
stack
recv obj => val

opt_lt_SC_ax_ax

optimized X<Y.

instruction sequence
0x165
stack
recv obj => val

opt_lt_SC_bx_ax

optimized X<Y.

instruction sequence
0x166
stack
recv obj => val

opt_lt_SC_ab_ax

optimized X<Y.

instruction sequence
0x167
stack
recv obj => val

opt_lt_SC_ba_ax

optimized X<Y.

instruction sequence
0x168
stack
recv obj => val

opt_ltlt_SC_xx_ax

<<

instruction sequence
0x169
stack
recv obj => val

opt_ltlt_SC_ax_ax

<<

instruction sequence
0x16a
stack
recv obj => val

opt_ltlt_SC_bx_ax

<<

instruction sequence
0x16b
stack
recv obj => val

opt_ltlt_SC_ab_ax

<<

instruction sequence
0x16c
stack
recv obj => val

opt_ltlt_SC_ba_ax

<<

instruction sequence
0x16d
stack
recv obj => val

opt_regexpmatch1_SC_xx_ax

optimized regexp match

instruction sequence
0x16e r
stack
obj => val

opt_regexpmatch1_SC_ax_ax

optimized regexp match

instruction sequence
0x16f r
stack
obj => val

opt_regexpmatch1_SC_bx_ax

optimized regexp match

instruction sequence
0x170 r
stack
obj => val

opt_regexpmatch1_SC_ab_ab

optimized regexp match

instruction sequence
0x171 r
stack
obj => val

opt_regexpmatch1_SC_ba_ba

optimized regexp match

instruction sequence
0x172 r
stack
obj => val

opt_regexpmatch2_SC_xx_ax

optimized regexp match 2

instruction sequence
0x173
stack
obj2 obj1 => val

opt_regexpmatch2_SC_ax_ax

optimized regexp match 2

instruction sequence
0x174
stack
obj2 obj1 => val

opt_regexpmatch2_SC_bx_ax

optimized regexp match 2

instruction sequence
0x175
stack
obj2 obj1 => val

opt_regexpmatch2_SC_ab_ax

optimized regexp match 2

instruction sequence
0x176
stack
obj2 obj1 => val

opt_regexpmatch2_SC_ba_ax

optimized regexp match 2

instruction sequence
0x177
stack
obj2 obj1 => val

opt_call_native_compiled_SC_xx_xx

call native compiled method

instruction sequence
0x178
stack
=>

opt_call_native_compiled_SC_ax_ax

call native compiled method

instruction sequence
0x179
stack
=>

opt_call_native_compiled_SC_bx_bx

call native compiled method

instruction sequence
0x17a
stack
=>

opt_call_native_compiled_SC_ab_ab

call native compiled method

instruction sequence
0x17b
stack
=>

opt_call_native_compiled_SC_ba_ba

call native compiled method

instruction sequence
0x17c
stack
=>

getlocal_OP_1_SC_xx_ax

get local variable(which is pointed by idx).

instruction sequence
0x17d
stack
=> val

getlocal_OP_1_SC_ax_ab

get local variable(which is pointed by idx).

instruction sequence
0x17e
stack
=> val

getlocal_OP_1_SC_bx_ba

get local variable(which is pointed by idx).

instruction sequence
0x17f
stack
=> val

getlocal_OP_1_SC_ab_ba

get local variable(which is pointed by idx).

instruction sequence
0x180
stack
=> val

getlocal_OP_1_SC_ba_ab

get local variable(which is pointed by idx).

instruction sequence
0x181
stack
=> val

setlocal_OP_1_SC_xx_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x182
stack
val =>

setlocal_OP_1_SC_ax_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x183
stack
val =>

setlocal_OP_1_SC_bx_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x184
stack
val =>

setlocal_OP_1_SC_ab_ax

get local variable (which is pointed by idx) as val.

instruction sequence
0x185
stack
val =>

setlocal_OP_1_SC_ba_bx

get local variable (which is pointed by idx) as val.

instruction sequence
0x186
stack
val =>

getlocal_OP_2_SC_xx_ax

get local variable(which is pointed by idx).

instruction sequence
0x187
stack
=> val

getlocal_OP_2_SC_ax_ab

get local variable(which is pointed by idx).

instruction sequence
0x188
stack
=> val

getlocal_OP_2_SC_bx_ba

get local variable(which is pointed by idx).

instruction sequence
0x189
stack
=> val

getlocal_OP_2_SC_ab_ba

get local variable(which is pointed by idx).

instruction sequence
0x18a
stack
=> val

getlocal_OP_2_SC_ba_ab

get local variable(which is pointed by idx).

instruction sequence
0x18b
stack
=> val

setlocal_OP_2_SC_xx_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x18c
stack
val =>

setlocal_OP_2_SC_ax_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x18d
stack
val =>

setlocal_OP_2_SC_bx_xx

get local variable (which is pointed by idx) as val.

instruction sequence
0x18e
stack
val =>

setlocal_OP_2_SC_ab_ax

get local variable (which is pointed by idx) as val.

instruction sequence
0x18f
stack
val =>

setlocal_OP_2_SC_ba_bx

get local variable (which is pointed by idx) as val.

instruction sequence
0x190
stack
val =>

getdynamic_OP__WC__0_SC_xx_ax

get block local variable(which is pointed by idx and level).

instruction sequence
0x191 idx
stack
=> val

getdynamic_OP__WC__0_SC_ax_ab

get block local variable(which is pointed by idx and level).

instruction sequence
0x192 idx
stack
=> val

getdynamic_OP__WC__0_SC_bx_ba

get block local variable(which is pointed by idx and level).

instruction sequence
0x193 idx
stack
=> val

getdynamic_OP__WC__0_SC_ab_ba

get block local variable(which is pointed by idx and level).

instruction sequence
0x194 idx
stack
=> val

getdynamic_OP__WC__0_SC_ba_ab

get block local variable(which is pointed by idx and level).

instruction sequence
0x195 idx
stack
=> val

getdynamic_OP_1_0_SC_xx_ax

get block local variable(which is pointed by idx and level).

instruction sequence
0x196
stack
=> val

getdynamic_OP_1_0_SC_ax_ab

get block local variable(which is pointed by idx and level).

instruction sequence
0x197
stack
=> val

getdynamic_OP_1_0_SC_bx_ba

get block local variable(which is pointed by idx and level).

instruction sequence
0x198
stack
=> val

getdynamic_OP_1_0_SC_ab_ba

get block local variable(which is pointed by idx and level).

instruction sequence
0x199
stack
=> val

getdynamic_OP_1_0_SC_ba_ab

get block local variable(which is pointed by idx and level).

instruction sequence
0x19a
stack
=> val

putobject_OP_INT2FIX_O_0_C__SC_xx_ax

put some object.

instruction sequence
0x19b
stack
=> val

putobject_OP_INT2FIX_O_0_C__SC_ax_ab

put some object.

instruction sequence
0x19c
stack
=> val

putobject_OP_INT2FIX_O_0_C__SC_bx_ba

put some object.

instruction sequence
0x19d
stack
=> val

putobject_OP_INT2FIX_O_0_C__SC_ab_ba

put some object.

instruction sequence
0x19e
stack
=> val

putobject_OP_INT2FIX_O_0_C__SC_ba_ab

put some object.

instruction sequence
0x19f
stack
=> val

putobject_OP_INT2FIX_O_1_C__SC_xx_ax

put some object.

instruction sequence
0x1a0
stack
=> val

putobject_OP_INT2FIX_O_1_C__SC_ax_ab

put some object.

instruction sequence
0x1a1
stack
=> val

putobject_OP_INT2FIX_O_1_C__SC_bx_ba

put some object.

instruction sequence
0x1a2
stack
=> val

putobject_OP_INT2FIX_O_1_C__SC_ab_ba

put some object.

instruction sequence
0x1a3
stack
=> val

putobject_OP_INT2FIX_O_1_C__SC_ba_ab

put some object.

instruction sequence
0x1a4
stack
=> val

putobject_OP_Qtrue_SC_xx_ax

put some object.

instruction sequence
0x1a5
stack
=> val

putobject_OP_Qtrue_SC_ax_ab

put some object.

instruction sequence
0x1a6
stack
=> val

putobject_OP_Qtrue_SC_bx_ba

put some object.

instruction sequence
0x1a7
stack
=> val

putobject_OP_Qtrue_SC_ab_ba

put some object.

instruction sequence
0x1a8
stack
=> val

putobject_OP_Qtrue_SC_ba_ab

put some object.

instruction sequence
0x1a9
stack
=> val

putobject_OP_Qfalse_SC_xx_ax

put some object.

instruction sequence
0x1aa
stack
=> val

putobject_OP_Qfalse_SC_ax_ab

put some object.

instruction sequence
0x1ab
stack
=> val

putobject_OP_Qfalse_SC_bx_ba

put some object.

instruction sequence
0x1ac
stack
=> val

putobject_OP_Qfalse_SC_ab_ba

put some object.

instruction sequence
0x1ad
stack
=> val

putobject_OP_Qfalse_SC_ba_ab

put some object.

instruction sequence
0x1ae
stack
=> val

send_OP__WC___WC__Qfalse_0__WC__SC_xx_ax

obj.send(id, args) # args.size => num

instruction sequence
0x1af id argc ic
stack
... => val

send_OP__WC___WC__Qfalse_0__WC__SC_ax_ax

obj.send(id, args) # args.size => num

instruction sequence
0x1b0 id argc ic
stack
... => val

send_OP__WC___WC__Qfalse_0__WC__SC_bx_ax

obj.send(id, args) # args.size => num

instruction sequence
0x1b1 id argc ic
stack
... => val

send_OP__WC___WC__Qfalse_0__WC__SC_ab_ax

obj.send(id, args) # args.size => num

instruction sequence
0x1b2 id argc ic
stack
... => val

send_OP__WC___WC__Qfalse_0__WC__SC_ba_ax

obj.send(id, args) # args.size => num

instruction sequence
0x1b3 id argc ic
stack
... => val

UNIFIED_putobject_putobject_SC_xx_ab

unified insn

instruction sequence
0x1b4 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putobject_SC_ax_ba

unified insn

instruction sequence
0x1b5 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putobject_SC_bx_ab

unified insn

instruction sequence
0x1b6 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putobject_SC_ab_ab

unified insn

instruction sequence
0x1b7 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putobject_SC_ba_ba

unified insn

instruction sequence
0x1b8 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putstring_SC_xx_ab

unified insn

instruction sequence
0x1b9 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putstring_SC_ax_ba

unified insn

instruction sequence
0x1ba val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putstring_SC_bx_ab

unified insn

instruction sequence
0x1bb val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putstring_SC_ab_ab

unified insn

instruction sequence
0x1bc val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putstring_SC_ba_ba

unified insn

instruction sequence
0x1bd val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putobject_SC_xx_ab

unified insn

instruction sequence
0x1be val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putobject_SC_ax_ba

unified insn

instruction sequence
0x1bf val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putobject_SC_bx_ab

unified insn

instruction sequence
0x1c0 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putobject_SC_ab_ab

unified insn

instruction sequence
0x1c1 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putstring_putobject_SC_ba_ba

unified insn

instruction sequence
0x1c2 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putstring_SC_xx_ab

unified insn

instruction sequence
0x1c3 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putstring_SC_ax_ba

unified insn

instruction sequence
0x1c4 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putstring_SC_bx_ab

unified insn

instruction sequence
0x1c5 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putstring_SC_ab_ab

unified insn

instruction sequence
0x1c6 val_0 val_1
stack
=> val_1 val_0

UNIFIED_putobject_putstring_SC_ba_ba

unified insn

instruction sequence
0x1c7 val_0 val_1
stack
=> val_1 val_0