Advertisement
Guest User

Untitled

a guest
Feb 24th, 2018
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 20.23 KB | None | 0 0
  1. #define plib_emit<%0>(%1) (_:plib_emit@rd:plib_emit@uc:$%0(%1))
  2.  
  3. #define plib_emit@rd:%8$%0.%2(%1)   plib_emit@rd:%8$%0_%2(%1)
  4.  
  5. #define plib_emit@uc:%8$%0(%1)      plib_emit@us(%0,)(%1)
  6. #define plib_emit@us(%0,%2)     s@_:plib_emit@um(%0,_,%2)
  7. #define plib_emit@um(%0,%3,%2)      plib_emit@un%3(%0,%2)
  8. #define plib_emit@ud(%0,%1,%2)      plib_emit@us(%0,%2%1)
  9.  
  10. #define s@_:plib_emit@um(_%0,%3,%2) plib_emit@ud(%0,_,%2)
  11. #define s@0:plib_emit@um(0%0,%3,%2) plib_emit@ud(%0,0,%2)
  12. #define s@1:plib_emit@um(1%0,%3,%2) plib_emit@ud(%0,1,%2)
  13. #define s@2:plib_emit@um(2%0,%3,%2) plib_emit@ud(%0,2,%2)
  14. #define s@3:plib_emit@um(3%0,%3,%2) plib_emit@ud(%0,3,%2)
  15. #define s@4:plib_emit@um(4%0,%3,%2) plib_emit@ud(%0,4,%2)
  16. #define s@5:plib_emit@um(5%0,%3,%2) plib_emit@ud(%0,5,%2)
  17. #define s@6:plib_emit@um(6%0,%3,%2) plib_emit@ud(%0,6,%2)
  18. #define s@7:plib_emit@um(7%0,%3,%2) plib_emit@ud(%0,7,%2)
  19. #define s@8:plib_emit@um(8%0,%3,%2) plib_emit@ud(%0,8,%2)
  20. #define s@9:plib_emit@um(9%0,%3,%2) plib_emit@ud(%0,9,%2)
  21.  
  22. #define s@a:plib_emit@um(a%0,%3,%2) plib_emit@ud(%0,A,%2)
  23. #define s@b:plib_emit@um(b%0,%3,%2) plib_emit@ud(%0,B,%2)
  24. #define s@c:plib_emit@um(c%0,%3,%2) plib_emit@ud(%0,C,%2)
  25. #define s@d:plib_emit@um(d%0,%3,%2) plib_emit@ud(%0,D,%2)
  26. #define s@e:plib_emit@um(e%0,%3,%2) plib_emit@ud(%0,E,%2)
  27. #define s@f:plib_emit@um(f%0,%3,%2) plib_emit@ud(%0,F,%2)
  28. #define s@g:plib_emit@um(g%0,%3,%2) plib_emit@ud(%0,G,%2)
  29. #define s@h:plib_emit@um(h%0,%3,%2) plib_emit@ud(%0,H,%2)
  30. #define s@i:plib_emit@um(i%0,%3,%2) plib_emit@ud(%0,I,%2)
  31. #define s@j:plib_emit@um(j%0,%3,%2) plib_emit@ud(%0,J,%2)
  32. #define s@k:plib_emit@um(k%0,%3,%2) plib_emit@ud(%0,K,%2)
  33. #define s@l:plib_emit@um(l%0,%3,%2) plib_emit@ud(%0,L,%2)
  34. #define s@m:plib_emit@um(m%0,%3,%2) plib_emit@ud(%0,M,%2)
  35. #define s@n:plib_emit@um(n%0,%3,%2) plib_emit@ud(%0,N,%2)
  36. #define s@o:plib_emit@um(o%0,%3,%2) plib_emit@ud(%0,O,%2)
  37. #define s@p:plib_emit@um(p%0,%3,%2) plib_emit@ud(%0,P,%2)
  38. #define s@q:plib_emit@um(q%0,%3,%2) plib_emit@ud(%0,Q,%2)
  39. #define s@r:plib_emit@um(r%0,%3,%2) plib_emit@ud(%0,R,%2)
  40. #define s@s:plib_emit@um(s%0,%3,%2) plib_emit@ud(%0,S,%2)
  41. #define s@t:plib_emit@um(t%0,%3,%2) plib_emit@ud(%0,T,%2)
  42. #define s@u:plib_emit@um(u%0,%3,%2) plib_emit@ud(%0,U,%2)
  43. #define s@v:plib_emit@um(v%0,%3,%2) plib_emit@ud(%0,V,%2)
  44. #define s@w:plib_emit@um(w%0,%3,%2) plib_emit@ud(%0,W,%2)
  45. #define s@x:plib_emit@um(x%0,%3,%2) plib_emit@ud(%0,X,%2)
  46. #define s@y:plib_emit@um(y%0,%3,%2) plib_emit@ud(%0,Y,%2)
  47. #define s@z:plib_emit@um(z%0,%3,%2) plib_emit@ud(%0,Z,%2)
  48.  
  49. #define s@A:plib_emit@um(A%0,%3,%2) plib_emit@ud(%0,A,%2)
  50. #define s@B:plib_emit@um(B%0,%3,%2) plib_emit@ud(%0,B,%2)
  51. #define s@C:plib_emit@um(C%0,%3,%2) plib_emit@ud(%0,C,%2)
  52. #define s@D:plib_emit@um(D%0,%3,%2) plib_emit@ud(%0,D,%2)
  53. #define s@E:plib_emit@um(E%0,%3,%2) plib_emit@ud(%0,E,%2)
  54. #define s@F:plib_emit@um(F%0,%3,%2) plib_emit@ud(%0,F,%2)
  55. #define s@G:plib_emit@um(G%0,%3,%2) plib_emit@ud(%0,G,%2)
  56. #define s@H:plib_emit@um(H%0,%3,%2) plib_emit@ud(%0,H,%2)
  57. #define s@I:plib_emit@um(I%0,%3,%2) plib_emit@ud(%0,I,%2)
  58. #define s@J:plib_emit@um(J%0,%3,%2) plib_emit@ud(%0,J,%2)
  59. #define s@K:plib_emit@um(K%0,%3,%2) plib_emit@ud(%0,K,%2)
  60. #define s@L:plib_emit@um(L%0,%3,%2) plib_emit@ud(%0,L,%2)
  61. #define s@M:plib_emit@um(M%0,%3,%2) plib_emit@ud(%0,M,%2)
  62. #define s@N:plib_emit@um(N%0,%3,%2) plib_emit@ud(%0,N,%2)
  63. #define s@O:plib_emit@um(O%0,%3,%2) plib_emit@ud(%0,O,%2)
  64. #define s@P:plib_emit@um(P%0,%3,%2) plib_emit@ud(%0,P,%2)
  65. #define s@Q:plib_emit@um(Q%0,%3,%2) plib_emit@ud(%0,Q,%2)
  66. #define s@R:plib_emit@um(R%0,%3,%2) plib_emit@ud(%0,R,%2)
  67. #define s@S:plib_emit@um(S%0,%3,%2) plib_emit@ud(%0,S,%2)
  68. #define s@T:plib_emit@um(T%0,%3,%2) plib_emit@ud(%0,T,%2)
  69. #define s@U:plib_emit@um(U%0,%3,%2) plib_emit@ud(%0,U,%2)
  70. #define s@V:plib_emit@um(V%0,%3,%2) plib_emit@ud(%0,V,%2)
  71. #define s@W:plib_emit@um(W%0,%3,%2) plib_emit@ud(%0,W,%2)
  72. #define s@X:plib_emit@um(X%0,%3,%2) plib_emit@ud(%0,X,%2)
  73. #define s@Y:plib_emit@um(Y%0,%3,%2) plib_emit@ud(%0,Y,%2)
  74. #define s@Z:plib_emit@um(Z%0,%3,%2) plib_emit@ud(%0,Z,%2)
  75.  
  76. #define plib_emit@un_(%0,%2)        s@0:plib_emit@um(%0,0,%2)
  77. #define plib_emit@un0(%0,%2)        s@1:plib_emit@um(%0,1,%2)
  78. #define plib_emit@un1(%0,%2)        s@2:plib_emit@um(%0,2,%2)
  79. #define plib_emit@un2(%0,%2)        s@3:plib_emit@um(%0,3,%2)
  80. #define plib_emit@un3(%0,%2)        s@4:plib_emit@um(%0,4,%2)
  81. #define plib_emit@un4(%0,%2)        s@5:plib_emit@um(%0,5,%2)
  82. #define plib_emit@un5(%0,%2)        s@6:plib_emit@um(%0,6,%2)
  83. #define plib_emit@un6(%0,%2)        s@7:plib_emit@um(%0,7,%2)
  84. #define plib_emit@un7(%0,%2)        s@8:plib_emit@um(%0,8,%2)
  85. #define plib_emit@un8(%0,%2)        s@9:plib_emit@um(%0,9,%2)
  86. #define plib_emit@un9(%0,%2)        s@a:plib_emit@um(%0,a,%2)
  87.  
  88. #define plib_emit@una(%0,%2)        s@b:plib_emit@um(%0,b,%2)
  89. #define plib_emit@unb(%0,%2)        s@c:plib_emit@um(%0,c,%2)
  90. #define plib_emit@unc(%0,%2)        s@d:plib_emit@um(%0,d,%2)
  91. #define plib_emit@und(%0,%2)        s@e:plib_emit@um(%0,e,%2)
  92. #define plib_emit@une(%0,%2)        s@f:plib_emit@um(%0,f,%2)
  93. #define plib_emit@unf(%0,%2)        s@g:plib_emit@um(%0,g,%2)
  94. #define plib_emit@ung(%0,%2)        s@h:plib_emit@um(%0,h,%2)
  95. #define plib_emit@unh(%0,%2)        s@i:plib_emit@um(%0,i,%2)
  96. #define plib_emit@uni(%0,%2)        s@j:plib_emit@um(%0,j,%2)
  97. #define plib_emit@unj(%0,%2)        s@k:plib_emit@um(%0,k,%2)
  98. #define plib_emit@unk(%0,%2)        s@l:plib_emit@um(%0,l,%2)
  99. #define plib_emit@unl(%0,%2)        s@m:plib_emit@um(%0,m,%2)
  100. #define plib_emit@unm(%0,%2)        s@n:plib_emit@um(%0,n,%2)
  101. #define plib_emit@unn(%0,%2)        s@o:plib_emit@um(%0,o,%2)
  102. #define plib_emit@uno(%0,%2)        s@p:plib_emit@um(%0,p,%2)
  103. #define plib_emit@unp(%0,%2)        s@q:plib_emit@um(%0,q,%2)
  104. #define plib_emit@unq(%0,%2)        s@r:plib_emit@um(%0,r,%2)
  105. #define plib_emit@unr(%0,%2)        s@s:plib_emit@um(%0,s,%2)
  106. #define plib_emit@uns(%0,%2)        s@t:plib_emit@um(%0,t,%2)
  107. #define plib_emit@unt(%0,%2)        s@u:plib_emit@um(%0,u,%2)
  108. #define plib_emit@unu(%0,%2)        s@v:plib_emit@um(%0,v,%2)
  109. #define plib_emit@unv(%0,%2)        s@w:plib_emit@um(%0,w,%2)
  110. #define plib_emit@unw(%0,%2)        s@x:plib_emit@um(%0,x,%2)
  111. #define plib_emit@unx(%0,%2)        s@y:plib_emit@um(%0,y,%2)
  112. #define plib_emit@uny(%0,%2)        s@z:plib_emit@um(%0,z,%2)
  113. #define plib_emit@unz(%0,%2)        s@A:plib_emit@um(%0,A,%2)
  114.  
  115. #define plib_emit@unA(%0,%2)        s@B:plib_emit@um(%0,B,%2)
  116. #define plib_emit@unB(%0,%2)        s@C:plib_emit@um(%0,C,%2)
  117. #define plib_emit@unC(%0,%2)        s@D:plib_emit@um(%0,D,%2)
  118. #define plib_emit@unD(%0,%2)        s@E:plib_emit@um(%0,E,%2)
  119. #define plib_emit@unE(%0,%2)        s@F:plib_emit@um(%0,F,%2)
  120. #define plib_emit@unF(%0,%2)        s@G:plib_emit@um(%0,G,%2)
  121. #define plib_emit@unG(%0,%2)        s@H:plib_emit@um(%0,H,%2)
  122. #define plib_emit@unH(%0,%2)        s@I:plib_emit@um(%0,I,%2)
  123. #define plib_emit@unI(%0,%2)        s@J:plib_emit@um(%0,J,%2)
  124. #define plib_emit@unJ(%0,%2)        s@K:plib_emit@um(%0,K,%2)
  125. #define plib_emit@unK(%0,%2)        s@L:plib_emit@um(%0,L,%2)
  126. #define plib_emit@unL(%0,%2)        s@M:plib_emit@um(%0,M,%2)
  127. #define plib_emit@unM(%0,%2)        s@N:plib_emit@um(%0,N,%2)
  128. #define plib_emit@unN(%0,%2)        s@O:plib_emit@um(%0,O,%2)
  129. #define plib_emit@unO(%0,%2)        s@P:plib_emit@um(%0,P,%2)
  130. #define plib_emit@unP(%0,%2)        s@Q:plib_emit@um(%0,Q,%2)
  131. #define plib_emit@unQ(%0,%2)        s@R:plib_emit@um(%0,R,%2)
  132. #define plib_emit@unR(%0,%2)        s@S:plib_emit@um(%0,S,%2)
  133. #define plib_emit@unS(%0,%2)        s@T:plib_emit@um(%0,T,%2)
  134. #define plib_emit@unT(%0,%2)        s@U:plib_emit@um(%0,U,%2)
  135. #define plib_emit@unU(%0,%2)        s@V:plib_emit@um(%0,V,%2)
  136. #define plib_emit@unV(%0,%2)        s@W:plib_emit@um(%0,W,%2)
  137. #define plib_emit@unW(%0,%2)        s@X:plib_emit@um(%0,X,%2)
  138. #define plib_emit@unX(%0,%2)        s@Y:plib_emit@um(%0,Y,%2)
  139. #define plib_emit@unY(%0,%2)        s@Z:plib_emit@um(%0,Z,%2)
  140. #define plib_emit@unZ(%0,%2)        plib_emit@op(%2)
  141.  
  142. /*  */
  143. #define plib_emit@op(%0)(%1)        plib_op_handler@%0(%0,%1)
  144.  
  145. /* Computes the number of the passed parameters. */
  146. #define plib_emit_nparams(%1)[%0]   (_:plib_emit_p:(%1,)(%0))
  147. #define plib_emit_p: plib_emit_d:plib_emit_m:
  148. #define plib_emit_d: plib_emit_p0:plib_emit_p1:
  149. #define plib_emit_m: plib_emit_p2:plib_emit_p3:plib_emit_p4:plib_emit_p5:
  150.  
  151. #define plib_emit_p0:%8(,)(%0)               %00
  152. #define plib_emit_p1:%8(%1,)(%0)             %01
  153. #define plib_emit_p2:%8(%1,%2,)(%0)          %02
  154. #define plib_emit_p3:%8(%1,%2,%3,)(%0)       %03
  155. #define plib_emit_p4:%8(%1,%2,%3,%4,)(%0)    %04
  156. #define plib_emit_p5:%8(%1,%2,%3,%4,%5,)(%0) %05
  157.  
  158. /* IF-operator for plib_emit_nparams. */
  159. #define plib_emit_params_if<%0>(%2):%1) n@%0:plib_emit_param_if(%1)(%2)
  160. #define plib_emit_param_if(%1)(%2)      NUM_OF_ARGS_DOESNT_MATCH_DEFINE
  161. #define n@0:plib_emit_param_if(0)(%2)   0)
  162. #define n@1:plib_emit_param_if(1)(%2)   1),%2
  163. #define n@2:plib_emit_param_if(2)(%2)   2),%2
  164. #define n@3:plib_emit_param_if(3)(%2)   3),%2
  165. #define n@4:plib_emit_param_if(4)(%2)   4),%2
  166. #define n@5:plib_emit_param_if(5)(%2)   5),%2
  167.  
  168. /* Replace-macro for plib_emit_nparams. */
  169. #define plib_emit_param_spaces:%0\32;%1) plib_emit_param_spaces:%0%1)
  170.  
  171. /* Core */
  172. #define plib_emit_params<%2>(%1)[%3] \
  173.     plib_emit_nparams(%1)[plib_emit_param_spaces:plib_emit_params_if<%2>(%1):%3]
  174. #define plib_emit_opcode<%0,%2>(%1)[%3] \
  175.     plib_emit(PLIB_AMX_OP_%0, plib_emit_params<%2>(%1)[%3])
  176.  
  177. #define plib_op_handler@ADD(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  178. #define plib_op_handler@ADD_C(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  179. #define plib_op_handler@ADDR_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  180. #define plib_op_handler@ADDR_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  181. #define plib_op_handler@ALIGN_ALT(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  182. #define plib_op_handler@ALIGN_PRI(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  183. #define plib_op_handler@AND(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  184. #define plib_op_handler@BOUNDS(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  185. #define plib_op_handler@BREAK(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  186. #define plib_op_handler@CALL(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  187. #define plib_op_handler@CALL_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  188. #define plib_op_handler@CASE(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  189. #define plib_op_handler@CASETBL(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  190. #define plib_op_handler@CMPS(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  191. #define plib_op_handler@CONST(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  192. #define plib_op_handler@CONST_ALT(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  193. #define plib_op_handler@CONST_PRI(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  194. #define plib_op_handler@CONST_S(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  195. #define plib_op_handler@DEC(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  196. #define plib_op_handler@DEC_ALT(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  197. #define plib_op_handler@DEC_I(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  198. #define plib_op_handler@DEC_PRI(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  199. #define plib_op_handler@DEC_S(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  200. #define plib_op_handler@EQ(%0,%1)          plib_emit_opcode<%0,0>(%1)[]
  201. #define plib_op_handler@EQ_C_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  202. #define plib_op_handler@EQ_C_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  203. #define plib_op_handler@FILL(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  204. #define plib_op_handler@GEQ(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  205. #define plib_op_handler@GRTR(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  206. #define plib_op_handler@HALT(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  207. #define plib_op_handler@HEAP(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  208. #define plib_op_handler@IDXADDR(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  209. #define plib_op_handler@IDXADDR_B(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  210. #define plib_op_handler@INC(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  211. #define plib_op_handler@INC_ALT(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  212. #define plib_op_handler@INC_I(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  213. #define plib_op_handler@INC_PRI(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  214. #define plib_op_handler@INC_S(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  215. #define plib_op_handler@INVERT(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  216. #define plib_op_handler@JEQ(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  217. #define plib_op_handler@JGEQ(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  218. #define plib_op_handler@JGRTR(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  219. #define plib_op_handler@JLEQ(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  220. #define plib_op_handler@JLESS(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  221. #define plib_op_handler@JNEQ(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  222. #define plib_op_handler@JNZ(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  223. #define plib_op_handler@JREL(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  224. #define plib_op_handler@JSGEQ(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  225. #define plib_op_handler@JSGRTR(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  226. #define plib_op_handler@JSLEQ(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  227. #define plib_op_handler@JSLESS(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  228. #define plib_op_handler@JUMP(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  229. #define plib_op_handler@JUMP_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  230. #define plib_op_handler@JZER(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  231. #define plib_op_handler@LCTRL(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  232. #define plib_op_handler@LEQ(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  233. #define plib_op_handler@LESS(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  234. #define plib_op_handler@LIDX(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  235. #define plib_op_handler@LIDX_B(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  236. #define plib_op_handler@LOAD_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  237. #define plib_op_handler@LOAD_BOTH(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  238. #define plib_op_handler@LOAD_I(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  239. #define plib_op_handler@LOAD_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  240. #define plib_op_handler@LOAD_S_ALT(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  241. #define plib_op_handler@LOAD_S_BOTH(%0,%1) plib_emit_opcode<%0,0>(%1)[]
  242. #define plib_op_handler@LOAD_S_PRI(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  243. #define plib_op_handler@LODB_I(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  244. #define plib_op_handler@LREF_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  245. #define plib_op_handler@LREF_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  246. #define plib_op_handler@LREF_S_ALT(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  247. #define plib_op_handler@LREF_S_PRI(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  248. #define plib_op_handler@MOVE_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  249. #define plib_op_handler@MOVE_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  250. #define plib_op_handler@MOVS(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  251. #define plib_op_handler@NEG(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  252. #define plib_op_handler@NEQ(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  253. #define plib_op_handler@NOP(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  254. #define plib_op_handler@NOT(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  255. #define plib_op_handler@OR(%0,%1)          plib_emit_opcode<%0,0>(%1)[]
  256. #define plib_op_handler@POP_ALT(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  257. #define plib_op_handler@POP_PRI(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  258. #define plib_op_handler@PROC(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  259. #define plib_op_handler@PUSH(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  260. #define plib_op_handler@PUSH_ADR(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  261. #define plib_op_handler@PUSH_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  262. #define plib_op_handler@PUSH_C(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  263. #define plib_op_handler@PUSH_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  264. #define plib_op_handler@PUSH_R(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  265. #define plib_op_handler@PUSH_S(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  266. #define plib_op_handler@PUSH2(%1)          plib_emit_opcode<%0,0>(%1)[]
  267. #define plib_op_handler@PUSH2_ADR(%1)      plib_emit_opcode<%0,0>(%1)[]
  268. #define plib_op_handler@PUSH2_C(%1)        plib_emit_opcode<%0,0>(%1)[]
  269. #define plib_op_handler@PUSH2_S(%1)        plib_emit_opcode<%0,0>(%1)[]
  270. #define plib_op_handler@PUSH3(%1)          plib_emit_opcode<%0,0>(%1)[]
  271. #define plib_op_handler@PUSH3_ADR(%1)      plib_emit_opcode<%0,0>(%1)[]
  272. #define plib_op_handler@PUSH3_C(%1)        plib_emit_opcode<%0,0>(%1)[]
  273. #define plib_op_handler@PUSH3_S(%1)        plib_emit_opcode<%0,0>(%1)[]
  274. #define plib_op_handler@PUSH4(%1)          plib_emit_opcode<%0,0>(%1)[]
  275. #define plib_op_handler@PUSH4_ADR(%1)      plib_emit_opcode<%0,0>(%1)[]
  276. #define plib_op_handler@PUSH4_C(%1)        plib_emit_opcode<%0,0>(%1)[]
  277. #define plib_op_handler@PUSH4_S(%1)        plib_emit_opcode<%0,0>(%1)[]
  278. #define plib_op_handler@PUSH5(%1)          plib_emit_opcode<%0,0>(%1)[]
  279. #define plib_op_handler@PUSH5_ADR(%1)      plib_emit_opcode<%0,0>(%1)[]
  280. #define plib_op_handler@PUSH5_C(%1)        plib_emit_opcode<%0,0>(%1)[]
  281. #define plib_op_handler@PUSH5_S(%1)        plib_emit_opcode<%0,0>(%1)[]
  282. #define plib_op_handler@RET(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  283. #define plib_op_handler@RETN(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  284. #define plib_op_handler@SCTRL(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  285. #define plib_op_handler@SDIV(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  286. #define plib_op_handler@SDIV_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  287. #define plib_op_handler@SGEQ(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  288. #define plib_op_handler@SGRTR(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  289. #define plib_op_handler@SHL(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  290. #define plib_op_handler@SHL_C_ALT(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  291. #define plib_op_handler@SHL_C_PRI(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  292. #define plib_op_handler@SHR(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  293. #define plib_op_handler@SHR_C_ALT(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  294. #define plib_op_handler@SHR_C_PRI(%0,%1)   plib_emit_opcode<%0,0>(%1)[]
  295. #define plib_op_handler@SIGN_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  296. #define plib_op_handler@SIGN_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  297. #define plib_op_handler@SLEQ(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  298. #define plib_op_handler@SLESS(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  299. #define plib_op_handler@SMUL(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  300. #define plib_op_handler@SMUL_C(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  301. #define plib_op_handler@SREF_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  302. #define plib_op_handler@SREF_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  303. #define plib_op_handler@SREF_S_ALT(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  304. #define plib_op_handler@SREF_S_PRI(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  305. #define plib_op_handler@SSHR(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  306. #define plib_op_handler@STACK(%0,%1)       plib_emit_opcode<%0,0>(%1)[]
  307. #define plib_op_handler@STOR_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  308. #define plib_op_handler@STOR_I(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  309. #define plib_op_handler@STOR_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  310. #define plib_op_handler@STOR_S_ALT(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  311. #define plib_op_handler@STOR_S_PRI(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  312. #define plib_op_handler@STRB_I(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  313. #define plib_op_handler@SUB(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  314. #define plib_op_handler@SUB_ALT(%0,%1)     plib_emit_opcode<%0,0>(%1)[]
  315. #define plib_op_handler@SWAP_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  316. #define plib_op_handler@SWAP_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  317. #define plib_op_handler@SWITCH(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
  318. #define plib_op_handler@SYSREQ_C(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  319. #define plib_op_handler@SYSREQ_N(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  320. #define plib_op_handler@SYSREQ_PRI(%0,%1)  plib_emit_opcode<%0,0>(%1)[]
  321. #define plib_op_handler@UDIV(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  322. #define plib_op_handler@UDIV_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  323. #define plib_op_handler@UMUL(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  324. #define plib_op_handler@XCHG(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  325. #define plib_op_handler@XOR(%0,%1)         plib_emit_opcode<%0,0>(%1)[]
  326. #define plib_op_handler@ZERO(%0,%1)        plib_emit_opcode<%0,0>(%1)[]
  327. #define plib_op_handler@ZERO_ALT(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  328. #define plib_op_handler@ZERO_PRI(%0,%1)    plib_emit_opcode<%0,0>(%1)[]
  329. #define plib_op_handler@ZERO_S(%0,%1)      plib_emit_opcode<%0,0>(%1)[]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement