Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. /* Copyright (C) 2015 Broadcom
  2.  *
  3.  * Permission is hereby granted, free of charge, to any person obtaining a
  4.  * copy of this software and associated documentation files (the "Software"),
  5.  * to deal in the Software without restriction, including without limitation
  6.  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
  7.  * and/or sell copies of the Software, and to permit persons to whom the
  8.  * Software is furnished to do so, subject to the following conditions:
  9.  *
  10.  * The above copyright notice and this permission notice (including the next
  11.  * paragraph) shall be included in all copies or substantial portions of the
  12.  * Software.
  13.  *
  14.  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15.  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16.  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
  17.  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18.  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  19.  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
  20.  * IN THE SOFTWARE.
  21.  */
  22.  
  23. #ifndef _NIR_BUILDER_OPCODES_
  24. #define _NIR_BUILDER_OPCODES_
  25.  
  26. ALU1(b2f);
  27. ALU1(b2i);
  28. ALU1(ball2);
  29. ALU1(ball3);
  30. ALU1(ball4);
  31. ALU2(ball_fequal2);
  32. ALU2(ball_fequal3);
  33. ALU2(ball_fequal4);
  34. ALU2(ball_iequal2);
  35. ALU2(ball_iequal3);
  36. ALU2(ball_iequal4);
  37. ALU1(bany2);
  38. ALU1(bany3);
  39. ALU1(bany4);
  40. ALU2(bany_fnequal2);
  41. ALU2(bany_fnequal3);
  42. ALU2(bany_fnequal4);
  43. ALU2(bany_inequal2);
  44. ALU2(bany_inequal3);
  45. ALU2(bany_inequal4);
  46. ALU3(bcsel);
  47. ALU3(bfi);
  48. ALU2(bfm);
  49. ALU1(bit_count);
  50. ALU4(bitfield_insert);
  51. ALU1(bitfield_reverse);
  52. ALU1(f2b);
  53. ALU1(f2i);
  54. ALU1(f2u);
  55. ALU1(fabs);
  56. ALU2(fadd);
  57. ALU1(fall2);
  58. ALU1(fall3);
  59. ALU1(fall4);
  60. ALU2(fall_equal2);
  61. ALU2(fall_equal3);
  62. ALU2(fall_equal4);
  63. ALU2(fand);
  64. ALU1(fany2);
  65. ALU1(fany3);
  66. ALU1(fany4);
  67. ALU2(fany_nequal2);
  68. ALU2(fany_nequal3);
  69. ALU2(fany_nequal4);
  70. ALU1(fceil);
  71. ALU1(fcos);
  72. ALU3(fcsel);
  73. ALU1(fddx);
  74. ALU1(fddx_coarse);
  75. ALU1(fddx_fine);
  76. ALU1(fddy);
  77. ALU1(fddy_coarse);
  78. ALU1(fddy_fine);
  79. ALU2(fdiv);
  80. ALU2(fdot2);
  81. ALU2(fdot3);
  82. ALU2(fdot4);
  83. ALU2(feq);
  84. ALU1(fexp2);
  85. ALU1(ffloor);
  86. ALU3(ffma);
  87. ALU1(ffract);
  88. ALU2(fge);
  89. ALU1(find_lsb);
  90. ALU1(flog2);
  91. ALU3(flrp);
  92. ALU2(flt);
  93. ALU2(fmax);
  94. ALU2(fmin);
  95. ALU2(fmod);
  96. ALU1(fmov);
  97. ALU2(fmul);
  98. ALU2(fne);
  99. ALU1(fneg);
  100. ALU1(fnoise1_1);
  101. ALU1(fnoise1_2);
  102. ALU1(fnoise1_3);
  103. ALU1(fnoise1_4);
  104. ALU1(fnoise2_1);
  105. ALU1(fnoise2_2);
  106. ALU1(fnoise2_3);
  107. ALU1(fnoise2_4);
  108. ALU1(fnoise3_1);
  109. ALU1(fnoise3_2);
  110. ALU1(fnoise3_3);
  111. ALU1(fnoise3_4);
  112. ALU1(fnoise4_1);
  113. ALU1(fnoise4_2);
  114. ALU1(fnoise4_3);
  115. ALU1(fnoise4_4);
  116. ALU1(fnot);
  117. ALU2(for);
  118. ALU2(fpow);
  119. ALU1(frcp);
  120. ALU1(fround_even);
  121. ALU1(frsq);
  122. ALU1(fsat);
  123. ALU1(fsign);
  124. ALU1(fsin);
  125. ALU1(fsqrt);
  126. ALU2(fsub);
  127. ALU1(ftrunc);
  128. ALU2(fxor);
  129. ALU1(i2b);
  130. ALU1(i2f);
  131. ALU1(iabs);
  132. ALU2(iadd);
  133. ALU2(iand);
  134. ALU3(ibitfield_extract);
  135. ALU2(idiv);
  136. ALU2(ieq);
  137. ALU1(ifind_msb);
  138. ALU2(ige);
  139. ALU2(ilt);
  140. ALU2(imax);
  141. ALU2(imin);
  142. ALU1(imov);
  143. ALU2(imul);
  144. ALU2(imul_high);
  145. ALU2(ine);
  146. ALU1(ineg);
  147. ALU1(inot);
  148. ALU2(ior);
  149. ALU2(ishl);
  150. ALU2(ishr);
  151. ALU1(isign);
  152. ALU2(isub);
  153. ALU2(ixor);
  154. ALU2(ldexp);
  155. ALU1(pack_half_2x16);
  156. ALU2(pack_half_2x16_split);
  157. ALU1(pack_snorm_2x16);
  158. ALU1(pack_snorm_4x8);
  159. ALU1(pack_unorm_2x16);
  160. ALU1(pack_unorm_4x8);
  161. ALU2(seq);
  162. ALU2(sge);
  163. ALU2(slt);
  164. ALU2(sne);
  165. ALU1(u2f);
  166. ALU2(uadd_carry);
  167. ALU3(ubitfield_extract);
  168. ALU2(udiv);
  169. ALU1(ufind_msb);
  170. ALU2(uge);
  171. ALU2(ult);
  172. ALU2(umax);
  173. ALU2(umin);
  174. ALU2(umod);
  175. ALU2(umul_high);
  176. ALU1(unpack_half_2x16);
  177. ALU1(unpack_half_2x16_split_x);
  178. ALU1(unpack_half_2x16_split_y);
  179. ALU1(unpack_snorm_2x16);
  180. ALU1(unpack_snorm_4x8);
  181. ALU1(unpack_unorm_2x16);
  182. ALU1(unpack_unorm_4x8);
  183. ALU2(ushr);
  184. ALU2(usub_borrow);
  185. ALU2(vec2);
  186. ALU3(vec3);
  187. ALU4(vec4);
  188.  
  189. #endif /* _NIR_BUILDER_OPCODES_ */
  190.