rasops_masks.c 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383
  1. /* $OpenBSD: rasops_masks.c,v 1.5 2011/06/23 16:31:16 deraadt Exp $ */
  2. /* $NetBSD: rasops_masks.c,v 1.5 2000/06/13 13:37:00 ad Exp $ */
  3. /*-
  4. * Copyright (c) 1999 The NetBSD Foundation, Inc.
  5. * All rights reserved.
  6. *
  7. * This code is derived from software contributed to The NetBSD Foundation
  8. * by Andrew Doran.
  9. *
  10. * Redistribution and use in source and binary forms, with or without
  11. * modification, are permitted provided that the following conditions
  12. * are met:
  13. * 1. Redistributions of source code must retain the above copyright
  14. * notice, this list of conditions and the following disclaimer.
  15. * 2. Redistributions in binary form must reproduce the above copyright
  16. * notice, this list of conditions and the following disclaimer in the
  17. * documentation and/or other materials provided with the distribution.
  18. *
  19. * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  20. * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  21. * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  22. * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  23. * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  24. * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  25. * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  26. * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  27. * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  28. * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  29. * POSSIBILITY OF SUCH DAMAGE.
  30. */
  31. #include "rasops_masks.h"
  32. /* `ragged edge' bitmasks */
  33. #if BYTE_ORDER == BIG_ENDIAN
  34. const
  35. #endif
  36. int32_t rasops_lmask[32+1] = {
  37. 0x00000000, 0x7fffffff, 0x3fffffff, 0x1fffffff,
  38. 0x0fffffff, 0x07ffffff, 0x03ffffff, 0x01ffffff,
  39. 0x00ffffff, 0x007fffff, 0x003fffff, 0x001fffff,
  40. 0x000fffff, 0x0007ffff, 0x0003ffff, 0x0001ffff,
  41. 0x0000ffff, 0x00007fff, 0x00003fff, 0x00001fff,
  42. 0x00000fff, 0x000007ff, 0x000003ff, 0x000001ff,
  43. 0x000000ff, 0x0000007f, 0x0000003f, 0x0000001f,
  44. 0x0000000f, 0x00000007, 0x00000003, 0x00000001,
  45. 0x00000000
  46. };
  47. #if BYTE_ORDER == BIG_ENDIAN
  48. const
  49. #endif
  50. int32_t rasops_rmask[32+1] = {
  51. 0x00000000, 0x80000000, 0xc0000000, 0xe0000000,
  52. 0xf0000000, 0xf8000000, 0xfc000000, 0xfe000000,
  53. 0xff000000, 0xff800000, 0xffc00000, 0xffe00000,
  54. 0xfff00000, 0xfff80000, 0xfffc0000, 0xfffe0000,
  55. 0xffff0000, 0xffff8000, 0xffffc000, 0xffffe000,
  56. 0xfffff000, 0xfffff800, 0xfffffc00, 0xfffffe00,
  57. 0xffffff00, 0xffffff80, 0xffffffc0, 0xffffffe0,
  58. 0xfffffff0, 0xfffffff8, 0xfffffffc, 0xfffffffe,
  59. 0xffffffff
  60. };
  61. /* Part bitmasks */
  62. #if BYTE_ORDER == BIG_ENDIAN
  63. const
  64. #endif
  65. int32_t rasops_pmask[32][32] = {
  66. { 0xffffffff, 0x80000000, 0xc0000000, 0xe0000000,
  67. 0xf0000000, 0xf8000000, 0xfc000000, 0xfe000000,
  68. 0xff000000, 0xff800000, 0xffc00000, 0xffe00000,
  69. 0xfff00000, 0xfff80000, 0xfffc0000, 0xfffe0000,
  70. 0xffff0000, 0xffff8000, 0xffffc000, 0xffffe000,
  71. 0xfffff000, 0xfffff800, 0xfffffc00, 0xfffffe00,
  72. 0xffffff00, 0xffffff80, 0xffffffc0, 0xffffffe0,
  73. 0xfffffff0, 0xfffffff8, 0xfffffffc, 0xfffffffe },
  74. { 0x00000000, 0x40000000, 0x60000000, 0x70000000,
  75. 0x78000000, 0x7c000000, 0x7e000000, 0x7f000000,
  76. 0x7f800000, 0x7fc00000, 0x7fe00000, 0x7ff00000,
  77. 0x7ff80000, 0x7ffc0000, 0x7ffe0000, 0x7fff0000,
  78. 0x7fff8000, 0x7fffc000, 0x7fffe000, 0x7ffff000,
  79. 0x7ffff800, 0x7ffffc00, 0x7ffffe00, 0x7fffff00,
  80. 0x7fffff80, 0x7fffffc0, 0x7fffffe0, 0x7ffffff0,
  81. 0x7ffffff8, 0x7ffffffc, 0x7ffffffe, 0x7fffffff },
  82. { 0x00000000, 0x20000000, 0x30000000, 0x38000000,
  83. 0x3c000000, 0x3e000000, 0x3f000000, 0x3f800000,
  84. 0x3fc00000, 0x3fe00000, 0x3ff00000, 0x3ff80000,
  85. 0x3ffc0000, 0x3ffe0000, 0x3fff0000, 0x3fff8000,
  86. 0x3fffc000, 0x3fffe000, 0x3ffff000, 0x3ffff800,
  87. 0x3ffffc00, 0x3ffffe00, 0x3fffff00, 0x3fffff80,
  88. 0x3fffffc0, 0x3fffffe0, 0x3ffffff0, 0x3ffffff8,
  89. 0x3ffffffc, 0x3ffffffe, 0x3fffffff, 0x00000000 },
  90. { 0x00000000, 0x10000000, 0x18000000, 0x1c000000,
  91. 0x1e000000, 0x1f000000, 0x1f800000, 0x1fc00000,
  92. 0x1fe00000, 0x1ff00000, 0x1ff80000, 0x1ffc0000,
  93. 0x1ffe0000, 0x1fff0000, 0x1fff8000, 0x1fffc000,
  94. 0x1fffe000, 0x1ffff000, 0x1ffff800, 0x1ffffc00,
  95. 0x1ffffe00, 0x1fffff00, 0x1fffff80, 0x1fffffc0,
  96. 0x1fffffe0, 0x1ffffff0, 0x1ffffff8, 0x1ffffffc,
  97. 0x1ffffffe, 0x1fffffff, 0x00000000, 0x00000000 },
  98. { 0x00000000, 0x08000000, 0x0c000000, 0x0e000000,
  99. 0x0f000000, 0x0f800000, 0x0fc00000, 0x0fe00000,
  100. 0x0ff00000, 0x0ff80000, 0x0ffc0000, 0x0ffe0000,
  101. 0x0fff0000, 0x0fff8000, 0x0fffc000, 0x0fffe000,
  102. 0x0ffff000, 0x0ffff800, 0x0ffffc00, 0x0ffffe00,
  103. 0x0fffff00, 0x0fffff80, 0x0fffffc0, 0x0fffffe0,
  104. 0x0ffffff0, 0x0ffffff8, 0x0ffffffc, 0x0ffffffe,
  105. 0x0fffffff, 0x00000000, 0x00000000, 0x00000000 },
  106. { 0x00000000, 0x04000000, 0x06000000, 0x07000000,
  107. 0x07800000, 0x07c00000, 0x07e00000, 0x07f00000,
  108. 0x07f80000, 0x07fc0000, 0x07fe0000, 0x07ff0000,
  109. 0x07ff8000, 0x07ffc000, 0x07ffe000, 0x07fff000,
  110. 0x07fff800, 0x07fffc00, 0x07fffe00, 0x07ffff00,
  111. 0x07ffff80, 0x07ffffc0, 0x07ffffe0, 0x07fffff0,
  112. 0x07fffff8, 0x07fffffc, 0x07fffffe, 0x07ffffff,
  113. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  114. { 0x00000000, 0x02000000, 0x03000000, 0x03800000,
  115. 0x03c00000, 0x03e00000, 0x03f00000, 0x03f80000,
  116. 0x03fc0000, 0x03fe0000, 0x03ff0000, 0x03ff8000,
  117. 0x03ffc000, 0x03ffe000, 0x03fff000, 0x03fff800,
  118. 0x03fffc00, 0x03fffe00, 0x03ffff00, 0x03ffff80,
  119. 0x03ffffc0, 0x03ffffe0, 0x03fffff0, 0x03fffff8,
  120. 0x03fffffc, 0x03fffffe, 0x03ffffff, 0x00000000,
  121. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  122. { 0x00000000, 0x01000000, 0x01800000, 0x01c00000,
  123. 0x01e00000, 0x01f00000, 0x01f80000, 0x01fc0000,
  124. 0x01fe0000, 0x01ff0000, 0x01ff8000, 0x01ffc000,
  125. 0x01ffe000, 0x01fff000, 0x01fff800, 0x01fffc00,
  126. 0x01fffe00, 0x01ffff00, 0x01ffff80, 0x01ffffc0,
  127. 0x01ffffe0, 0x01fffff0, 0x01fffff8, 0x01fffffc,
  128. 0x01fffffe, 0x01ffffff, 0x00000000, 0x00000000,
  129. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  130. { 0x00000000, 0x00800000, 0x00c00000, 0x00e00000,
  131. 0x00f00000, 0x00f80000, 0x00fc0000, 0x00fe0000,
  132. 0x00ff0000, 0x00ff8000, 0x00ffc000, 0x00ffe000,
  133. 0x00fff000, 0x00fff800, 0x00fffc00, 0x00fffe00,
  134. 0x00ffff00, 0x00ffff80, 0x00ffffc0, 0x00ffffe0,
  135. 0x00fffff0, 0x00fffff8, 0x00fffffc, 0x00fffffe,
  136. 0x00ffffff, 0x00000000, 0x00000000, 0x00000000,
  137. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  138. { 0x00000000, 0x00400000, 0x00600000, 0x00700000,
  139. 0x00780000, 0x007c0000, 0x007e0000, 0x007f0000,
  140. 0x007f8000, 0x007fc000, 0x007fe000, 0x007ff000,
  141. 0x007ff800, 0x007ffc00, 0x007ffe00, 0x007fff00,
  142. 0x007fff80, 0x007fffc0, 0x007fffe0, 0x007ffff0,
  143. 0x007ffff8, 0x007ffffc, 0x007ffffe, 0x007fffff,
  144. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  145. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  146. { 0x00000000, 0x00200000, 0x00300000, 0x00380000,
  147. 0x003c0000, 0x003e0000, 0x003f0000, 0x003f8000,
  148. 0x003fc000, 0x003fe000, 0x003ff000, 0x003ff800,
  149. 0x003ffc00, 0x003ffe00, 0x003fff00, 0x003fff80,
  150. 0x003fffc0, 0x003fffe0, 0x003ffff0, 0x003ffff8,
  151. 0x003ffffc, 0x003ffffe, 0x003fffff, 0x00000000,
  152. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  153. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  154. { 0x00000000, 0x00100000, 0x00180000, 0x001c0000,
  155. 0x001e0000, 0x001f0000, 0x001f8000, 0x001fc000,
  156. 0x001fe000, 0x001ff000, 0x001ff800, 0x001ffc00,
  157. 0x001ffe00, 0x001fff00, 0x001fff80, 0x001fffc0,
  158. 0x001fffe0, 0x001ffff0, 0x001ffff8, 0x001ffffc,
  159. 0x001ffffe, 0x001fffff, 0x00000000, 0x00000000,
  160. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  161. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  162. { 0x00000000, 0x00080000, 0x000c0000, 0x000e0000,
  163. 0x000f0000, 0x000f8000, 0x000fc000, 0x000fe000,
  164. 0x000ff000, 0x000ff800, 0x000ffc00, 0x000ffe00,
  165. 0x000fff00, 0x000fff80, 0x000fffc0, 0x000fffe0,
  166. 0x000ffff0, 0x000ffff8, 0x000ffffc, 0x000ffffe,
  167. 0x000fffff, 0x00000000, 0x00000000, 0x00000000,
  168. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  169. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  170. { 0x00000000, 0x00040000, 0x00060000, 0x00070000,
  171. 0x00078000, 0x0007c000, 0x0007e000, 0x0007f000,
  172. 0x0007f800, 0x0007fc00, 0x0007fe00, 0x0007ff00,
  173. 0x0007ff80, 0x0007ffc0, 0x0007ffe0, 0x0007fff0,
  174. 0x0007fff8, 0x0007fffc, 0x0007fffe, 0x0007ffff,
  175. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  176. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  177. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  178. { 0x00000000, 0x00020000, 0x00030000, 0x00038000,
  179. 0x0003c000, 0x0003e000, 0x0003f000, 0x0003f800,
  180. 0x0003fc00, 0x0003fe00, 0x0003ff00, 0x0003ff80,
  181. 0x0003ffc0, 0x0003ffe0, 0x0003fff0, 0x0003fff8,
  182. 0x0003fffc, 0x0003fffe, 0x0003ffff, 0x00000000,
  183. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  184. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  185. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  186. { 0x00000000, 0x00010000, 0x00018000, 0x0001c000,
  187. 0x0001e000, 0x0001f000, 0x0001f800, 0x0001fc00,
  188. 0x0001fe00, 0x0001ff00, 0x0001ff80, 0x0001ffc0,
  189. 0x0001ffe0, 0x0001fff0, 0x0001fff8, 0x0001fffc,
  190. 0x0001fffe, 0x0001ffff, 0x00000000, 0x00000000,
  191. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  192. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  193. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  194. { 0x00000000, 0x00008000, 0x0000c000, 0x0000e000,
  195. 0x0000f000, 0x0000f800, 0x0000fc00, 0x0000fe00,
  196. 0x0000ff00, 0x0000ff80, 0x0000ffc0, 0x0000ffe0,
  197. 0x0000fff0, 0x0000fff8, 0x0000fffc, 0x0000fffe,
  198. 0x0000ffff, 0x00000000, 0x00000000, 0x00000000,
  199. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  200. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  201. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  202. { 0x00000000, 0x00004000, 0x00006000, 0x00007000,
  203. 0x00007800, 0x00007c00, 0x00007e00, 0x00007f00,
  204. 0x00007f80, 0x00007fc0, 0x00007fe0, 0x00007ff0,
  205. 0x00007ff8, 0x00007ffc, 0x00007ffe, 0x00007fff,
  206. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  207. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  208. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  209. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  210. { 0x00000000, 0x00002000, 0x00003000, 0x00003800,
  211. 0x00003c00, 0x00003e00, 0x00003f00, 0x00003f80,
  212. 0x00003fc0, 0x00003fe0, 0x00003ff0, 0x00003ff8,
  213. 0x00003ffc, 0x00003ffe, 0x00003fff, 0x00000000,
  214. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  215. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  216. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  217. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  218. { 0x00000000, 0x00001000, 0x00001800, 0x00001c00,
  219. 0x00001e00, 0x00001f00, 0x00001f80, 0x00001fc0,
  220. 0x00001fe0, 0x00001ff0, 0x00001ff8, 0x00001ffc,
  221. 0x00001ffe, 0x00001fff, 0x00000000, 0x00000000,
  222. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  223. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  224. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  225. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  226. { 0x00000000, 0x00000800, 0x00000c00, 0x00000e00,
  227. 0x00000f00, 0x00000f80, 0x00000fc0, 0x00000fe0,
  228. 0x00000ff0, 0x00000ff8, 0x00000ffc, 0x00000ffe,
  229. 0x00000fff, 0x00000000, 0x00000000, 0x00000000,
  230. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  231. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  232. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  233. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  234. { 0x00000000, 0x00000400, 0x00000600, 0x00000700,
  235. 0x00000780, 0x000007c0, 0x000007e0, 0x000007f0,
  236. 0x000007f8, 0x000007fc, 0x000007fe, 0x000007ff,
  237. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  238. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  239. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  240. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  241. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  242. { 0x00000000, 0x00000200, 0x00000300, 0x00000380,
  243. 0x000003c0, 0x000003e0, 0x000003f0, 0x000003f8,
  244. 0x000003fc, 0x000003fe, 0x000003ff, 0x00000000,
  245. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  246. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  247. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  248. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  249. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  250. { 0x00000000, 0x00000100, 0x00000180, 0x000001c0,
  251. 0x000001e0, 0x000001f0, 0x000001f8, 0x000001fc,
  252. 0x000001fe, 0x000001ff, 0x00000000, 0x00000000,
  253. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  254. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  255. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  256. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  257. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  258. { 0x00000000, 0x00000080, 0x000000c0, 0x000000e0,
  259. 0x000000f0, 0x000000f8, 0x000000fc, 0x000000fe,
  260. 0x000000ff, 0x00000000, 0x00000000, 0x00000000,
  261. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  262. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  263. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  264. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  265. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  266. { 0x00000000, 0x00000040, 0x00000060, 0x00000070,
  267. 0x00000078, 0x0000007c, 0x0000007e, 0x0000007f,
  268. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  269. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  270. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  271. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  272. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  273. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  274. { 0x00000000, 0x00000020, 0x00000030, 0x00000038,
  275. 0x0000003c, 0x0000003e, 0x0000003f, 0x00000000,
  276. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  277. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  278. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  279. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  280. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  281. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  282. { 0x00000000, 0x00000010, 0x00000018, 0x0000001c,
  283. 0x0000001e, 0x0000001f, 0x00000000, 0x00000000,
  284. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  285. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  286. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  287. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  288. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  289. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  290. { 0x00000000, 0x00000008, 0x0000000c, 0x0000000e,
  291. 0x0000000f, 0x00000000, 0x00000000, 0x00000000,
  292. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  293. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  294. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  295. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  296. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  297. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  298. { 0x00000000, 0x00000004, 0x00000006, 0x00000007,
  299. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  300. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  301. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  302. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  303. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  304. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  305. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  306. { 0x00000000, 0x00000002, 0x00000003, 0x00000000,
  307. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  308. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  309. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  310. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  311. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  312. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  313. 0x00000000, 0x00000000, 0x00000000, 0x00000000 },
  314. { 0x00000000, 0x00000001, 0x00000000, 0x00000000,
  315. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  316. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  317. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  318. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  319. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  320. 0x00000000, 0x00000000, 0x00000000, 0x00000000,
  321. 0x00000000, 0x00000000, 0x00000000, 0x00000000 }
  322. };
  323. #if BYTE_ORDER != BIG_ENDIAN
  324. void
  325. rasops_masks_init(void)
  326. {
  327. static int flipped = 0;
  328. u_int i;
  329. u_int32_t *mask;
  330. if (flipped != 0)
  331. return;
  332. mask = (u_int32_t *)rasops_lmask;
  333. for (i = 0; i < sizeof(rasops_lmask) / sizeof(int32_t); i++)
  334. *mask++ = MBE(*mask);
  335. mask = (u_int32_t *)rasops_rmask;
  336. for (i = 0; i < sizeof(rasops_rmask) / sizeof(int32_t); i++)
  337. *mask++ = MBE(*mask);
  338. mask = (u_int32_t *)rasops_pmask;
  339. for (i = 0; i < sizeof(rasops_pmask) / sizeof(int32_t); i++)
  340. *mask++ = MBE(*mask);
  341. flipped = 1;
  342. }
  343. #endif