~ubuntu-branches/ubuntu/karmic/moon/karmic

« back to all changes in this revision

Viewing changes to pixman/pixman/pixman-vmx.h

  • Committer: Bazaar Package Importer
  • Author(s): Jo Shields
  • Date: 2009-02-14 12:01:08 UTC
  • Revision ID: james.westby@ubuntu.com-20090214120108-06539vb25vhbd8bn
Tags: upstream-1.0
ImportĀ upstreamĀ versionĀ 1.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright Ć‚Ā© 2007 Luca Barbato
 
3
 *
 
4
 * Permission to use, copy, modify, distribute, and sell this software and its
 
5
 * documentation for any purpose is hereby granted without fee, provided that
 
6
 * the above copyright notice appear in all copies and that both that
 
7
 * copyright notice and this permission notice appear in supporting
 
8
 * documentation, and that the name of Luca Barbato not be used in advertising or
 
9
 * publicity pertaining to distribution of the software without specific,
 
10
 * written prior permission.  Luca Barbato makes no representations about the
 
11
 * suitability of this software for any purpose.  It is provided "as is"
 
12
 * without express or implied warranty.
 
13
 *
 
14
 * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
 
15
 * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
 
16
 * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
 
17
 * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 
18
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
 
19
 * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
 
20
 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
 
21
 * SOFTWARE.
 
22
 *
 
23
 * Author:  Luca Barbato (lu_zero@gentoo.org)
 
24
 *
 
25
 * Based on work by Owen Taylor, SĆøren Sandmann and Lars Knoll
 
26
 */
 
27
 
 
28
#include "pixman-private.h"
 
29
 
 
30
#ifdef USE_VMX
 
31
 
 
32
pixman_bool_t pixman_have_vmx(void);
 
33
 
 
34
#else
 
35
#define pixman_have_vmx() FALSE
 
36
#endif
 
37
 
 
38
#ifdef USE_VMX
 
39
 
 
40
#define AVV(x...) {x}
 
41
 
 
42
void fbComposeSetupVMX (void);
 
43
 
 
44
#if 0
 
45
void fbCompositeIn_nx8x8vmx (pixman_operator_t  op,
 
46
                             pixman_image_t * pSrc,
 
47
                             pixman_image_t * pMask,
 
48
                             pixman_image_t * pDst,
 
49
                             INT16      xSrc,
 
50
                             INT16      ySrc,
 
51
                             INT16      xMask,
 
52
                             INT16      yMask,
 
53
                             INT16      xDst,
 
54
                             INT16      yDst,
 
55
                             CARD16     width,
 
56
                             CARD16     height);
 
57
 
 
58
void fbCompositeSolidMask_nx8888x0565Cvmx (pixman_operator_t      op,
 
59
                                           pixman_image_t * pSrc,
 
60
                                           pixman_image_t * pMask,
 
61
                                           pixman_image_t * pDst,
 
62
                                           INT16      xSrc,
 
63
                                           INT16      ySrc,
 
64
                                           INT16      xMask,
 
65
                                           INT16      yMask,
 
66
                                           INT16      xDst,
 
67
                                           INT16      yDst,
 
68
                                           CARD16     width,
 
69
                                           CARD16     height);
 
70
 
 
71
void fbCompositeSrcAdd_8888x8888vmx (pixman_operator_t  op,
 
72
                                     pixman_image_t *   pSrc,
 
73
                                     pixman_image_t *   pMask,
 
74
                                     pixman_image_t *   pDst,
 
75
                                     INT16      xSrc,
 
76
                                     INT16      ySrc,
 
77
                                     INT16      xMask,
 
78
                                     INT16      yMask,
 
79
                                     INT16      xDst,
 
80
                                     INT16      yDst,
 
81
                                     CARD16     width,
 
82
                                     CARD16     height);
 
83
 
 
84
void fbCompositeSolidMask_nx8888x8888Cvmx (pixman_operator_t    op,
 
85
                                           pixman_image_t *     pSrc,
 
86
                                           pixman_image_t *     pMask,
 
87
                                           pixman_image_t *     pDst,
 
88
                                           INT16        xSrc,
 
89
                                           INT16        ySrc,
 
90
                                           INT16        xMask,
 
91
                                           INT16        yMask,
 
92
                                           INT16        xDst,
 
93
                                           INT16        yDst,
 
94
                                           CARD16       width,
 
95
                                           CARD16       height);
 
