XCache is a fast, stable PHP opcode cacher that has been proven and is now running on production servers under high load. https://xcache.lighttpd.net/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

318 lines
21 KiB

  1. static const xc_opcode_spec_t xc_opcode_spec[] = {
  2. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 0 NOP */
  3. OPSPEC( UNUSED, STD, STD, TMP) /* 1 ADD */
  4. OPSPEC( UNUSED, STD, STD, TMP) /* 2 SUB */
  5. OPSPEC( UNUSED, STD, STD, TMP) /* 3 MUL */
  6. OPSPEC( UNUSED, STD, STD, TMP) /* 4 DIV */
  7. OPSPEC( UNUSED, STD, STD, TMP) /* 5 MOD */
  8. OPSPEC( UNUSED, STD, STD, TMP) /* 6 SL */
  9. OPSPEC( UNUSED, STD, STD, TMP) /* 7 SR */
  10. OPSPEC( UNUSED, STD, STD, TMP) /* 8 CONCAT */
  11. OPSPEC( UNUSED, STD, STD, TMP) /* 9 BW_OR */
  12. OPSPEC( UNUSED, STD, STD, TMP) /* 10 BW_AND */
  13. OPSPEC( UNUSED, STD, STD, TMP) /* 11 BW_XOR */
  14. OPSPEC( UNUSED, STD, UNUSED, TMP) /* 12 BW_NOT */
  15. OPSPEC( UNUSED, STD, STD, TMP) /* 13 BOOL_NOT */
  16. OPSPEC( UNUSED, STD, STD, TMP) /* 14 BOOL_XOR */
  17. OPSPEC( UNUSED, STD, STD, TMP) /* 15 IS_IDENTICAL */
  18. OPSPEC( UNUSED, STD, STD, TMP) /* 16 IS_NOT_IDENTICAL */
  19. OPSPEC( UNUSED, STD, STD, TMP) /* 17 IS_EQUAL */
  20. OPSPEC( UNUSED, STD, STD, TMP) /* 18 IS_NOT_EQUAL */
  21. OPSPEC( UNUSED, STD, STD, TMP) /* 19 IS_SMALLER */
  22. OPSPEC( UNUSED, STD, STD, TMP) /* 20 IS_SMALLER_OR_EQUAL */
  23. OPSPEC( CAST, STD, UNUSED, TMP) /* 21 CAST */
  24. OPSPEC( UNUSED, STD, UNUSED, TMP) /* 22 QM_ASSIGN */
  25. #ifdef ZEND_ENGINE_2
  26. OPSPEC( ASSIGN, STD, STD, VAR) /* 23 ASSIGN_ADD */
  27. OPSPEC( ASSIGN, STD, STD, VAR) /* 24 ASSIGN_SUB */
  28. OPSPEC( ASSIGN, STD, STD, VAR) /* 25 ASSIGN_MUL */
  29. OPSPEC( ASSIGN, STD, STD, VAR) /* 26 ASSIGN_DIV */
  30. OPSPEC( ASSIGN, STD, STD, VAR) /* 27 ASSIGN_MOD */
  31. OPSPEC( ASSIGN, STD, STD, VAR) /* 28 ASSIGN_SL */
  32. OPSPEC( ASSIGN, STD, STD, VAR) /* 29 ASSIGN_SR */
  33. OPSPEC( ASSIGN, STD, STD, VAR) /* 30 ASSIGN_CONCAT */
  34. OPSPEC( ASSIGN, STD, STD, VAR) /* 31 ASSIGN_BW_OR */
  35. OPSPEC( ASSIGN, STD, STD, VAR) /* 32 ASSIGN_BW_AND */
  36. OPSPEC( ASSIGN, STD, STD, VAR) /* 33 ASSIGN_BW_XOR */
  37. #else
  38. OPSPEC( UNUSED, VAR, STD, VAR)
  39. OPSPEC( UNUSED, VAR, STD, VAR)
  40. OPSPEC( UNUSED, VAR, STD, VAR)
  41. OPSPEC( UNUSED, VAR, STD, VAR)
  42. OPSPEC( UNUSED, VAR, STD, VAR)
  43. OPSPEC( UNUSED, VAR, STD, VAR)
  44. OPSPEC( UNUSED, VAR, STD, VAR)
  45. OPSPEC( UNUSED, VAR, STD, VAR)
  46. OPSPEC( UNUSED, VAR, STD, VAR)
  47. OPSPEC( UNUSED, VAR, STD, VAR)
  48. OPSPEC( UNUSED, VAR, STD, VAR)
  49. #endif
  50. OPSPEC( UNUSED, VAR, UNUSED, VAR) /* 34 PRE_INC */
  51. OPSPEC( UNUSED, VAR, UNUSED, VAR) /* 35 PRE_DEC */
  52. OPSPEC( UNUSED, VAR, UNUSED, TMP) /* 36 POST_INC */
  53. OPSPEC( UNUSED, VAR, UNUSED, TMP) /* 37 POST_DEC */
  54. OPSPEC( UNUSED, VAR, STD, VAR) /* 38 ASSIGN */
  55. OPSPEC( UNUSED, VAR, VAR, VAR) /* 39 ASSIGN_REF */
  56. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 40 ECHO */
  57. OPSPEC( UNUSED, STD, UNUSED, TMP) /* 41 PRINT */
  58. #ifdef ZEND_ENGINE_2
  59. OPSPEC( UNUSED, JMPADDR, UNUSED, UNUSED) /* 42 JMP */
  60. OPSPEC( UNUSED, STD, JMPADDR, UNUSED) /* 43 JMPZ */
  61. OPSPEC( UNUSED, STD, JMPADDR, UNUSED) /* 44 JMPNZ */
  62. #else
  63. OPSPEC( UNUSED, OPLINE, UNUSED, UNUSED)
  64. OPSPEC( UNUSED, STD, OPLINE, UNUSED)
  65. OPSPEC( UNUSED, STD, OPLINE, UNUSED)
  66. #endif
  67. OPSPEC( OPLINE, STD, OPLINE, UNUSED) /* 45 JMPZNZ */
  68. #ifdef ZEND_ENGINE_2
  69. OPSPEC( UNUSED, STD, JMPADDR, TMP) /* 46 JMPZ_EX */
  70. OPSPEC( UNUSED, STD, JMPADDR, TMP) /* 47 JMPNZ_EX */
  71. #else
  72. OPSPEC( UNUSED, STD, OPLINE, TMP)
  73. OPSPEC( UNUSED, STD, OPLINE, TMP)
  74. #endif
  75. OPSPEC( UNUSED, STD, STD, TMP) /* 48 CASE */
  76. OPSPEC( BIT, STD, UNUSED, UNUSED) /* 49 SWITCH_FREE */
  77. OPSPEC( UNUSED, BRK, STD, UNUSED) /* 50 BRK */
  78. OPSPEC( UNUSED, CONT, STD, UNUSED) /* 51 CONT */
  79. OPSPEC( UNUSED, STD, UNUSED, TMP) /* 52 BOOL */
  80. OPSPEC( UNUSED, UNUSED, UNUSED, TMP) /* 53 INIT_STRING */
  81. OPSPEC( UNUSED, STD, STD, TMP) /* 54 ADD_CHAR */
  82. OPSPEC( UNUSED, STD, STD, TMP) /* 55 ADD_STRING */
  83. OPSPEC( UNUSED, STD, STD, TMP) /* 56 ADD_VAR */
  84. OPSPEC( UNUSED, UNUSED, UNUSED, TMP) /* 57 BEGIN_SILENCE */
  85. OPSPEC( UNUSED, TMP, UNUSED, UNUSED) /* 58 END_SILENCE */
  86. #ifdef ZEND_ENGINE_2_4
  87. OPSPEC(INIT_FCALL, UNUSED, STD, UNUSED) /* 59 INIT_FCALL_BY_NAME */
  88. #else
  89. OPSPEC(INIT_FCALL, STD, STD, UNUSED) /* 59 INIT_FCALL_BY_NAME */
  90. #endif
  91. #ifdef ZEND_ENGINE_2
  92. OPSPEC( FCALL, STD, UNUSED, VAR) /* 60 DO_FCALL */
  93. OPSPEC( FCALL, UNUSED, UNUSED, VAR) /* 61 DO_FCALL_BY_NAME */
  94. #else
  95. OPSPEC( FCALL, STD, UNUSED, VAR)
  96. OPSPEC( FCALL, STD, UNUSED, VAR)
  97. #endif
  98. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 62 RETURN */
  99. OPSPEC( UNUSED, ARG, UNUSED, VAR) /* 63 RECV */
  100. OPSPEC( UNUSED, ARG, STD, VAR) /* 64 RECV_INIT */
  101. OPSPEC( SEND, STD, ARG, UNUSED) /* 65 SEND_VAL */
  102. OPSPEC( SEND, VAR, ARG, UNUSED) /* 66 SEND_VAR */
  103. OPSPEC( SEND, VAR, ARG, UNUSED) /* 67 SEND_REF */
  104. #ifdef ZEND_ENGINE_2
  105. OPSPEC( UNUSED, CLASS, UNUSED, VAR) /* 68 NEW */
  106. #else
  107. OPSPEC( UNUSED, STD, UNUSED, VAR)
  108. #endif
  109. #ifdef ZEND_ENGINE_2_3
  110. OPSPEC( STD, STD, STD, UNUSED) /* 69 INIT_NS_FCALL_BY_NAME */
  111. #elif defined(ZEND_ENGINE_2_1)
  112. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED)
  113. #else
  114. OPSPEC( UNUSED, STD, OPLINE, UNUSED) /* 69 JMP_NO_CTOR */
  115. #endif
  116. OPSPEC( UNUSED, TMP, UNUSED, UNUSED) /* 70 FREE */
  117. OPSPEC( BIT, STD, STD, TMP) /* 71 INIT_ARRAY */
  118. OPSPEC( BIT, STD, STD, TMP) /* 72 ADD_ARRAY_ELEMENT */
  119. OPSPEC( UNUSED, STD, INCLUDE, VAR) /* 73 INCLUDE_OR_EVAL */
  120. #ifdef ZEND_ENGINE_2_1
  121. /* php 5.1 and up */
  122. # ifdef ZEND_ENGINE_2_4
  123. OPSPEC( FETCHTYPE, STD, STD, UNUSED) /* 74 UNSET_VAR */
  124. # else
  125. OPSPEC( UNUSED, STD, FETCH, UNUSED) /* 74 UNSET_VAR */
  126. # endif
  127. OPSPEC( STD, STD, STD, UNUSED) /* 75 UNSET_DIM */
  128. OPSPEC( STD, STD, STD, UNUSED) /* 76 UNSET_OBJ */
  129. OPSPEC( BIT, STD, OPLINE, VAR) /* 77 FE_RESET */
  130. #else
  131. /* <= php 5.0 */
  132. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 74 UNSET_VAR */
  133. /* though there is no ISSET_ISEMPTY in php 5.0 it's better to leave it here i guess */
  134. OPSPEC( UNUSED, VAR, STD, UNUSED)
  135. OPSPEC( UNUSED, VAR, ISSET, TMP)
  136. OPSPEC( BIT, STD, UNUSED, VAR) /* 77 FE_RESET */
  137. #endif
  138. OPSPEC( FE, STD, OPLINE, TMP) /* 78 FE_FETCH */
  139. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 79 EXIT */
  140. #ifdef ZEND_ENGINE_2_4
  141. OPSPEC( FETCHTYPE, STD, STD, VAR) /* 80 FETCH_R */
  142. #else
  143. OPSPEC( UNUSED, STD, FETCH, VAR) /* 80 FETCH_R */
  144. #endif
  145. OPSPEC( FETCH, VAR, STD, VAR) /* 81 FETCH_DIM_R */
  146. OPSPEC( UNUSED, VAR_2, STD, VAR) /* 82 FETCH_OBJ_R */
  147. #ifdef ZEND_ENGINE_2_4
  148. OPSPEC( FETCHTYPE, STD, STD, VAR) /* 83 FETCH_W */
  149. #else
  150. OPSPEC( UNUSED, STD, FETCH, VAR) /* 83 FETCH_W */
  151. #endif
  152. OPSPEC( UNUSED, VAR, STD, VAR) /* 84 FETCH_DIM_W */
  153. OPSPEC( UNUSED, VAR_2, STD, VAR) /* 85 FETCH_OBJ_W */
  154. #ifdef ZEND_ENGINE_2_4
  155. OPSPEC( FETCHTYPE, STD, STD, VAR) /* 86 FETCH_RW */
  156. #else
  157. OPSPEC( UNUSED, STD, FETCH, VAR) /* 86 FETCH_RW */
  158. #endif
  159. OPSPEC( UNUSED, VAR, STD, VAR) /* 87 FETCH_DIM_RW */
  160. OPSPEC( UNUSED, VAR_2, STD, VAR) /* 88 FETCH_OBJ_RW */
  161. #ifdef ZEND_ENGINE_2_4
  162. OPSPEC( FETCHTYPE, STD, STD, VAR) /* 89 FETCH_IS */
  163. #else
  164. OPSPEC( UNUSED, STD, FETCH, VAR) /* 89 FETCH_IS */
  165. #endif
  166. OPSPEC( UNUSED, VAR, STD, VAR) /* 90 FETCH_DIM_IS */
  167. OPSPEC( UNUSED, VAR_2, STD, VAR) /* 91 FETCH_OBJ_IS */
  168. #ifdef ZEND_ENGINE_2_4
  169. OPSPEC( ARG, STD, STD, VAR) /* 92 FETCH_FUNC_ARG */
  170. #else
  171. OPSPEC( ARG, STD, FETCH, VAR) /* 92 FETCH_FUNC_ARG */
  172. #endif
  173. OPSPEC( ARG, VAR, STD, VAR) /* 93 FETCH_DIM_FUNC_ARG */
  174. OPSPEC( ARG, VAR_2, STD, VAR) /* 94 FETCH_OBJ_FUNC_ARG */
  175. #ifdef ZEND_ENGINE_2_4
  176. OPSPEC( FETCHTYPE, STD, STD, VAR) /* 95 FETCH_UNSET */
  177. #else
  178. OPSPEC( UNUSED, STD, FETCH, VAR) /* 95 FETCH_UNSET */
  179. #endif
  180. OPSPEC( UNUSED, VAR, STD, VAR) /* 96 FETCH_DIM_UNSET */
  181. OPSPEC( UNUSED, VAR_2, STD, VAR) /* 97 FETCH_OBJ_UNSET */
  182. OPSPEC( UNUSED, STD, STD, VAR) /* 98 FETCH_DIM_TMP_VAR */
  183. #ifdef ZEND_ENGINE_2_3
  184. OPSPEC( UNUSED, VAR_2, STD, TMP) /* 99 FETCH_CONSTANT */
  185. #elif defined(ZEND_ENGINE_2)
  186. OPSPEC( UNUSED, UCLASS, STD, TMP) /* 99 FETCH_CONSTANT */
  187. #else
  188. OPSPEC( UNUSED, STD, UNUSED, TMP) /* 99 FETCH_CONSTANT */
  189. #endif
  190. #ifdef ZEND_ENGINE_2_3
  191. OPSPEC( STD, JMPADDR, STD, UNUSED) /* 100 GOTO */
  192. #else
  193. OPSPEC( DECLARE, STD, STD, UNUSED) /* 100 DECLARE_FUNCTION_OR_CLASS */
  194. #endif
  195. OPSPEC( STD, STD, STD, STD) /* 101 EXT_STMT */
  196. OPSPEC( STD, STD, STD, STD) /* 102 EXT_FCALL_BEGIN */
  197. OPSPEC( STD, STD, STD, STD) /* 103 EXT_FCALL_END */
  198. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 104 EXT_NOP */
  199. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 105 TICKS */
  200. OPSPEC(SEND_NOREF, VAR, ARG, UNUSED) /* 106 SEND_VAR_NO_REF */
  201. #ifndef ZEND_ENGINE_2
  202. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 107 UNDEF */
  203. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 108 UNDEF */
  204. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 109 UNDEF */
  205. OPSPEC( FCALL, STD, OPLINE, VAR) /* 110 DO_FCALL_BY_FUNC */
  206. OPSPEC(INIT_FCALL, STD, STD, UNUSED) /* 111 INIT_FCALL_BY_FUNC */
  207. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 112 UNDEF */
  208. #else /* ZEND_ENGINE_2 */
  209. # ifdef ZEND_ENGINE_2_4
  210. OPSPEC( OPLINE, STD, STD, UNUSED) /* 107 CATCH */
  211. # else
  212. OPSPEC( OPLINE, CLASS, STD, UNUSED) /* 107 CATCH */
  213. # endif
  214. OPSPEC( UNUSED, STD, OPLINE, UNUSED) /* 108 THROW */
  215. # ifdef ZEND_ENGINE_2_4
  216. OPSPEC( FCLASS, UNUSED, STD, CLASS) /* 109 FETCH_CLASS */
  217. # else
  218. OPSPEC( FCLASS, STD, STD, CLASS) /* 109 FETCH_CLASS */
  219. # endif
  220. OPSPEC( UNUSED, STD, UNUSED, VAR) /* 110 CLONE */
  221. # ifdef ZEND_ENGINE_2_4
  222. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 111 RETURN_BY_REF */
  223. # else
  224. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 111 INIT_CTOR_CALL */
  225. # endif
  226. OPSPEC( UNUSED, STD, STD, VAR) /* 112 INIT_METHOD_CALL */
  227. # ifdef ZEND_ENGINE_2_3
  228. OPSPEC( UNUSED, STD, STD, UNUSED) /* 113 INIT_STATIC_METHOD_CALL */
  229. # else
  230. OPSPEC( UNUSED, UCLASS, STD, UNUSED) /* 113 INIT_STATIC_METHOD_CALL */
  231. # endif
  232. # ifdef ZEND_ENGINE_2_4
  233. OPSPEC( ISSET, STD, STD, TMP) /* 114 ISSET_ISEMPTY_VAR */
  234. # else
  235. OPSPEC( ISSET, STD, FETCH, TMP) /* 114 ISSET_ISEMPTY_VAR */
  236. # endif
  237. OPSPEC( ISSET, STD, STD, TMP) /* 115 ISSET_ISEMPTY_DIM_OBJ */
  238. OPSPEC( UNUSED, CLASS, STD, UNUSED) /* 116 IMPORT_FUNCTION */
  239. OPSPEC( UNUSED, CLASS, STD, UNUSED) /* 117 IMPORT_CLASS */
  240. OPSPEC( UNUSED, CLASS, STD, UNUSED) /* 118 IMPORT_CONST */
  241. OPSPEC( STD, STD, STD, STD) /* 119 OP_119 */
  242. OPSPEC( STD, STD, STD, STD) /* 120 OP_120 */
  243. OPSPEC( UNUSED, STD, STD, VAR) /* 121 ASSIGN_ADD_OBJ */
  244. OPSPEC( UNUSED, STD, STD, VAR) /* 122 ASSIGN_SUB_OBJ */
  245. OPSPEC( UNUSED, STD, STD, VAR) /* 123 ASSIGN_MUL_OBJ */
  246. OPSPEC( UNUSED, STD, STD, VAR) /* 124 ASSIGN_DIV_OBJ */
  247. OPSPEC( UNUSED, STD, STD, VAR) /* 125 ASSIGN_MOD_OBJ */
  248. OPSPEC( UNUSED, STD, STD, VAR) /* 126 ASSIGN_SL_OBJ */
  249. OPSPEC( UNUSED, STD, STD, VAR) /* 127 ASSIGN_SR_OBJ */
  250. OPSPEC( UNUSED, STD, STD, VAR) /* 128 ASSIGN_CONCAT_OBJ */
  251. OPSPEC( UNUSED, STD, STD, VAR) /* 129 ASSIGN_BW_OR_OBJ */
  252. OPSPEC( UNUSED, STD, STD, VAR) /* 130 ASSIGN_BW_AND_OBJ */
  253. OPSPEC( UNUSED, STD, STD, VAR) /* 131 ASSIGN_BW_XOR_OBJ */
  254. OPSPEC( UNUSED, STD, STD, VAR) /* 132 PRE_INC_OBJ */
  255. OPSPEC( UNUSED, STD, STD, VAR) /* 133 PRE_DEC_OBJ */
  256. OPSPEC( UNUSED, STD, STD, TMP) /* 134 POST_INC_OBJ */
  257. OPSPEC( UNUSED, STD, STD, TMP) /* 135 POST_DEC_OBJ */
  258. OPSPEC( UNUSED, STD, STD, VAR) /* 136 ASSIGN_OBJ */
  259. OPSPEC( UNUSED, STD, STD, STD) /* 137 OP_DATA */
  260. OPSPEC( UNUSED, STD, CLASS, TMP) /* 138 INSTANCEOF */
  261. OPSPEC( UNUSED, STD, STD, CLASS) /* 139 DECLARE_CLASS */
  262. OPSPEC( CLASS, STD, STD, CLASS) /* 140 DECLARE_INHERITED_CLASS */
  263. OPSPEC( UNUSED, STD, STD, UNUSED) /* 141 DECLARE_FUNCTION */
  264. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 142 RAISE_ABSTRACT_ERROR */
  265. # ifdef ZEND_ENGINE_2_3
  266. OPSPEC( DECLARE, STD, STD, UNUSED) /* 143 DECLARE_CONST */
  267. # else
  268. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 143 UNDEF-143 */
  269. # endif
  270. # ifdef ZEND_ENGINE_2_3
  271. OPSPEC( IFACE, CLASS, STD, UNUSED) /* 144 ADD_INTERFACE */
  272. # else
  273. OPSPEC( IFACE, CLASS, CLASS, UNUSED) /* 144 ADD_INTERFACE */
  274. # endif
  275. # ifdef ZEND_ENGINE_2_3
  276. OPSPEC( CLASS, STD, STD, OPLINE) /* 145 DECLARE_INHERITED_CLASS_DELAYED */
  277. # else
  278. OPSPEC( UNUSED, CLASS, STD, UNUSED) /* 145 VERIFY_INSTANCEOF */
  279. # endif
  280. OPSPEC( UNUSED, CLASS, UNUSED, UNUSED) /* 146 VERIFY_ABSTRACT_CLASS */
  281. OPSPEC( UNUSED, STD, STD, VAR) /* 147 ASSIGN_DIM */
  282. OPSPEC( ISSET, STD, STD, TMP) /* 148 ISSET_ISEMPTY_PROP_OBJ */
  283. OPSPEC( STD, UNUSED, UNUSED, STD) /* 149 HANDLE_EXCEPTION */
  284. #endif /* ZEND_ENGINE_2 */
  285. #ifdef ZEND_ENGINE_2_1
  286. OPSPEC( STD, UNUSED, UNUSED, STD) /* 150 USER_OPCODE */
  287. #endif
  288. #ifdef ZEND_ENGINE_2_3
  289. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 151 UNDEF */
  290. OPSPEC( UNUSED, STD, JMPADDR, TMP) /* 152 JMP_SET */
  291. OPSPEC( UNUSED, STD, STD, TMP) /* 153 DECLARE_LAMBDA_FUNCTION */
  292. #endif
  293. #ifdef ZEND_ENGINE_2_4
  294. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 154 ADD_TRAIT */
  295. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 155 BIND_TRAITS */
  296. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 156 SEPARATE */
  297. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 157 QM_ASSIGN_VAR */
  298. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 158 JMP_SET_VAR */
  299. #endif
  300. #ifdef ZEND_ENGINE_2_5
  301. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 159 DISCARD_EXCEPTION */
  302. OPSPEC( UNUSED, STD, STD, UNUSED) /* 160 YIELD */
  303. OPSPEC( UNUSED, STD, UNUSED, UNUSED) /* 161 GENERATOR_RETURN */
  304. OPSPEC( UNUSED, JMPADDR, UNUSED, UNUSED) /* 162 FAST_CALL */
  305. OPSPEC( UNUSED, UNUSED, UNUSED, UNUSED) /* 163 FAST_RET */
  306. #endif
  307. #ifdef ZEND_ENGINE_2_6
  308. OPSPEC( UNUSED, ARG, UNUSED, VAR) /* 164 RECV_VARIADIC */
  309. OPSPEC( SEND, STD, ARG, UNUSED) /* 165 SEND_UNPACK */
  310. OPSPEC( UNUSED, STD, STD, TMP) /* 166 POW */
  311. OPSPEC( ASSIGN, STD, STD, VAR) /* 167 ASSIGN_POW */
  312. #endif
  313. };