Ruby 1.9.3p327(2012-11-10revision37606)
|
00001 00013 /* BIN : Basic Instruction Name */ 00014 #define BIN(n) YARVINSN_##n 00015 00016 enum ruby_vminsn_type { 00017 BIN(nop) = 0, 00018 00019 BIN(getlocal) = 1, 00020 00021 BIN(setlocal) = 2, 00022 00023 BIN(getspecial) = 3, 00024 00025 BIN(setspecial) = 4, 00026 00027 BIN(getdynamic) = 5, 00028 00029 BIN(setdynamic) = 6, 00030 00031 BIN(getinstancevariable) = 7, 00032 00033 BIN(setinstancevariable) = 8, 00034 00035 BIN(getclassvariable) = 9, 00036 00037 BIN(setclassvariable) = 10, 00038 00039 BIN(getconstant) = 11, 00040 00041 BIN(setconstant) = 12, 00042 00043 BIN(getglobal) = 13, 00044 00045 BIN(setglobal) = 14, 00046 00047 BIN(putnil) = 15, 00048 00049 BIN(putself) = 16, 00050 00051 BIN(putobject) = 17, 00052 00053 BIN(putspecialobject) = 18, 00054 00055 BIN(putiseq) = 19, 00056 00057 BIN(putstring) = 20, 00058 00059 BIN(concatstrings) = 21, 00060 00061 BIN(tostring) = 22, 00062 00063 BIN(toregexp) = 23, 00064 00065 BIN(newarray) = 24, 00066 00067 BIN(duparray) = 25, 00068 00069 BIN(expandarray) = 26, 00070 00071 BIN(concatarray) = 27, 00072 00073 BIN(splatarray) = 28, 00074 00075 BIN(checkincludearray) = 29, 00076 00077 BIN(newhash) = 30, 00078 00079 BIN(newrange) = 31, 00080 00081 BIN(pop) = 32, 00082 00083 BIN(dup) = 33, 00084 00085 BIN(dupn) = 34, 00086 00087 BIN(swap) = 35, 00088 00089 BIN(reput) = 36, 00090 00091 BIN(topn) = 37, 00092 00093 BIN(setn) = 38, 00094 00095 BIN(adjuststack) = 39, 00096 00097 BIN(defined) = 40, 00098 00099 BIN(trace) = 41, 00100 00101 BIN(defineclass) = 42, 00102 00103 BIN(send) = 43, 00104 00105 BIN(invokesuper) = 44, 00106 00107 BIN(invokeblock) = 45, 00108 00109 BIN(leave) = 46, 00110 00111 BIN(finish) = 47, 00112 00113 BIN(throw) = 48, 00114 00115 BIN(jump) = 49, 00116 00117 BIN(branchif) = 50, 00118 00119 BIN(branchunless) = 51, 00120 00121 BIN(getinlinecache) = 52, 00122 00123 BIN(onceinlinecache) = 53, 00124 00125 BIN(setinlinecache) = 54, 00126 00127 BIN(opt_case_dispatch) = 55, 00128 00129 BIN(opt_checkenv) = 56, 00130 00131 BIN(opt_plus) = 57, 00132 00133 BIN(opt_minus) = 58, 00134 00135 BIN(opt_mult) = 59, 00136 00137 BIN(opt_div) = 60, 00138 00139 BIN(opt_mod) = 61, 00140 00141 BIN(opt_eq) = 62, 00142 00143 BIN(opt_neq) = 63, 00144 00145 BIN(opt_lt) = 64, 00146 00147 BIN(opt_le) = 65, 00148 00149 BIN(opt_gt) = 66, 00150 00151 BIN(opt_ge) = 67, 00152 00153 BIN(opt_ltlt) = 68, 00154 00155 BIN(opt_aref) = 69, 00156 00157 BIN(opt_aset) = 70, 00158 00159 BIN(opt_length) = 71, 00160 00161 BIN(opt_size) = 72, 00162 00163 BIN(opt_succ) = 73, 00164 00165 BIN(opt_not) = 74, 00166 00167 BIN(opt_regexpmatch1) = 75, 00168 00169 BIN(opt_regexpmatch2) = 76, 00170 00171 BIN(opt_call_c_function) = 77, 00172 00173 BIN(bitblt) = 78, 00174 00175 BIN(answer) = 79, 00176 00177 VM_INSTRUCTION_SIZE = 80 00178 }; 00179 00180