96
 
 
97
void fbCompositeSolidMask_nx8x8888vmx (pixman_operator_t      op,
 
98
                                       pixman_image_t * pSrc,
 
99
                                       pixman_image_t * pMask,
 
100
                                       pixman_image_t * pDst,
 
101
                                       INT16      xSrc,
 
102
                                       INT16      ySrc,
 
103
                                       INT16      xMask,
 
104
                                       INT16      yMask,
 
105
                                       INT16      xDst,
 
106
                                       INT16      yDst,
 
107
                                       CARD16     width,
 
108
                                       CARD16     height);
 
109
 
 
110
void fbCompositeSolidMaskSrc_nx8x8888vmx (pixman_operator_t      op,
 
111
                                          pixman_image_t * pSrc,
 
112
                                          pixman_image_t * pMask,
 
113
                                          pixman_image_t * pDst,
 
114
                                          INT16      xSrc,
 
115
                                          INT16      ySrc,
 
116
                                          INT16      xMask,
 
117
                                          INT16      yMask,
 
118
                                          INT16      xDst,
 
119
                                          INT16      yDst,
 
120
                                          CARD16     width,
 
121
                                          CARD16     height);
 
122
 
 
123
void fbCompositeSrcAdd_8888x8x8vmx (pixman_operator_t   op,
 
124
                                    pixman_image_t * pSrc,
 
125
                                    pixman_image_t * pMask,
 
126
                                    pixman_image_t * pDst,
 
127
                                    INT16      xSrc,
 
128
                                    INT16      ySrc,
 
129
                                    INT16      xMask,
 
130
                                    INT16      yMask,
 
131
                                    INT16      xDst,
 
132
                                    INT16      yDst,
 
133
                                    CARD16     width,
 
134
                                    CARD16     height);
 
135
 
 
136
void fbCompositeIn_8x8vmx (pixman_operator_t    op,
 
137
                           pixman_image_t * pSrc,
 
138
                           pixman_image_t * pMask,
 
139
                           pixman_image_t * pDst,
 
140
                           INT16      xSrc,
 
141
                           INT16      ySrc,
 
142
                           INT16      xMask,
 
143
                           INT16      yMask,
 
144
                           INT16      xDst,
 
145
                           INT16      yDst,
 
146
                           CARD16     width,
 
147
                           CARD16     height);
 
148
 
 
149
void fbCompositeSrcAdd_8000x8000vmx (pixman_operator_t  op,
 
150
                                     pixman_image_t * pSrc,
 
151
                                     pixman_image_t * pMask,
 
152
                                     pixman_image_t * pDst,
 
153
                                     INT16      xSrc,
 
154
                                     INT16      ySrc,
 
155
                                     INT16      xMask,
 
156
                                     INT16      yMask,
 
157
                                     INT16      xDst,
 
158
                                     INT16      yDst,
 
159
                                     CARD16     width,
 
160
                                     CARD16     height);
 
161
 
 
162
void fbCompositeSrc_8888RevNPx8888vmx (pixman_operator_t      op,
 
163
                                       pixman_image_t * pSrc,
 
164
                                       pixman_image_t * pMask,
 
165
                                       pixman_image_t * pDst,
 
166
                                       INT16      xSrc,
 
167
                                       INT16      ySrc,
 
168
                                       INT16      xMask,
 
169
                                       INT16      yMask,
 
170
                                       INT16      xDst,
 
171
                                       INT16      yDst,
 
172
                                       CARD16     width,
 
173
                                       CARD16     height);
 
174
 
 
175
void fbCompositeSrc_8888x0565vmx (pixman_operator_t      op,
 
176
                                  pixman_image_t * pSrc,
 
177
                                  pixman_image_t * pMask,
 
178
                                  pixman_image_t * pDst,
 
179
                                  INT16      xSrc,
 
180
                                  INT16      ySrc,
 
181
                                  INT16      xMask,
 
182
                                  INT16      yMask,
 
183
                                  INT16      xDst,
 
184
                                  INT16      yDst,
 
185
                                  CARD16     width,
 
186
                                  CARD16     height);
 
187
 
 
188
void fbCompositeSrc_8888RevNPx0565vmx (pixman_operator_t      op,
 
189
                                       pixman_image_t * pSrc,
 
190
                                       pixman_image_t * pMask,
 
191
                                       pixman_image_t * pDst,
 
192
                                       INT16      xSrc,
 
193
                                       INT16      ySrc,
 
194
                                       INT16      xMask,
 
195
                                       INT16      yMask,
 
196
                                       INT16      xDst,
 
197
                                       INT16      yDst,
 
198
                                       CARD16     width,
 
199
                                       CARD16     height);
 
