1/** -*-c-*- 2 This file contains YARV instructions list. 3 4 ---- 5 This file is auto generated by insns2vm.rb 6 DO NOT TOUCH! 7 8 If you want to fix something, you must edit 'template/insns.inc.tmpl' 9 or insns2vm.rb 10 */ 11 12 13/* BIN : Basic Instruction Name */ 14#define BIN(n) YARVINSN_##n 15 16enum ruby_vminsn_type { 17 BIN(nop) = 0, 18 19 BIN(getlocal) = 1, 20 21 BIN(setlocal) = 2, 22 23 BIN(getspecial) = 3, 24 25 BIN(setspecial) = 4, 26 27 BIN(getinstancevariable) = 5, 28 29 BIN(setinstancevariable) = 6, 30 31 BIN(getclassvariable) = 7, 32 33 BIN(setclassvariable) = 8, 34 35 BIN(getconstant) = 9, 36 37 BIN(setconstant) = 10, 38 39 BIN(getglobal) = 11, 40 41 BIN(setglobal) = 12, 42 43 BIN(putnil) = 13, 44 45 BIN(putself) = 14, 46 47 BIN(putobject) = 15, 48 49 BIN(putspecialobject) = 16, 50 51 BIN(putiseq) = 17, 52 53 BIN(putstring) = 18, 54 55 BIN(concatstrings) = 19, 56 57 BIN(tostring) = 20, 58 59 BIN(toregexp) = 21, 60 61 BIN(newarray) = 22, 62 63 BIN(duparray) = 23, 64 65 BIN(expandarray) = 24, 66 67 BIN(concatarray) = 25, 68 69 BIN(splatarray) = 26, 70 71 BIN(newhash) = 27, 72 73 BIN(newrange) = 28, 74 75 BIN(pop) = 29, 76 77 BIN(dup) = 30, 78 79 BIN(dupn) = 31, 80 81 BIN(swap) = 32, 82 83 BIN(reput) = 33, 84 85 BIN(topn) = 34, 86 87 BIN(setn) = 35, 88 89 BIN(adjuststack) = 36, 90 91 BIN(defined) = 37, 92 93 BIN(checkmatch) = 38, 94 95 BIN(trace) = 39, 96 97 BIN(defineclass) = 40, 98 99 BIN(send) = 41, 100 101 BIN(opt_send_simple) = 42, 102 103 BIN(invokesuper) = 43, 104 105 BIN(invokeblock) = 44, 106 107 BIN(leave) = 45, 108 109 BIN(throw) = 46, 110 111 BIN(jump) = 47, 112 113 BIN(branchif) = 48, 114 115 BIN(branchunless) = 49, 116 117 BIN(getinlinecache) = 50, 118 119 BIN(onceinlinecache) = 51, 120 121 BIN(setinlinecache) = 52, 122 123 BIN(opt_case_dispatch) = 53, 124 125 BIN(opt_plus) = 54, 126 127 BIN(opt_minus) = 55, 128 129 BIN(opt_mult) = 56, 130 131 BIN(opt_div) = 57, 132 133 BIN(opt_mod) = 58, 134 135 BIN(opt_eq) = 59, 136 137 BIN(opt_neq) = 60, 138 139 BIN(opt_lt) = 61, 140 141 BIN(opt_le) = 62, 142 143 BIN(opt_gt) = 63, 144 145 BIN(opt_ge) = 64, 146 147 BIN(opt_ltlt) = 65, 148 149 BIN(opt_aref) = 66, 150 151 BIN(opt_aset) = 67, 152 153 BIN(opt_length) = 68, 154 155 BIN(opt_size) = 69, 156 157 BIN(opt_empty_p) = 70, 158 159 BIN(opt_succ) = 71, 160 161 BIN(opt_not) = 72, 162 163 BIN(opt_regexpmatch1) = 73, 164 165 BIN(opt_regexpmatch2) = 74, 166 167 BIN(opt_call_c_function) = 75, 168 169 BIN(bitblt) = 76, 170 171 BIN(answer) = 77, 172 173 BIN(getlocal_OP__WC__0) = 78, 174 175 BIN(getlocal_OP__WC__1) = 79, 176 177 BIN(setlocal_OP__WC__0) = 80, 178 179 BIN(setlocal_OP__WC__1) = 81, 180 181 BIN(putobject_OP_INT2FIX_O_0_C_) = 82, 182 183 BIN(putobject_OP_INT2FIX_O_1_C_) = 83, 184 185 VM_INSTRUCTION_SIZE = 84 186}; 187 188