200
 
 
201
void fbCompositeSolid_nx8888vmx (pixman_operator_t              op,
 
202
                                 pixman_image_t *       pSrc,
 
203
                                 pixman_image_t *       pMask,
 
204
                                 pixman_image_t *       pDst,
 
205
                                 INT16          xSrc,
 
206
                                 INT16          ySrc,
 
207
                                 INT16          xMask,
 
208
                                 INT16          yMask,
 
209
                                 INT16          xDst,
 
210
                                 INT16          yDst,
 
211
                                 CARD16         width,
 
212
                                 CARD16         height);
 
213
 
 
214
void fbCompositeSolid_nx0565vmx (pixman_operator_t              op,
 
215
                                 pixman_image_t *       pSrc,
 
216
                                 pixman_image_t *       pMask,
 
217
                                 pixman_image_t *       pDst,
 
218
                                 INT16          xSrc,
 
219
                                 INT16          ySrc,
 
220
                                 INT16          xMask,
 
221
                                 INT16          yMask,
 
222
                                 INT16          xDst,
 
223
                                 INT16          yDst,
 
224
                                 CARD16         width,
 
225
                                 CARD16         height);
 
226
 
 
227
void fbCompositeSolidMask_nx8x0565vmx (pixman_operator_t      op,
 
228
                                       pixman_image_t * pSrc,
 
229
                                       pixman_image_t * pMask,
 
230
                                       pixman_image_t * pDst,
 
231
                                       INT16      xSrc,
 
232
                                       INT16      ySrc,
 
233
                                       INT16      xMask,
 
234
                                       INT16      yMask,
 
235
                                       INT16      xDst,
 
236
                                       INT16      yDst,
 
237
                                       CARD16     width,
 
238
                                       CARD16     height);
 
239
 
 
240
void fbCompositeSrc_x888x8x8888vmx (pixman_operator_t   op,
 
241
                                    pixman_image_t *  pSrc,
 
242
                                    pixman_image_t *  pMask,
 
243
                                    pixman_image_t *  pDst,
 
244
                                    INT16       xSrc,
 
245
                                    INT16       ySrc,
 
246
                                    INT16       xMask,
 
247
                                    INT16       yMask,
 
248
                                    INT16       xDst,
 
249
                                    INT16       yDst,
 
250
                                    CARD16      width,
 
251
                                    CARD16      height);
 
252
 
 
253
void fbCompositeSrc_8888x8x8888vmx (pixman_operator_t   op,
 
254
                                    pixman_image_t *  pSrc,
 
255
                                    pixman_image_t *  pMask,
 
256
                                    pixman_image_t *  pDst,
 
257
                                    INT16       xSrc,
 
258
                                    INT16       ySrc,
 
259
                                    INT16       xMask,
 
260
                                    INT16       yMask,
 
261
                                    INT16       xDst,
 
262
                                    INT16       yDst,
 
263
                                    CARD16      width,
 
264
                                    CARD16      height);
 
265
 
 
266
void fbCompositeSrc_8888x8888vmx (pixman_operator_t      op,
 
267
                                  pixman_image_t * pSrc,
 
268
                                  pixman_image_t * pMask,
 
269
                                  pixman_image_t * pDst,
 
270
                                  INT16      xSrc,
 
271
                                  INT16      ySrc,
 
272
                                  INT16      xMask,
 
273
                                  INT16      yMask,
 
274
                                  INT16      xDst,
 
275
                                  INT16      yDst,
 
276
                                  CARD16     width,
 
277
                                  CARD16     height);
 
278
 
 
279
pixman_bool_t fbCopyAreavmx (FbPixels   *pSrc,
 
280
                    FbPixels    *pDst,
 
281
                    int         src_x,
 
282
                    int         src_y,
 
283
                    int         dst_x,
 
284
                    int         dst_y,
 
285
                    int         width,
 
286
                    int         height);
 
287
 
 
288
void fbCompositeCopyAreavmx (pixman_operator_t  op,
 
289
                             pixman_image_t *   pSrc,
 
290
                             pixman_image_t *   pMask,
 
291
                             pixman_image_t *   pDst,
 
292
                             INT16      xSrc,
 
293
                             INT16      ySrc,
 
294
                             INT16      xMask,
 
295
                             INT16      yMask,
 
296
                             INT16      xDst,
 
297
                             INT16      yDst,
 
298
                             CARD16     width,
 
299
                             CARD16     height);
 
300
 
 
301
pixman_bool_t fbSolidFillvmx (FbPixels  *pDraw,
 
302
                     int                x,
 
303
                     int                y,
 
304
                     int                width,
 
305
                     int                height,
 
306
                     FbBits             xor);
 
307
#endif
 
308
#endif /* USE_VMX */