]> git.wh0rd.org - ICEs.git/blame - 394889/s_triangle.i.0
more
[ICEs.git] / 394889 / s_triangle.i.0
CommitLineData
bd3239d2
MF
1# 1 "swrast/s_triangle.c"
2# 1 "/mnt/alt/portage/media-libs/mesa-7.11/work/Mesa-7.11/src/mesa//"
3# 1 "<built-in>"
4# 1 "<command-line>"
5# 1 "swrast/s_triangle.c"
6# 32 "swrast/s_triangle.c"
7# 1 "../../src/mesa/main/glheader.h" 1
8# 53 "../../src/mesa/main/glheader.h"
9# 1 "../../include/GL/gl.h" 1
10# 155 "../../include/GL/gl.h"
11typedef unsigned int GLenum;
12typedef unsigned char GLboolean;
13typedef unsigned int GLbitfield;
14typedef void GLvoid;
15typedef signed char GLbyte;
16typedef short GLshort;
17typedef int GLint;
18typedef unsigned char GLubyte;
19typedef unsigned short GLushort;
20typedef unsigned int GLuint;
21typedef int GLsizei;
22typedef float GLfloat;
23typedef float GLclampf;
24typedef double GLdouble;
25typedef double GLclampd;
26# 782 "../../include/GL/gl.h"
27__attribute__((visibility("default"))) void glClearIndex( GLfloat c );
28
29__attribute__((visibility("default"))) void glClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha );
30
31__attribute__((visibility("default"))) void glClear( GLbitfield mask );
32
33__attribute__((visibility("default"))) void glIndexMask( GLuint mask );
34
35__attribute__((visibility("default"))) void glColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha );
36
37__attribute__((visibility("default"))) void glAlphaFunc( GLenum func, GLclampf ref );
38
39__attribute__((visibility("default"))) void glBlendFunc( GLenum sfactor, GLenum dfactor );
40
41__attribute__((visibility("default"))) void glLogicOp( GLenum opcode );
42
43__attribute__((visibility("default"))) void glCullFace( GLenum mode );
44
45__attribute__((visibility("default"))) void glFrontFace( GLenum mode );
46
47__attribute__((visibility("default"))) void glPointSize( GLfloat size );
48
49__attribute__((visibility("default"))) void glLineWidth( GLfloat width );
50
51__attribute__((visibility("default"))) void glLineStipple( GLint factor, GLushort pattern );
52
53__attribute__((visibility("default"))) void glPolygonMode( GLenum face, GLenum mode );
54
55__attribute__((visibility("default"))) void glPolygonOffset( GLfloat factor, GLfloat units );
56
57__attribute__((visibility("default"))) void glPolygonStipple( const GLubyte *mask );
58
59__attribute__((visibility("default"))) void glGetPolygonStipple( GLubyte *mask );
60
61__attribute__((visibility("default"))) void glEdgeFlag( GLboolean flag );
62
63__attribute__((visibility("default"))) void glEdgeFlagv( const GLboolean *flag );
64
65__attribute__((visibility("default"))) void glScissor( GLint x, GLint y, GLsizei width, GLsizei height);
66
67__attribute__((visibility("default"))) void glClipPlane( GLenum plane, const GLdouble *equation );
68
69__attribute__((visibility("default"))) void glGetClipPlane( GLenum plane, GLdouble *equation );
70
71__attribute__((visibility("default"))) void glDrawBuffer( GLenum mode );
72
73__attribute__((visibility("default"))) void glReadBuffer( GLenum mode );
74
75__attribute__((visibility("default"))) void glEnable( GLenum cap );
76
77__attribute__((visibility("default"))) void glDisable( GLenum cap );
78
79__attribute__((visibility("default"))) GLboolean glIsEnabled( GLenum cap );
80
81
82__attribute__((visibility("default"))) void glEnableClientState( GLenum cap );
83
84__attribute__((visibility("default"))) void glDisableClientState( GLenum cap );
85
86
87__attribute__((visibility("default"))) void glGetBooleanv( GLenum pname, GLboolean *params );
88
89__attribute__((visibility("default"))) void glGetDoublev( GLenum pname, GLdouble *params );
90
91__attribute__((visibility("default"))) void glGetFloatv( GLenum pname, GLfloat *params );
92
93__attribute__((visibility("default"))) void glGetIntegerv( GLenum pname, GLint *params );
94
95
96__attribute__((visibility("default"))) void glPushAttrib( GLbitfield mask );
97
98__attribute__((visibility("default"))) void glPopAttrib( void );
99
100
101__attribute__((visibility("default"))) void glPushClientAttrib( GLbitfield mask );
102
103__attribute__((visibility("default"))) void glPopClientAttrib( void );
104
105
106__attribute__((visibility("default"))) GLint glRenderMode( GLenum mode );
107
108__attribute__((visibility("default"))) GLenum glGetError( void );
109
110__attribute__((visibility("default"))) const GLubyte * glGetString( GLenum name );
111
112__attribute__((visibility("default"))) void glFinish( void );
113
114__attribute__((visibility("default"))) void glFlush( void );
115
116__attribute__((visibility("default"))) void glHint( GLenum target, GLenum mode );
117
118
119
120
121
122
123__attribute__((visibility("default"))) void glClearDepth( GLclampd depth );
124
125__attribute__((visibility("default"))) void glDepthFunc( GLenum func );
126
127__attribute__((visibility("default"))) void glDepthMask( GLboolean flag );
128
129__attribute__((visibility("default"))) void glDepthRange( GLclampd near_val, GLclampd far_val );
130
131
132
133
134
135
136__attribute__((visibility("default"))) void glClearAccum( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha );
137
138__attribute__((visibility("default"))) void glAccum( GLenum op, GLfloat value );
139
140
141
142
143
144
145__attribute__((visibility("default"))) void glMatrixMode( GLenum mode );
146
147__attribute__((visibility("default"))) void glOrtho( GLdouble left, GLdouble right,
148 GLdouble bottom, GLdouble top,
149 GLdouble near_val, GLdouble far_val );
150
151__attribute__((visibility("default"))) void glFrustum( GLdouble left, GLdouble right,
152 GLdouble bottom, GLdouble top,
153 GLdouble near_val, GLdouble far_val );
154
155__attribute__((visibility("default"))) void glViewport( GLint x, GLint y,
156 GLsizei width, GLsizei height );
157
158__attribute__((visibility("default"))) void glPushMatrix( void );
159
160__attribute__((visibility("default"))) void glPopMatrix( void );
161
162__attribute__((visibility("default"))) void glLoadIdentity( void );
163
164__attribute__((visibility("default"))) void glLoadMatrixd( const GLdouble *m );
165__attribute__((visibility("default"))) void glLoadMatrixf( const GLfloat *m );
166
167__attribute__((visibility("default"))) void glMultMatrixd( const GLdouble *m );
168__attribute__((visibility("default"))) void glMultMatrixf( const GLfloat *m );
169
170__attribute__((visibility("default"))) void glRotated( GLdouble angle,
171 GLdouble x, GLdouble y, GLdouble z );
172__attribute__((visibility("default"))) void glRotatef( GLfloat angle,
173 GLfloat x, GLfloat y, GLfloat z );
174
175__attribute__((visibility("default"))) void glScaled( GLdouble x, GLdouble y, GLdouble z );
176__attribute__((visibility("default"))) void glScalef( GLfloat x, GLfloat y, GLfloat z );
177
178__attribute__((visibility("default"))) void glTranslated( GLdouble x, GLdouble y, GLdouble z );
179__attribute__((visibility("default"))) void glTranslatef( GLfloat x, GLfloat y, GLfloat z );
180
181
182
183
184
185
186__attribute__((visibility("default"))) GLboolean glIsList( GLuint list );
187
188__attribute__((visibility("default"))) void glDeleteLists( GLuint list, GLsizei range );
189
190__attribute__((visibility("default"))) GLuint glGenLists( GLsizei range );
191
192__attribute__((visibility("default"))) void glNewList( GLuint list, GLenum mode );
193
194__attribute__((visibility("default"))) void glEndList( void );
195
196__attribute__((visibility("default"))) void glCallList( GLuint list );
197
198__attribute__((visibility("default"))) void glCallLists( GLsizei n, GLenum type,
199 const GLvoid *lists );
200
201__attribute__((visibility("default"))) void glListBase( GLuint base );
202
203
204
205
206
207
208__attribute__((visibility("default"))) void glBegin( GLenum mode );
209
210__attribute__((visibility("default"))) void glEnd( void );
211
212
213__attribute__((visibility("default"))) void glVertex2d( GLdouble x, GLdouble y );
214__attribute__((visibility("default"))) void glVertex2f( GLfloat x, GLfloat y );
215__attribute__((visibility("default"))) void glVertex2i( GLint x, GLint y );
216__attribute__((visibility("default"))) void glVertex2s( GLshort x, GLshort y );
217
218__attribute__((visibility("default"))) void glVertex3d( GLdouble x, GLdouble y, GLdouble z );
219__attribute__((visibility("default"))) void glVertex3f( GLfloat x, GLfloat y, GLfloat z );
220__attribute__((visibility("default"))) void glVertex3i( GLint x, GLint y, GLint z );
221__attribute__((visibility("default"))) void glVertex3s( GLshort x, GLshort y, GLshort z );
222
223__attribute__((visibility("default"))) void glVertex4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
224__attribute__((visibility("default"))) void glVertex4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
225__attribute__((visibility("default"))) void glVertex4i( GLint x, GLint y, GLint z, GLint w );
226__attribute__((visibility("default"))) void glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w );
227
228__attribute__((visibility("default"))) void glVertex2dv( const GLdouble *v );
229__attribute__((visibility("default"))) void glVertex2fv( const GLfloat *v );
230__attribute__((visibility("default"))) void glVertex2iv( const GLint *v );
231__attribute__((visibility("default"))) void glVertex2sv( const GLshort *v );
232
233__attribute__((visibility("default"))) void glVertex3dv( const GLdouble *v );
234__attribute__((visibility("default"))) void glVertex3fv( const GLfloat *v );
235__attribute__((visibility("default"))) void glVertex3iv( const GLint *v );
236__attribute__((visibility("default"))) void glVertex3sv( const GLshort *v );
237
238__attribute__((visibility("default"))) void glVertex4dv( const GLdouble *v );
239__attribute__((visibility("default"))) void glVertex4fv( const GLfloat *v );
240__attribute__((visibility("default"))) void glVertex4iv( const GLint *v );
241__attribute__((visibility("default"))) void glVertex4sv( const GLshort *v );
242
243
244__attribute__((visibility("default"))) void glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz );
245__attribute__((visibility("default"))) void glNormal3d( GLdouble nx, GLdouble ny, GLdouble nz );
246__attribute__((visibility("default"))) void glNormal3f( GLfloat nx, GLfloat ny, GLfloat nz );
247__attribute__((visibility("default"))) void glNormal3i( GLint nx, GLint ny, GLint nz );
248__attribute__((visibility("default"))) void glNormal3s( GLshort nx, GLshort ny, GLshort nz );
249
250__attribute__((visibility("default"))) void glNormal3bv( const GLbyte *v );
251__attribute__((visibility("default"))) void glNormal3dv( const GLdouble *v );
252__attribute__((visibility("default"))) void glNormal3fv( const GLfloat *v );
253__attribute__((visibility("default"))) void glNormal3iv( const GLint *v );
254__attribute__((visibility("default"))) void glNormal3sv( const GLshort *v );
255
256
257__attribute__((visibility("default"))) void glIndexd( GLdouble c );
258__attribute__((visibility("default"))) void glIndexf( GLfloat c );
259__attribute__((visibility("default"))) void glIndexi( GLint c );
260__attribute__((visibility("default"))) void glIndexs( GLshort c );
261__attribute__((visibility("default"))) void glIndexub( GLubyte c );
262
263__attribute__((visibility("default"))) void glIndexdv( const GLdouble *c );
264__attribute__((visibility("default"))) void glIndexfv( const GLfloat *c );
265__attribute__((visibility("default"))) void glIndexiv( const GLint *c );
266__attribute__((visibility("default"))) void glIndexsv( const GLshort *c );
267__attribute__((visibility("default"))) void glIndexubv( const GLubyte *c );
268
269__attribute__((visibility("default"))) void glColor3b( GLbyte red, GLbyte green, GLbyte blue );
270__attribute__((visibility("default"))) void glColor3d( GLdouble red, GLdouble green, GLdouble blue );
271__attribute__((visibility("default"))) void glColor3f( GLfloat red, GLfloat green, GLfloat blue );
272__attribute__((visibility("default"))) void glColor3i( GLint red, GLint green, GLint blue );
273__attribute__((visibility("default"))) void glColor3s( GLshort red, GLshort green, GLshort blue );
274__attribute__((visibility("default"))) void glColor3ub( GLubyte red, GLubyte green, GLubyte blue );
275__attribute__((visibility("default"))) void glColor3ui( GLuint red, GLuint green, GLuint blue );
276__attribute__((visibility("default"))) void glColor3us( GLushort red, GLushort green, GLushort blue );
277
278__attribute__((visibility("default"))) void glColor4b( GLbyte red, GLbyte green,
279 GLbyte blue, GLbyte alpha );
280__attribute__((visibility("default"))) void glColor4d( GLdouble red, GLdouble green,
281 GLdouble blue, GLdouble alpha );
282__attribute__((visibility("default"))) void glColor4f( GLfloat red, GLfloat green,
283 GLfloat blue, GLfloat alpha );
284__attribute__((visibility("default"))) void glColor4i( GLint red, GLint green,
285 GLint blue, GLint alpha );
286__attribute__((visibility("default"))) void glColor4s( GLshort red, GLshort green,
287 GLshort blue, GLshort alpha );
288__attribute__((visibility("default"))) void glColor4ub( GLubyte red, GLubyte green,
289 GLubyte blue, GLubyte alpha );
290__attribute__((visibility("default"))) void glColor4ui( GLuint red, GLuint green,
291 GLuint blue, GLuint alpha );
292__attribute__((visibility("default"))) void glColor4us( GLushort red, GLushort green,
293 GLushort blue, GLushort alpha );
294
295
296__attribute__((visibility("default"))) void glColor3bv( const GLbyte *v );
297__attribute__((visibility("default"))) void glColor3dv( const GLdouble *v );
298__attribute__((visibility("default"))) void glColor3fv( const GLfloat *v );
299__attribute__((visibility("default"))) void glColor3iv( const GLint *v );
300__attribute__((visibility("default"))) void glColor3sv( const GLshort *v );
301__attribute__((visibility("default"))) void glColor3ubv( const GLubyte *v );
302__attribute__((visibility("default"))) void glColor3uiv( const GLuint *v );
303__attribute__((visibility("default"))) void glColor3usv( const GLushort *v );
304
305__attribute__((visibility("default"))) void glColor4bv( const GLbyte *v );
306__attribute__((visibility("default"))) void glColor4dv( const GLdouble *v );
307__attribute__((visibility("default"))) void glColor4fv( const GLfloat *v );
308__attribute__((visibility("default"))) void glColor4iv( const GLint *v );
309__attribute__((visibility("default"))) void glColor4sv( const GLshort *v );
310__attribute__((visibility("default"))) void glColor4ubv( const GLubyte *v );
311__attribute__((visibility("default"))) void glColor4uiv( const GLuint *v );
312__attribute__((visibility("default"))) void glColor4usv( const GLushort *v );
313
314
315__attribute__((visibility("default"))) void glTexCoord1d( GLdouble s );
316__attribute__((visibility("default"))) void glTexCoord1f( GLfloat s );
317__attribute__((visibility("default"))) void glTexCoord1i( GLint s );
318__attribute__((visibility("default"))) void glTexCoord1s( GLshort s );
319
320__attribute__((visibility("default"))) void glTexCoord2d( GLdouble s, GLdouble t );
321__attribute__((visibility("default"))) void glTexCoord2f( GLfloat s, GLfloat t );
322__attribute__((visibility("default"))) void glTexCoord2i( GLint s, GLint t );
323__attribute__((visibility("default"))) void glTexCoord2s( GLshort s, GLshort t );
324
325__attribute__((visibility("default"))) void glTexCoord3d( GLdouble s, GLdouble t, GLdouble r );
326__attribute__((visibility("default"))) void glTexCoord3f( GLfloat s, GLfloat t, GLfloat r );
327__attribute__((visibility("default"))) void glTexCoord3i( GLint s, GLint t, GLint r );
328__attribute__((visibility("default"))) void glTexCoord3s( GLshort s, GLshort t, GLshort r );
329
330__attribute__((visibility("default"))) void glTexCoord4d( GLdouble s, GLdouble t, GLdouble r, GLdouble q );
331__attribute__((visibility("default"))) void glTexCoord4f( GLfloat s, GLfloat t, GLfloat r, GLfloat q );
332__attribute__((visibility("default"))) void glTexCoord4i( GLint s, GLint t, GLint r, GLint q );
333__attribute__((visibility("default"))) void glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q );
334
335__attribute__((visibility("default"))) void glTexCoord1dv( const GLdouble *v );
336__attribute__((visibility("default"))) void glTexCoord1fv( const GLfloat *v );
337__attribute__((visibility("default"))) void glTexCoord1iv( const GLint *v );
338__attribute__((visibility("default"))) void glTexCoord1sv( const GLshort *v );
339
340__attribute__((visibility("default"))) void glTexCoord2dv( const GLdouble *v );
341__attribute__((visibility("default"))) void glTexCoord2fv( const GLfloat *v );
342__attribute__((visibility("default"))) void glTexCoord2iv( const GLint *v );
343__attribute__((visibility("default"))) void glTexCoord2sv( const GLshort *v );
344
345__attribute__((visibility("default"))) void glTexCoord3dv( const GLdouble *v );
346__attribute__((visibility("default"))) void glTexCoord3fv( const GLfloat *v );
347__attribute__((visibility("default"))) void glTexCoord3iv( const GLint *v );
348__attribute__((visibility("default"))) void glTexCoord3sv( const GLshort *v );
349
350__attribute__((visibility("default"))) void glTexCoord4dv( const GLdouble *v );
351__attribute__((visibility("default"))) void glTexCoord4fv( const GLfloat *v );
352__attribute__((visibility("default"))) void glTexCoord4iv( const GLint *v );
353__attribute__((visibility("default"))) void glTexCoord4sv( const GLshort *v );
354
355
356__attribute__((visibility("default"))) void glRasterPos2d( GLdouble x, GLdouble y );
357__attribute__((visibility("default"))) void glRasterPos2f( GLfloat x, GLfloat y );
358__attribute__((visibility("default"))) void glRasterPos2i( GLint x, GLint y );
359__attribute__((visibility("default"))) void glRasterPos2s( GLshort x, GLshort y );
360
361__attribute__((visibility("default"))) void glRasterPos3d( GLdouble x, GLdouble y, GLdouble z );
362__attribute__((visibility("default"))) void glRasterPos3f( GLfloat x, GLfloat y, GLfloat z );
363__attribute__((visibility("default"))) void glRasterPos3i( GLint x, GLint y, GLint z );
364__attribute__((visibility("default"))) void glRasterPos3s( GLshort x, GLshort y, GLshort z );
365
366__attribute__((visibility("default"))) void glRasterPos4d( GLdouble x, GLdouble y, GLdouble z, GLdouble w );
367__attribute__((visibility("default"))) void glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
368__attribute__((visibility("default"))) void glRasterPos4i( GLint x, GLint y, GLint z, GLint w );
369__attribute__((visibility("default"))) void glRasterPos4s( GLshort x, GLshort y, GLshort z, GLshort w );
370
371__attribute__((visibility("default"))) void glRasterPos2dv( const GLdouble *v );
372__attribute__((visibility("default"))) void glRasterPos2fv( const GLfloat *v );
373__attribute__((visibility("default"))) void glRasterPos2iv( const GLint *v );
374__attribute__((visibility("default"))) void glRasterPos2sv( const GLshort *v );
375
376__attribute__((visibility("default"))) void glRasterPos3dv( const GLdouble *v );
377__attribute__((visibility("default"))) void glRasterPos3fv( const GLfloat *v );
378__attribute__((visibility("default"))) void glRasterPos3iv( const GLint *v );
379__attribute__((visibility("default"))) void glRasterPos3sv( const GLshort *v );
380
381__attribute__((visibility("default"))) void glRasterPos4dv( const GLdouble *v );
382__attribute__((visibility("default"))) void glRasterPos4fv( const GLfloat *v );
383__attribute__((visibility("default"))) void glRasterPos4iv( const GLint *v );
384__attribute__((visibility("default"))) void glRasterPos4sv( const GLshort *v );
385
386
387__attribute__((visibility("default"))) void glRectd( GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2 );
388__attribute__((visibility("default"))) void glRectf( GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2 );
389__attribute__((visibility("default"))) void glRecti( GLint x1, GLint y1, GLint x2, GLint y2 );
390__attribute__((visibility("default"))) void glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 );
391
392
393__attribute__((visibility("default"))) void glRectdv( const GLdouble *v1, const GLdouble *v2 );
394__attribute__((visibility("default"))) void glRectfv( const GLfloat *v1, const GLfloat *v2 );
395__attribute__((visibility("default"))) void glRectiv( const GLint *v1, const GLint *v2 );
396__attribute__((visibility("default"))) void glRectsv( const GLshort *v1, const GLshort *v2 );
397
398
399
400
401
402
403__attribute__((visibility("default"))) void glVertexPointer( GLint size, GLenum type,
404 GLsizei stride, const GLvoid *ptr );
405
406__attribute__((visibility("default"))) void glNormalPointer( GLenum type, GLsizei stride,
407 const GLvoid *ptr );
408
409__attribute__((visibility("default"))) void glColorPointer( GLint size, GLenum type,
410 GLsizei stride, const GLvoid *ptr );
411
412__attribute__((visibility("default"))) void glIndexPointer( GLenum type, GLsizei stride,
413 const GLvoid *ptr );
414
415__attribute__((visibility("default"))) void glTexCoordPointer( GLint size, GLenum type,
416 GLsizei stride, const GLvoid *ptr );
417
418__attribute__((visibility("default"))) void glEdgeFlagPointer( GLsizei stride, const GLvoid *ptr );
419
420__attribute__((visibility("default"))) void glGetPointerv( GLenum pname, GLvoid **params );
421
422__attribute__((visibility("default"))) void glArrayElement( GLint i );
423
424__attribute__((visibility("default"))) void glDrawArrays( GLenum mode, GLint first, GLsizei count );
425
426__attribute__((visibility("default"))) void glDrawElements( GLenum mode, GLsizei count,
427 GLenum type, const GLvoid *indices );
428
429__attribute__((visibility("default"))) void glInterleavedArrays( GLenum format, GLsizei stride,
430 const GLvoid *pointer );
431
432
433
434
435
436__attribute__((visibility("default"))) void glShadeModel( GLenum mode );
437
438__attribute__((visibility("default"))) void glLightf( GLenum light, GLenum pname, GLfloat param );
439__attribute__((visibility("default"))) void glLighti( GLenum light, GLenum pname, GLint param );
440__attribute__((visibility("default"))) void glLightfv( GLenum light, GLenum pname,
441 const GLfloat *params );
442__attribute__((visibility("default"))) void glLightiv( GLenum light, GLenum pname,
443 const GLint *params );
444
445__attribute__((visibility("default"))) void glGetLightfv( GLenum light, GLenum pname,
446 GLfloat *params );
447__attribute__((visibility("default"))) void glGetLightiv( GLenum light, GLenum pname,
448 GLint *params );
449
450__attribute__((visibility("default"))) void glLightModelf( GLenum pname, GLfloat param );
451__attribute__((visibility("default"))) void glLightModeli( GLenum pname, GLint param );
452__attribute__((visibility("default"))) void glLightModelfv( GLenum pname, const GLfloat *params );
453__attribute__((visibility("default"))) void glLightModeliv( GLenum pname, const GLint *params );
454
455__attribute__((visibility("default"))) void glMaterialf( GLenum face, GLenum pname, GLfloat param );
456__attribute__((visibility("default"))) void glMateriali( GLenum face, GLenum pname, GLint param );
457__attribute__((visibility("default"))) void glMaterialfv( GLenum face, GLenum pname, const GLfloat *params );
458__attribute__((visibility("default"))) void glMaterialiv( GLenum face, GLenum pname, const GLint *params );
459
460__attribute__((visibility("default"))) void glGetMaterialfv( GLenum face, GLenum pname, GLfloat *params );
461__attribute__((visibility("default"))) void glGetMaterialiv( GLenum face, GLenum pname, GLint *params );
462
463__attribute__((visibility("default"))) void glColorMaterial( GLenum face, GLenum mode );
464
465
466
467
468
469
470__attribute__((visibility("default"))) void glPixelZoom( GLfloat xfactor, GLfloat yfactor );
471
472__attribute__((visibility("default"))) void glPixelStoref( GLenum pname, GLfloat param );
473__attribute__((visibility("default"))) void glPixelStorei( GLenum pname, GLint param );
474
475__attribute__((visibility("default"))) void glPixelTransferf( GLenum pname, GLfloat param );
476__attribute__((visibility("default"))) void glPixelTransferi( GLenum pname, GLint param );
477
478__attribute__((visibility("default"))) void glPixelMapfv( GLenum map, GLsizei mapsize,
479 const GLfloat *values );
480__attribute__((visibility("default"))) void glPixelMapuiv( GLenum map, GLsizei mapsize,
481 const GLuint *values );
482__attribute__((visibility("default"))) void glPixelMapusv( GLenum map, GLsizei mapsize,
483 const GLushort *values );
484
485__attribute__((visibility("default"))) void glGetPixelMapfv( GLenum map, GLfloat *values );
486__attribute__((visibility("default"))) void glGetPixelMapuiv( GLenum map, GLuint *values );
487__attribute__((visibility("default"))) void glGetPixelMapusv( GLenum map, GLushort *values );
488
489__attribute__((visibility("default"))) void glBitmap( GLsizei width, GLsizei height,
490 GLfloat xorig, GLfloat yorig,
491 GLfloat xmove, GLfloat ymove,
492 const GLubyte *bitmap );
493
494__attribute__((visibility("default"))) void glReadPixels( GLint x, GLint y,
495 GLsizei width, GLsizei height,
496 GLenum format, GLenum type,
497 GLvoid *pixels );
498
499__attribute__((visibility("default"))) void glDrawPixels( GLsizei width, GLsizei height,
500 GLenum format, GLenum type,
501 const GLvoid *pixels );
502
503__attribute__((visibility("default"))) void glCopyPixels( GLint x, GLint y,
504 GLsizei width, GLsizei height,
505 GLenum type );
506
507
508
509
510
511__attribute__((visibility("default"))) void glStencilFunc( GLenum func, GLint ref, GLuint mask );
512
513__attribute__((visibility("default"))) void glStencilMask( GLuint mask );
514
515__attribute__((visibility("default"))) void glStencilOp( GLenum fail, GLenum zfail, GLenum zpass );
516
517__attribute__((visibility("default"))) void glClearStencil( GLint s );
518
519
520
521
522
523
524
525__attribute__((visibility("default"))) void glTexGend( GLenum coord, GLenum pname, GLdouble param );
526__attribute__((visibility("default"))) void glTexGenf( GLenum coord, GLenum pname, GLfloat param );
527__attribute__((visibility("default"))) void glTexGeni( GLenum coord, GLenum pname, GLint param );
528
529__attribute__((visibility("default"))) void glTexGendv( GLenum coord, GLenum pname, const GLdouble *params );
530__attribute__((visibility("default"))) void glTexGenfv( GLenum coord, GLenum pname, const GLfloat *params );
531__attribute__((visibility("default"))) void glTexGeniv( GLenum coord, GLenum pname, const GLint *params );
532
533__attribute__((visibility("default"))) void glGetTexGendv( GLenum coord, GLenum pname, GLdouble *params );
534__attribute__((visibility("default"))) void glGetTexGenfv( GLenum coord, GLenum pname, GLfloat *params );
535__attribute__((visibility("default"))) void glGetTexGeniv( GLenum coord, GLenum pname, GLint *params );
536
537
538__attribute__((visibility("default"))) void glTexEnvf( GLenum target, GLenum pname, GLfloat param );
539__attribute__((visibility("default"))) void glTexEnvi( GLenum target, GLenum pname, GLint param );
540
541__attribute__((visibility("default"))) void glTexEnvfv( GLenum target, GLenum pname, const GLfloat *params );
542__attribute__((visibility("default"))) void glTexEnviv( GLenum target, GLenum pname, const GLint *params );
543
544__attribute__((visibility("default"))) void glGetTexEnvfv( GLenum target, GLenum pname, GLfloat *params );
545__attribute__((visibility("default"))) void glGetTexEnviv( GLenum target, GLenum pname, GLint *params );
546
547
548__attribute__((visibility("default"))) void glTexParameterf( GLenum target, GLenum pname, GLfloat param );
549__attribute__((visibility("default"))) void glTexParameteri( GLenum target, GLenum pname, GLint param );
550
551__attribute__((visibility("default"))) void glTexParameterfv( GLenum target, GLenum pname,
552 const GLfloat *params );
553__attribute__((visibility("default"))) void glTexParameteriv( GLenum target, GLenum pname,
554 const GLint *params );
555
556__attribute__((visibility("default"))) void glGetTexParameterfv( GLenum target,
557 GLenum pname, GLfloat *params);
558__attribute__((visibility("default"))) void glGetTexParameteriv( GLenum target,
559 GLenum pname, GLint *params );
560
561__attribute__((visibility("default"))) void glGetTexLevelParameterfv( GLenum target, GLint level,
562 GLenum pname, GLfloat *params );
563__attribute__((visibility("default"))) void glGetTexLevelParameteriv( GLenum target, GLint level,
564 GLenum pname, GLint *params );
565
566
567__attribute__((visibility("default"))) void glTexImage1D( GLenum target, GLint level,
568 GLint internalFormat,
569 GLsizei width, GLint border,
570 GLenum format, GLenum type,
571 const GLvoid *pixels );
572
573__attribute__((visibility("default"))) void glTexImage2D( GLenum target, GLint level,
574 GLint internalFormat,
575 GLsizei width, GLsizei height,
576 GLint border, GLenum format, GLenum type,
577 const GLvoid *pixels );
578
579__attribute__((visibility("default"))) void glGetTexImage( GLenum target, GLint level,
580 GLenum format, GLenum type,
581 GLvoid *pixels );
582
583
584
585
586__attribute__((visibility("default"))) void glGenTextures( GLsizei n, GLuint *textures );
587
588__attribute__((visibility("default"))) void glDeleteTextures( GLsizei n, const GLuint *textures);
589
590__attribute__((visibility("default"))) void glBindTexture( GLenum target, GLuint texture );
591
592__attribute__((visibility("default"))) void glPrioritizeTextures( GLsizei n,
593 const GLuint *textures,
594 const GLclampf *priorities );
595
596__attribute__((visibility("default"))) GLboolean glAreTexturesResident( GLsizei n,
597 const GLuint *textures,
598 GLboolean *residences );
599
600__attribute__((visibility("default"))) GLboolean glIsTexture( GLuint texture );
601
602
603__attribute__((visibility("default"))) void glTexSubImage1D( GLenum target, GLint level,
604 GLint xoffset,
605 GLsizei width, GLenum format,
606 GLenum type, const GLvoid *pixels );
607
608
609__attribute__((visibility("default"))) void glTexSubImage2D( GLenum target, GLint level,
610 GLint xoffset, GLint yoffset,
611 GLsizei width, GLsizei height,
612 GLenum format, GLenum type,
613 const GLvoid *pixels );
614
615
616__attribute__((visibility("default"))) void glCopyTexImage1D( GLenum target, GLint level,
617 GLenum internalformat,
618 GLint x, GLint y,
619 GLsizei width, GLint border );
620
621
622__attribute__((visibility("default"))) void glCopyTexImage2D( GLenum target, GLint level,
623 GLenum internalformat,
624 GLint x, GLint y,
625 GLsizei width, GLsizei height,
626 GLint border );
627
628
629__attribute__((visibility("default"))) void glCopyTexSubImage1D( GLenum target, GLint level,
630 GLint xoffset, GLint x, GLint y,
631 GLsizei width );
632
633
634__attribute__((visibility("default"))) void glCopyTexSubImage2D( GLenum target, GLint level,
635 GLint xoffset, GLint yoffset,
636 GLint x, GLint y,
637 GLsizei width, GLsizei height );
638
639
640
641
642
643
644__attribute__((visibility("default"))) void glMap1d( GLenum target, GLdouble u1, GLdouble u2,
645 GLint stride,
646 GLint order, const GLdouble *points );
647__attribute__((visibility("default"))) void glMap1f( GLenum target, GLfloat u1, GLfloat u2,
648 GLint stride,
649 GLint order, const GLfloat *points );
650
651__attribute__((visibility("default"))) void glMap2d( GLenum target,
652 GLdouble u1, GLdouble u2, GLint ustride, GLint uorder,
653 GLdouble v1, GLdouble v2, GLint vstride, GLint vorder,
654 const GLdouble *points );
655__attribute__((visibility("default"))) void glMap2f( GLenum target,
656 GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
657 GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,
658 const GLfloat *points );
659
660__attribute__((visibility("default"))) void glGetMapdv( GLenum target, GLenum query, GLdouble *v );
661__attribute__((visibility("default"))) void glGetMapfv( GLenum target, GLenum query, GLfloat *v );
662__attribute__((visibility("default"))) void glGetMapiv( GLenum target, GLenum query, GLint *v );
663
664__attribute__((visibility("default"))) void glEvalCoord1d( GLdouble u );
665__attribute__((visibility("default"))) void glEvalCoord1f( GLfloat u );
666
667__attribute__((visibility("default"))) void glEvalCoord1dv( const GLdouble *u );
668__attribute__((visibility("default"))) void glEvalCoord1fv( const GLfloat *u );
669
670__attribute__((visibility("default"))) void glEvalCoord2d( GLdouble u, GLdouble v );
671__attribute__((visibility("default"))) void glEvalCoord2f( GLfloat u, GLfloat v );
672
673__attribute__((visibility("default"))) void glEvalCoord2dv( const GLdouble *u );
674__attribute__((visibility("default"))) void glEvalCoord2fv( const GLfloat *u );
675
676__attribute__((visibility("default"))) void glMapGrid1d( GLint un, GLdouble u1, GLdouble u2 );
677__attribute__((visibility("default"))) void glMapGrid1f( GLint un, GLfloat u1, GLfloat u2 );
678
679__attribute__((visibility("default"))) void glMapGrid2d( GLint un, GLdouble u1, GLdouble u2,
680 GLint vn, GLdouble v1, GLdouble v2 );
681__attribute__((visibility("default"))) void glMapGrid2f( GLint un, GLfloat u1, GLfloat u2,
682 GLint vn, GLfloat v1, GLfloat v2 );
683
684__attribute__((visibility("default"))) void glEvalPoint1( GLint i );
685
686__attribute__((visibility("default"))) void glEvalPoint2( GLint i, GLint j );
687
688__attribute__((visibility("default"))) void glEvalMesh1( GLenum mode, GLint i1, GLint i2 );
689
690__attribute__((visibility("default"))) void glEvalMesh2( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 );
691
692
693
694
695
696
697__attribute__((visibility("default"))) void glFogf( GLenum pname, GLfloat param );
698
699__attribute__((visibility("default"))) void glFogi( GLenum pname, GLint param );
700
701__attribute__((visibility("default"))) void glFogfv( GLenum pname, const GLfloat *params );
702
703__attribute__((visibility("default"))) void glFogiv( GLenum pname, const GLint *params );
704
705
706
707
708
709
710__attribute__((visibility("default"))) void glFeedbackBuffer( GLsizei size, GLenum type, GLfloat *buffer );
711
712__attribute__((visibility("default"))) void glPassThrough( GLfloat token );
713
714__attribute__((visibility("default"))) void glSelectBuffer( GLsizei size, GLuint *buffer );
715
716__attribute__((visibility("default"))) void glInitNames( void );
717
718__attribute__((visibility("default"))) void glLoadName( GLuint name );
719
720__attribute__((visibility("default"))) void glPushName( GLuint name );
721
722__attribute__((visibility("default"))) void glPopName( void );
723# 1527 "../../include/GL/gl.h"
724__attribute__((visibility("default"))) void glDrawRangeElements( GLenum mode, GLuint start,
725 GLuint end, GLsizei count, GLenum type, const GLvoid *indices );
726
727__attribute__((visibility("default"))) void glTexImage3D( GLenum target, GLint level,
728 GLint internalFormat,
729 GLsizei width, GLsizei height,
730 GLsizei depth, GLint border,
731 GLenum format, GLenum type,
732 const GLvoid *pixels );
733
734__attribute__((visibility("default"))) void glTexSubImage3D( GLenum target, GLint level,
735 GLint xoffset, GLint yoffset,
736 GLint zoffset, GLsizei width,
737 GLsizei height, GLsizei depth,
738 GLenum format,
739 GLenum type, const GLvoid *pixels);
740
741__attribute__((visibility("default"))) void glCopyTexSubImage3D( GLenum target, GLint level,
742 GLint xoffset, GLint yoffset,
743 GLint zoffset, GLint x,
744 GLint y, GLsizei width,
745 GLsizei height );
746
747typedef void ( * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
748typedef void ( * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
749typedef void ( * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
750typedef void ( * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
751# 1637 "../../include/GL/gl.h"
752__attribute__((visibility("default"))) void glColorTable( GLenum target, GLenum internalformat,
753 GLsizei width, GLenum format,
754 GLenum type, const GLvoid *table );
755
756__attribute__((visibility("default"))) void glColorSubTable( GLenum target,
757 GLsizei start, GLsizei count,
758 GLenum format, GLenum type,
759 const GLvoid *data );
760
761__attribute__((visibility("default"))) void glColorTableParameteriv(GLenum target, GLenum pname,
762 const GLint *params);
763
764__attribute__((visibility("default"))) void glColorTableParameterfv(GLenum target, GLenum pname,
765 const GLfloat *params);
766
767__attribute__((visibility("default"))) void glCopyColorSubTable( GLenum target, GLsizei start,
768 GLint x, GLint y, GLsizei width );
769
770__attribute__((visibility("default"))) void glCopyColorTable( GLenum target, GLenum internalformat,
771 GLint x, GLint y, GLsizei width );
772
773__attribute__((visibility("default"))) void glGetColorTable( GLenum target, GLenum format,
774 GLenum type, GLvoid *table );
775
776__attribute__((visibility("default"))) void glGetColorTableParameterfv( GLenum target, GLenum pname,
777 GLfloat *params );
778
779__attribute__((visibility("default"))) void glGetColorTableParameteriv( GLenum target, GLenum pname,
780 GLint *params );
781
782__attribute__((visibility("default"))) void glBlendEquation( GLenum mode );
783
784__attribute__((visibility("default"))) void glBlendColor( GLclampf red, GLclampf green,
785 GLclampf blue, GLclampf alpha );
786
787__attribute__((visibility("default"))) void glHistogram( GLenum target, GLsizei width,
788 GLenum internalformat, GLboolean sink );
789
790__attribute__((visibility("default"))) void glResetHistogram( GLenum target );
791
792__attribute__((visibility("default"))) void glGetHistogram( GLenum target, GLboolean reset,
793 GLenum format, GLenum type,
794 GLvoid *values );
795
796__attribute__((visibility("default"))) void glGetHistogramParameterfv( GLenum target, GLenum pname,
797 GLfloat *params );
798
799__attribute__((visibility("default"))) void glGetHistogramParameteriv( GLenum target, GLenum pname,
800 GLint *params );
801
802__attribute__((visibility("default"))) void glMinmax( GLenum target, GLenum internalformat,
803 GLboolean sink );
804
805__attribute__((visibility("default"))) void glResetMinmax( GLenum target );
806
807__attribute__((visibility("default"))) void glGetMinmax( GLenum target, GLboolean reset,
808 GLenum format, GLenum types,
809 GLvoid *values );
810
811__attribute__((visibility("default"))) void glGetMinmaxParameterfv( GLenum target, GLenum pname,
812 GLfloat *params );
813
814__attribute__((visibility("default"))) void glGetMinmaxParameteriv( GLenum target, GLenum pname,
815 GLint *params );
816
817__attribute__((visibility("default"))) void glConvolutionFilter1D( GLenum target,
818 GLenum internalformat, GLsizei width, GLenum format, GLenum type,
819 const GLvoid *image );
820
821__attribute__((visibility("default"))) void glConvolutionFilter2D( GLenum target,
822 GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
823 GLenum type, const GLvoid *image );
824
825__attribute__((visibility("default"))) void glConvolutionParameterf( GLenum target, GLenum pname,
826 GLfloat params );
827
828__attribute__((visibility("default"))) void glConvolutionParameterfv( GLenum target, GLenum pname,
829 const GLfloat *params );
830
831__attribute__((visibility("default"))) void glConvolutionParameteri( GLenum target, GLenum pname,
832 GLint params );
833
834__attribute__((visibility("default"))) void glConvolutionParameteriv( GLenum target, GLenum pname,
835 const GLint *params );
836
837__attribute__((visibility("default"))) void glCopyConvolutionFilter1D( GLenum target,
838 GLenum internalformat, GLint x, GLint y, GLsizei width );
839
840__attribute__((visibility("default"))) void glCopyConvolutionFilter2D( GLenum target,
841 GLenum internalformat, GLint x, GLint y, GLsizei width,
842 GLsizei height);
843
844__attribute__((visibility("default"))) void glGetConvolutionFilter( GLenum target, GLenum format,
845 GLenum type, GLvoid *image );
846
847__attribute__((visibility("default"))) void glGetConvolutionParameterfv( GLenum target, GLenum pname,
848 GLfloat *params );
849
850__attribute__((visibility("default"))) void glGetConvolutionParameteriv( GLenum target, GLenum pname,
851 GLint *params );
852
853__attribute__((visibility("default"))) void glSeparableFilter2D( GLenum target,
854 GLenum internalformat, GLsizei width, GLsizei height, GLenum format,
855 GLenum type, const GLvoid *row, const GLvoid *column );
856
857__attribute__((visibility("default"))) void glGetSeparableFilter( GLenum target, GLenum format,
858 GLenum type, GLvoid *row, GLvoid *column, GLvoid *span );
859
860typedef void ( * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
861typedef void ( * PFNGLBLENDEQUATIONPROC) (GLenum mode);
862# 1859 "../../include/GL/gl.h"
863__attribute__((visibility("default"))) void glActiveTexture( GLenum texture );
864
865__attribute__((visibility("default"))) void glClientActiveTexture( GLenum texture );
866
867__attribute__((visibility("default"))) void glCompressedTexImage1D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data );
868
869__attribute__((visibility("default"))) void glCompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data );
870
871__attribute__((visibility("default"))) void glCompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data );
872
873__attribute__((visibility("default"))) void glCompressedTexSubImage1D( GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data );
874
875__attribute__((visibility("default"))) void glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data );
876
877__attribute__((visibility("default"))) void glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data );
878
879__attribute__((visibility("default"))) void glGetCompressedTexImage( GLenum target, GLint lod, GLvoid *img );
880
881__attribute__((visibility("default"))) void glMultiTexCoord1d( GLenum target, GLdouble s );
882
883__attribute__((visibility("default"))) void glMultiTexCoord1dv( GLenum target, const GLdouble *v );
884
885__attribute__((visibility("default"))) void glMultiTexCoord1f( GLenum target, GLfloat s );
886
887__attribute__((visibility("default"))) void glMultiTexCoord1fv( GLenum target, const GLfloat *v );
888
889__attribute__((visibility("default"))) void glMultiTexCoord1i( GLenum target, GLint s );
890
891__attribute__((visibility("default"))) void glMultiTexCoord1iv( GLenum target, const GLint *v );
892
893__attribute__((visibility("default"))) void glMultiTexCoord1s( GLenum target, GLshort s );
894
895__attribute__((visibility("default"))) void glMultiTexCoord1sv( GLenum target, const GLshort *v );
896
897__attribute__((visibility("default"))) void glMultiTexCoord2d( GLenum target, GLdouble s, GLdouble t );
898
899__attribute__((visibility("default"))) void glMultiTexCoord2dv( GLenum target, const GLdouble *v );
900
901__attribute__((visibility("default"))) void glMultiTexCoord2f( GLenum target, GLfloat s, GLfloat t );
902
903__attribute__((visibility("default"))) void glMultiTexCoord2fv( GLenum target, const GLfloat *v );
904
905__attribute__((visibility("default"))) void glMultiTexCoord2i( GLenum target, GLint s, GLint t );
906
907__attribute__((visibility("default"))) void glMultiTexCoord2iv( GLenum target, const GLint *v );
908
909__attribute__((visibility("default"))) void glMultiTexCoord2s( GLenum target, GLshort s, GLshort t );
910
911__attribute__((visibility("default"))) void glMultiTexCoord2sv( GLenum target, const GLshort *v );
912
913__attribute__((visibility("default"))) void glMultiTexCoord3d( GLenum target, GLdouble s, GLdouble t, GLdouble r );
914
915__attribute__((visibility("default"))) void glMultiTexCoord3dv( GLenum target, const GLdouble *v );
916
917__attribute__((visibility("default"))) void glMultiTexCoord3f( GLenum target, GLfloat s, GLfloat t, GLfloat r );
918
919__attribute__((visibility("default"))) void glMultiTexCoord3fv( GLenum target, const GLfloat *v );
920
921__attribute__((visibility("default"))) void glMultiTexCoord3i( GLenum target, GLint s, GLint t, GLint r );
922
923__attribute__((visibility("default"))) void glMultiTexCoord3iv( GLenum target, const GLint *v );
924
925__attribute__((visibility("default"))) void glMultiTexCoord3s( GLenum target, GLshort s, GLshort t, GLshort r );
926
927__attribute__((visibility("default"))) void glMultiTexCoord3sv( GLenum target, const GLshort *v );
928
929__attribute__((visibility("default"))) void glMultiTexCoord4d( GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q );
930
931__attribute__((visibility("default"))) void glMultiTexCoord4dv( GLenum target, const GLdouble *v );
932
933__attribute__((visibility("default"))) void glMultiTexCoord4f( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q );
934
935__attribute__((visibility("default"))) void glMultiTexCoord4fv( GLenum target, const GLfloat *v );
936
937__attribute__((visibility("default"))) void glMultiTexCoord4i( GLenum target, GLint s, GLint t, GLint r, GLint q );
938
939__attribute__((visibility("default"))) void glMultiTexCoord4iv( GLenum target, const GLint *v );
940
941__attribute__((visibility("default"))) void glMultiTexCoord4s( GLenum target, GLshort s, GLshort t, GLshort r, GLshort q );
942
943__attribute__((visibility("default"))) void glMultiTexCoord4sv( GLenum target, const GLshort *v );
944
945
946__attribute__((visibility("default"))) void glLoadTransposeMatrixd( const GLdouble m[16] );
947
948__attribute__((visibility("default"))) void glLoadTransposeMatrixf( const GLfloat m[16] );
949
950__attribute__((visibility("default"))) void glMultTransposeMatrixd( const GLdouble m[16] );
951
952__attribute__((visibility("default"))) void glMultTransposeMatrixf( const GLfloat m[16] );
953
954__attribute__((visibility("default"))) void glSampleCoverage( GLclampf value, GLboolean invert );
955
956
957typedef void ( * PFNGLACTIVETEXTUREPROC) (GLenum texture);
958typedef void ( * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert);
959typedef void ( * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
960typedef void ( * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
961typedef void ( * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
962typedef void ( * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
963typedef void ( * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
964typedef void ( * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
965typedef void ( * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint level, GLvoid *img);
966# 2007 "../../include/GL/gl.h"
967__attribute__((visibility("default"))) void glActiveTextureARB(GLenum texture);
968__attribute__((visibility("default"))) void glClientActiveTextureARB(GLenum texture);
969__attribute__((visibility("default"))) void glMultiTexCoord1dARB(GLenum target, GLdouble s);
970__attribute__((visibility("default"))) void glMultiTexCoord1dvARB(GLenum target, const GLdouble *v);
971__attribute__((visibility("default"))) void glMultiTexCoord1fARB(GLenum target, GLfloat s);
972__attribute__((visibility("default"))) void glMultiTexCoord1fvARB(GLenum target, const GLfloat *v);
973__attribute__((visibility("default"))) void glMultiTexCoord1iARB(GLenum target, GLint s);
974__attribute__((visibility("default"))) void glMultiTexCoord1ivARB(GLenum target, const GLint *v);
975__attribute__((visibility("default"))) void glMultiTexCoord1sARB(GLenum target, GLshort s);
976__attribute__((visibility("default"))) void glMultiTexCoord1svARB(GLenum target, const GLshort *v);
977__attribute__((visibility("default"))) void glMultiTexCoord2dARB(GLenum target, GLdouble s, GLdouble t);
978__attribute__((visibility("default"))) void glMultiTexCoord2dvARB(GLenum target, const GLdouble *v);
979__attribute__((visibility("default"))) void glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t);
980__attribute__((visibility("default"))) void glMultiTexCoord2fvARB(GLenum target, const GLfloat *v);
981__attribute__((visibility("default"))) void glMultiTexCoord2iARB(GLenum target, GLint s, GLint t);
982__attribute__((visibility("default"))) void glMultiTexCoord2ivARB(GLenum target, const GLint *v);
983__attribute__((visibility("default"))) void glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t);
984__attribute__((visibility("default"))) void glMultiTexCoord2svARB(GLenum target, const GLshort *v);
985__attribute__((visibility("default"))) void glMultiTexCoord3dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r);
986__attribute__((visibility("default"))) void glMultiTexCoord3dvARB(GLenum target, const GLdouble *v);
987__attribute__((visibility("default"))) void glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r);
988__attribute__((visibility("default"))) void glMultiTexCoord3fvARB(GLenum target, const GLfloat *v);
989__attribute__((visibility("default"))) void glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r);
990__attribute__((visibility("default"))) void glMultiTexCoord3ivARB(GLenum target, const GLint *v);
991__attribute__((visibility("default"))) void glMultiTexCoord3sARB(GLenum target, GLshort s, GLshort t, GLshort r);
992__attribute__((visibility("default"))) void glMultiTexCoord3svARB(GLenum target, const GLshort *v);
993__attribute__((visibility("default"))) void glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
994__attribute__((visibility("default"))) void glMultiTexCoord4dvARB(GLenum target, const GLdouble *v);
995__attribute__((visibility("default"))) void glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
996__attribute__((visibility("default"))) void glMultiTexCoord4fvARB(GLenum target, const GLfloat *v);
997__attribute__((visibility("default"))) void glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, GLint r, GLint q);
998__attribute__((visibility("default"))) void glMultiTexCoord4ivARB(GLenum target, const GLint *v);
999__attribute__((visibility("default"))) void glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
1000__attribute__((visibility("default"))) void glMultiTexCoord4svARB(GLenum target, const GLshort *v);
1001
1002typedef void ( * PFNGLACTIVETEXTUREARBPROC) (GLenum texture);
1003typedef void ( * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);
1004typedef void ( * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
1005typedef void ( * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
1006typedef void ( * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
1007typedef void ( * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
1008typedef void ( * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
1009typedef void ( * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
1010typedef void ( * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
1011typedef void ( * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
1012typedef void ( * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
1013typedef void ( * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
1014typedef void ( * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
1015typedef void ( * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
1016typedef void ( * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
1017typedef void ( * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
1018typedef void ( * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
1019typedef void ( * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
1020typedef void ( * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
1021typedef void ( * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
1022typedef void ( * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
1023typedef void ( * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
1024typedef void ( * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
1025typedef void ( * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
1026typedef void ( * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
1027typedef void ( * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
1028typedef void ( * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
1029typedef void ( * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
1030typedef void ( * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
1031typedef void ( * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
1032typedef void ( * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
1033typedef void ( * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
1034typedef void ( * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
1035typedef void ( * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
1036# 2091 "../../include/GL/gl.h"
1037# 1 "../../include/GL/glext.h" 1
1038# 5064 "../../include/GL/glext.h"
1039# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
1040# 149 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 3 4
1041typedef int ptrdiff_t;
1042# 211 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 3 4
1043typedef unsigned int size_t;
1044# 323 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 3 4
1045typedef long int wchar_t;
1046# 5065 "../../include/GL/glext.h" 2
1047
1048
1049typedef char GLchar;
1050
1051
1052
1053
1054typedef ptrdiff_t GLintptr;
1055typedef ptrdiff_t GLsizeiptr;
1056
1057
1058
1059
1060typedef ptrdiff_t GLintptrARB;
1061typedef ptrdiff_t GLsizeiptrARB;
1062
1063
1064
1065
1066typedef char GLcharARB;
1067typedef unsigned int GLhandleARB;
1068
1069
1070
1071
1072typedef unsigned short GLhalfARB;
1073
1074
1075
1076typedef unsigned short GLhalfNV;
1077# 5103 "../../include/GL/glext.h"
1078# 1 "/usr/include/inttypes.h" 1 3 4
1079# 26 "/usr/include/inttypes.h" 3 4
1080# 1 "/usr/include/features.h" 1 3 4
1081# 357 "/usr/include/features.h" 3 4
1082# 1 "/usr/include/sys/cdefs.h" 1 3 4
1083# 353 "/usr/include/sys/cdefs.h" 3 4
1084# 1 "/usr/include/bits/wordsize.h" 1 3 4
1085# 354 "/usr/include/sys/cdefs.h" 2 3 4
1086# 358 "/usr/include/features.h" 2 3 4
1087# 381 "/usr/include/features.h" 3 4
1088# 1 "/usr/include/gnu/stubs.h" 1 3 4
1089# 382 "/usr/include/features.h" 2 3 4
1090# 27 "/usr/include/inttypes.h" 2 3 4
1091
1092# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stdint.h" 1 3 4
1093
1094
1095# 1 "/usr/include/stdint.h" 1 3 4
1096# 27 "/usr/include/stdint.h" 3 4
1097# 1 "/usr/include/bits/wchar.h" 1 3 4
1098# 28 "/usr/include/stdint.h" 2 3 4
1099# 1 "/usr/include/bits/wordsize.h" 1 3 4
1100# 29 "/usr/include/stdint.h" 2 3 4
1101# 37 "/usr/include/stdint.h" 3 4
1102typedef signed char int8_t;
1103typedef short int int16_t;
1104typedef int int32_t;
1105
1106
1107
1108__extension__
1109typedef long long int int64_t;
1110
1111
1112
1113
1114typedef unsigned char uint8_t;
1115typedef unsigned short int uint16_t;
1116
1117typedef unsigned int uint32_t;
1118
1119
1120
1121
1122
1123__extension__
1124typedef unsigned long long int uint64_t;
1125
1126
1127
1128
1129
1130
1131typedef signed char int_least8_t;
1132typedef short int int_least16_t;
1133typedef int int_least32_t;
1134
1135
1136
1137__extension__
1138typedef long long int int_least64_t;
1139
1140
1141
1142typedef unsigned char uint_least8_t;
1143typedef unsigned short int uint_least16_t;
1144typedef unsigned int uint_least32_t;
1145
1146
1147
1148__extension__
1149typedef unsigned long long int uint_least64_t;
1150
1151
1152
1153
1154
1155
1156typedef signed char int_fast8_t;
1157
1158
1159
1160
1161
1162typedef int int_fast16_t;
1163typedef int int_fast32_t;
1164__extension__
1165typedef long long int int_fast64_t;
1166
1167
1168
1169typedef unsigned char uint_fast8_t;
1170
1171
1172
1173
1174
1175typedef unsigned int uint_fast16_t;
1176typedef unsigned int uint_fast32_t;
1177__extension__
1178typedef unsigned long long int uint_fast64_t;
1179# 126 "/usr/include/stdint.h" 3 4
1180typedef int intptr_t;
1181
1182
1183typedef unsigned int uintptr_t;
1184# 138 "/usr/include/stdint.h" 3 4
1185__extension__
1186typedef long long int intmax_t;
1187__extension__
1188typedef unsigned long long int uintmax_t;
1189# 4 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stdint.h" 2 3 4
1190# 29 "/usr/include/inttypes.h" 2 3 4
1191
1192
1193
1194
1195
1196
1197typedef long int __gwchar_t;
1198# 274 "/usr/include/inttypes.h" 3 4
1199
1200# 288 "/usr/include/inttypes.h" 3 4
1201typedef struct
1202 {
1203 long long int quot;
1204 long long int rem;
1205 } imaxdiv_t;
1206
1207
1208
1209
1210
1211extern intmax_t imaxabs (intmax_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
1212
1213
1214extern imaxdiv_t imaxdiv (intmax_t __numer, intmax_t __denom)
1215 __attribute__ ((__nothrow__)) __attribute__ ((__const__));
1216
1217
1218extern intmax_t strtoimax (__const char *__restrict __nptr,
1219 char **__restrict __endptr, int __base) __attribute__ ((__nothrow__));
1220
1221
1222extern uintmax_t strtoumax (__const char *__restrict __nptr,
1223 char ** __restrict __endptr, int __base) __attribute__ ((__nothrow__));
1224
1225
1226extern intmax_t wcstoimax (__const __gwchar_t *__restrict __nptr,
1227 __gwchar_t **__restrict __endptr, int __base)
1228 __attribute__ ((__nothrow__));
1229
1230
1231extern uintmax_t wcstoumax (__const __gwchar_t *__restrict __nptr,
1232 __gwchar_t ** __restrict __endptr, int __base)
1233 __attribute__ ((__nothrow__));
1234# 379 "/usr/include/inttypes.h" 3 4
1235__extension__
1236extern long long int __strtoll_internal (__const char *__restrict __nptr,
1237 char **__restrict __endptr,
1238 int __base, int __group)
1239 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1240
1241extern __inline __attribute__ ((__gnu_inline__)) intmax_t
1242__attribute__ ((__nothrow__)) strtoimax (__const char *__restrict nptr, char **__restrict endptr, int base)
1243
1244{
1245 return __strtoll_internal (nptr, endptr, base, 0);
1246}
1247
1248__extension__
1249extern unsigned long long int __strtoull_internal (__const char *
1250 __restrict __nptr,
1251 char **
1252 __restrict __endptr,
1253 int __base,
1254 int __group)
1255 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1256
1257extern __inline __attribute__ ((__gnu_inline__)) uintmax_t
1258__attribute__ ((__nothrow__)) strtoumax (__const char *__restrict nptr, char **__restrict endptr, int base)
1259
1260{
1261 return __strtoull_internal (nptr, endptr, base, 0);
1262}
1263
1264__extension__
1265extern long long int __wcstoll_internal (__const __gwchar_t *
1266 __restrict __nptr,
1267 __gwchar_t **__restrict __endptr,
1268 int __base, int __group)
1269 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1270
1271extern __inline __attribute__ ((__gnu_inline__)) intmax_t
1272__attribute__ ((__nothrow__)) wcstoimax (__const __gwchar_t *__restrict nptr, __gwchar_t **__restrict endptr, int base)
1273
1274{
1275 return __wcstoll_internal (nptr, endptr, base, 0);
1276}
1277
1278
1279__extension__
1280extern unsigned long long int __wcstoull_internal (__const __gwchar_t *
1281 __restrict __nptr,
1282 __gwchar_t **
1283 __restrict __endptr,
1284 int __base,
1285 int __group)
1286 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
1287
1288extern __inline __attribute__ ((__gnu_inline__)) uintmax_t
1289__attribute__ ((__nothrow__)) wcstoumax (__const __gwchar_t *__restrict nptr, __gwchar_t **__restrict endptr, int base)
1290
1291{
1292 return __wcstoull_internal (nptr, endptr, base, 0);
1293}
1294
1295
1296
1297
1298
1299# 5104 "../../include/GL/glext.h" 2
1300# 5136 "../../include/GL/glext.h"
1301typedef int64_t GLint64EXT;
1302typedef uint64_t GLuint64EXT;
1303
1304
1305
1306typedef int64_t GLint64;
1307typedef uint64_t GLuint64;
1308typedef struct __GLsync *GLsync;
1309
1310
1311
1312
1313struct _cl_context;
1314struct _cl_event;
1315
1316
1317
1318typedef void ( *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
1319
1320
1321
1322typedef void ( *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,GLvoid *userParam);
1323
1324
1325
1326typedef GLintptr GLvdpauSurfaceNV;
1327# 5185 "../../include/GL/glext.h"
1328__attribute__((visibility("default"))) void glColorTable (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
1329__attribute__((visibility("default"))) void glColorTableParameterfv (GLenum target, GLenum pname, const GLfloat *params);
1330__attribute__((visibility("default"))) void glColorTableParameteriv (GLenum target, GLenum pname, const GLint *params);
1331__attribute__((visibility("default"))) void glCopyColorTable (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
1332__attribute__((visibility("default"))) void glGetColorTable (GLenum target, GLenum format, GLenum type, GLvoid *table);
1333__attribute__((visibility("default"))) void glGetColorTableParameterfv (GLenum target, GLenum pname, GLfloat *params);
1334__attribute__((visibility("default"))) void glGetColorTableParameteriv (GLenum target, GLenum pname, GLint *params);
1335__attribute__((visibility("default"))) void glColorSubTable (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
1336__attribute__((visibility("default"))) void glCopyColorSubTable (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
1337__attribute__((visibility("default"))) void glConvolutionFilter1D (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
1338__attribute__((visibility("default"))) void glConvolutionFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
1339__attribute__((visibility("default"))) void glConvolutionParameterf (GLenum target, GLenum pname, GLfloat params);
1340__attribute__((visibility("default"))) void glConvolutionParameterfv (GLenum target, GLenum pname, const GLfloat *params);
1341__attribute__((visibility("default"))) void glConvolutionParameteri (GLenum target, GLenum pname, GLint params);
1342__attribute__((visibility("default"))) void glConvolutionParameteriv (GLenum target, GLenum pname, const GLint *params);
1343__attribute__((visibility("default"))) void glCopyConvolutionFilter1D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
1344__attribute__((visibility("default"))) void glCopyConvolutionFilter2D (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
1345__attribute__((visibility("default"))) void glGetConvolutionFilter (GLenum target, GLenum format, GLenum type, GLvoid *image);
1346__attribute__((visibility("default"))) void glGetConvolutionParameterfv (GLenum target, GLenum pname, GLfloat *params);
1347__attribute__((visibility("default"))) void glGetConvolutionParameteriv (GLenum target, GLenum pname, GLint *params);
1348__attribute__((visibility("default"))) void glGetSeparableFilter (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
1349__attribute__((visibility("default"))) void glSeparableFilter2D (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
1350__attribute__((visibility("default"))) void glGetHistogram (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
1351__attribute__((visibility("default"))) void glGetHistogramParameterfv (GLenum target, GLenum pname, GLfloat *params);
1352__attribute__((visibility("default"))) void glGetHistogramParameteriv (GLenum target, GLenum pname, GLint *params);
1353__attribute__((visibility("default"))) void glGetMinmax (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
1354__attribute__((visibility("default"))) void glGetMinmaxParameterfv (GLenum target, GLenum pname, GLfloat *params);
1355__attribute__((visibility("default"))) void glGetMinmaxParameteriv (GLenum target, GLenum pname, GLint *params);
1356__attribute__((visibility("default"))) void glHistogram (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
1357__attribute__((visibility("default"))) void glMinmax (GLenum target, GLenum internalformat, GLboolean sink);
1358__attribute__((visibility("default"))) void glResetHistogram (GLenum target);
1359__attribute__((visibility("default"))) void glResetMinmax (GLenum target);
1360
1361typedef void ( * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
1362typedef void ( * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
1363typedef void ( * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
1364typedef void ( * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
1365typedef void ( * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table);
1366typedef void ( * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1367typedef void ( * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1368typedef void ( * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
1369typedef void ( * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
1370typedef void ( * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
1371typedef void ( * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
1372typedef void ( * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params);
1373typedef void ( * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);
1374typedef void ( * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params);
1375typedef void ( * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);
1376typedef void ( * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
1377typedef void ( * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
1378typedef void ( * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image);
1379typedef void ( * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1380typedef void ( * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1381typedef void ( * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
1382typedef void ( * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
1383typedef void ( * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
1384typedef void ( * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1385typedef void ( * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1386typedef void ( * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
1387typedef void ( * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);
1388typedef void ( * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1389typedef void ( * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
1390typedef void ( * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink);
1391typedef void ( * PFNGLRESETHISTOGRAMPROC) (GLenum target);
1392typedef void ( * PFNGLRESETMINMAXPROC) (GLenum target);
1393# 5279 "../../include/GL/glext.h"
1394__attribute__((visibility("default"))) void glClientActiveTexture (GLenum texture);
1395__attribute__((visibility("default"))) void glMultiTexCoord1d (GLenum target, GLdouble s);
1396__attribute__((visibility("default"))) void glMultiTexCoord1dv (GLenum target, const GLdouble *v);
1397__attribute__((visibility("default"))) void glMultiTexCoord1f (GLenum target, GLfloat s);
1398__attribute__((visibility("default"))) void glMultiTexCoord1fv (GLenum target, const GLfloat *v);
1399__attribute__((visibility("default"))) void glMultiTexCoord1i (GLenum target, GLint s);
1400__attribute__((visibility("default"))) void glMultiTexCoord1iv (GLenum target, const GLint *v);
1401__attribute__((visibility("default"))) void glMultiTexCoord1s (GLenum target, GLshort s);
1402__attribute__((visibility("default"))) void glMultiTexCoord1sv (GLenum target, const GLshort *v);
1403__attribute__((visibility("default"))) void glMultiTexCoord2d (GLenum target, GLdouble s, GLdouble t);
1404__attribute__((visibility("default"))) void glMultiTexCoord2dv (GLenum target, const GLdouble *v);
1405__attribute__((visibility("default"))) void glMultiTexCoord2f (GLenum target, GLfloat s, GLfloat t);
1406__attribute__((visibility("default"))) void glMultiTexCoord2fv (GLenum target, const GLfloat *v);
1407__attribute__((visibility("default"))) void glMultiTexCoord2i (GLenum target, GLint s, GLint t);
1408__attribute__((visibility("default"))) void glMultiTexCoord2iv (GLenum target, const GLint *v);
1409__attribute__((visibility("default"))) void glMultiTexCoord2s (GLenum target, GLshort s, GLshort t);
1410__attribute__((visibility("default"))) void glMultiTexCoord2sv (GLenum target, const GLshort *v);
1411__attribute__((visibility("default"))) void glMultiTexCoord3d (GLenum target, GLdouble s, GLdouble t, GLdouble r);
1412__attribute__((visibility("default"))) void glMultiTexCoord3dv (GLenum target, const GLdouble *v);
1413__attribute__((visibility("default"))) void glMultiTexCoord3f (GLenum target, GLfloat s, GLfloat t, GLfloat r);
1414__attribute__((visibility("default"))) void glMultiTexCoord3fv (GLenum target, const GLfloat *v);
1415__attribute__((visibility("default"))) void glMultiTexCoord3i (GLenum target, GLint s, GLint t, GLint r);
1416__attribute__((visibility("default"))) void glMultiTexCoord3iv (GLenum target, const GLint *v);
1417__attribute__((visibility("default"))) void glMultiTexCoord3s (GLenum target, GLshort s, GLshort t, GLshort r);
1418__attribute__((visibility("default"))) void glMultiTexCoord3sv (GLenum target, const GLshort *v);
1419__attribute__((visibility("default"))) void glMultiTexCoord4d (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
1420__attribute__((visibility("default"))) void glMultiTexCoord4dv (GLenum target, const GLdouble *v);
1421__attribute__((visibility("default"))) void glMultiTexCoord4f (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
1422__attribute__((visibility("default"))) void glMultiTexCoord4fv (GLenum target, const GLfloat *v);
1423__attribute__((visibility("default"))) void glMultiTexCoord4i (GLenum target, GLint s, GLint t, GLint r, GLint q);
1424__attribute__((visibility("default"))) void glMultiTexCoord4iv (GLenum target, const GLint *v);
1425__attribute__((visibility("default"))) void glMultiTexCoord4s (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
1426__attribute__((visibility("default"))) void glMultiTexCoord4sv (GLenum target, const GLshort *v);
1427__attribute__((visibility("default"))) void glLoadTransposeMatrixf (const GLfloat *m);
1428__attribute__((visibility("default"))) void glLoadTransposeMatrixd (const GLdouble *m);
1429__attribute__((visibility("default"))) void glMultTransposeMatrixf (const GLfloat *m);
1430__attribute__((visibility("default"))) void glMultTransposeMatrixd (const GLdouble *m);
1431
1432typedef void ( * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture);
1433typedef void ( * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s);
1434typedef void ( * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v);
1435typedef void ( * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s);
1436typedef void ( * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v);
1437typedef void ( * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s);
1438typedef void ( * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v);
1439typedef void ( * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s);
1440typedef void ( * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v);
1441typedef void ( * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t);
1442typedef void ( * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v);
1443typedef void ( * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
1444typedef void ( * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v);
1445typedef void ( * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t);
1446typedef void ( * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v);
1447typedef void ( * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t);
1448typedef void ( * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v);
1449typedef void ( * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
1450typedef void ( * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v);
1451typedef void ( * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
1452typedef void ( * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v);
1453typedef void ( * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r);
1454typedef void ( * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v);
1455typedef void ( * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
1456typedef void ( * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v);
1457typedef void ( * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
1458typedef void ( * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v);
1459typedef void ( * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
1460typedef void ( * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v);
1461typedef void ( * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
1462typedef void ( * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v);
1463typedef void ( * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
1464typedef void ( * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v);
1465typedef void ( * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat *m);
1466typedef void ( * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble *m);
1467typedef void ( * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat *m);
1468typedef void ( * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble *m);
1469
1470
1471
1472
1473
1474__attribute__((visibility("default"))) void glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
1475__attribute__((visibility("default"))) void glMultiDrawArrays (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
1476__attribute__((visibility("default"))) void glMultiDrawElements (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
1477__attribute__((visibility("default"))) void glPointParameterf (GLenum pname, GLfloat param);
1478__attribute__((visibility("default"))) void glPointParameterfv (GLenum pname, const GLfloat *params);
1479__attribute__((visibility("default"))) void glPointParameteri (GLenum pname, GLint param);
1480__attribute__((visibility("default"))) void glPointParameteriv (GLenum pname, const GLint *params);
1481
1482typedef void ( * PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
1483typedef void ( * PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
1484typedef void ( * PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
1485typedef void ( * PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param);
1486typedef void ( * PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);
1487typedef void ( * PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param);
1488typedef void ( * PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params);
1489
1490
1491
1492
1493
1494__attribute__((visibility("default"))) void glFogCoordf (GLfloat coord);
1495__attribute__((visibility("default"))) void glFogCoordfv (const GLfloat *coord);
1496__attribute__((visibility("default"))) void glFogCoordd (GLdouble coord);
1497__attribute__((visibility("default"))) void glFogCoorddv (const GLdouble *coord);
1498__attribute__((visibility("default"))) void glFogCoordPointer (GLenum type, GLsizei stride, const GLvoid *pointer);
1499__attribute__((visibility("default"))) void glSecondaryColor3b (GLbyte red, GLbyte green, GLbyte blue);
1500__attribute__((visibility("default"))) void glSecondaryColor3bv (const GLbyte *v);
1501__attribute__((visibility("default"))) void glSecondaryColor3d (GLdouble red, GLdouble green, GLdouble blue);
1502__attribute__((visibility("default"))) void glSecondaryColor3dv (const GLdouble *v);
1503__attribute__((visibility("default"))) void glSecondaryColor3f (GLfloat red, GLfloat green, GLfloat blue);
1504__attribute__((visibility("default"))) void glSecondaryColor3fv (const GLfloat *v);
1505__attribute__((visibility("default"))) void glSecondaryColor3i (GLint red, GLint green, GLint blue);
1506__attribute__((visibility("default"))) void glSecondaryColor3iv (const GLint *v);
1507__attribute__((visibility("default"))) void glSecondaryColor3s (GLshort red, GLshort green, GLshort blue);
1508__attribute__((visibility("default"))) void glSecondaryColor3sv (const GLshort *v);
1509__attribute__((visibility("default"))) void glSecondaryColor3ub (GLubyte red, GLubyte green, GLubyte blue);
1510__attribute__((visibility("default"))) void glSecondaryColor3ubv (const GLubyte *v);
1511__attribute__((visibility("default"))) void glSecondaryColor3ui (GLuint red, GLuint green, GLuint blue);
1512__attribute__((visibility("default"))) void glSecondaryColor3uiv (const GLuint *v);
1513__attribute__((visibility("default"))) void glSecondaryColor3us (GLushort red, GLushort green, GLushort blue);
1514__attribute__((visibility("default"))) void glSecondaryColor3usv (const GLushort *v);
1515__attribute__((visibility("default"))) void glSecondaryColorPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
1516__attribute__((visibility("default"))) void glWindowPos2d (GLdouble x, GLdouble y);
1517__attribute__((visibility("default"))) void glWindowPos2dv (const GLdouble *v);
1518__attribute__((visibility("default"))) void glWindowPos2f (GLfloat x, GLfloat y);
1519__attribute__((visibility("default"))) void glWindowPos2fv (const GLfloat *v);
1520__attribute__((visibility("default"))) void glWindowPos2i (GLint x, GLint y);
1521__attribute__((visibility("default"))) void glWindowPos2iv (const GLint *v);
1522__attribute__((visibility("default"))) void glWindowPos2s (GLshort x, GLshort y);
1523__attribute__((visibility("default"))) void glWindowPos2sv (const GLshort *v);
1524__attribute__((visibility("default"))) void glWindowPos3d (GLdouble x, GLdouble y, GLdouble z);
1525__attribute__((visibility("default"))) void glWindowPos3dv (const GLdouble *v);
1526__attribute__((visibility("default"))) void glWindowPos3f (GLfloat x, GLfloat y, GLfloat z);
1527__attribute__((visibility("default"))) void glWindowPos3fv (const GLfloat *v);
1528__attribute__((visibility("default"))) void glWindowPos3i (GLint x, GLint y, GLint z);
1529__attribute__((visibility("default"))) void glWindowPos3iv (const GLint *v);
1530__attribute__((visibility("default"))) void glWindowPos3s (GLshort x, GLshort y, GLshort z);
1531__attribute__((visibility("default"))) void glWindowPos3sv (const GLshort *v);
1532
1533typedef void ( * PFNGLFOGCOORDFPROC) (GLfloat coord);
1534typedef void ( * PFNGLFOGCOORDFVPROC) (const GLfloat *coord);
1535typedef void ( * PFNGLFOGCOORDDPROC) (GLdouble coord);
1536typedef void ( * PFNGLFOGCOORDDVPROC) (const GLdouble *coord);
1537typedef void ( * PFNGLFOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
1538typedef void ( * PFNGLSECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue);
1539typedef void ( * PFNGLSECONDARYCOLOR3BVPROC) (const GLbyte *v);
1540typedef void ( * PFNGLSECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue);
1541typedef void ( * PFNGLSECONDARYCOLOR3DVPROC) (const GLdouble *v);
1542typedef void ( * PFNGLSECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue);
1543typedef void ( * PFNGLSECONDARYCOLOR3FVPROC) (const GLfloat *v);
1544typedef void ( * PFNGLSECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue);
1545typedef void ( * PFNGLSECONDARYCOLOR3IVPROC) (const GLint *v);
1546typedef void ( * PFNGLSECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue);
1547typedef void ( * PFNGLSECONDARYCOLOR3SVPROC) (const GLshort *v);
1548typedef void ( * PFNGLSECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue);
1549typedef void ( * PFNGLSECONDARYCOLOR3UBVPROC) (const GLubyte *v);
1550typedef void ( * PFNGLSECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue);
1551typedef void ( * PFNGLSECONDARYCOLOR3UIVPROC) (const GLuint *v);
1552typedef void ( * PFNGLSECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue);
1553typedef void ( * PFNGLSECONDARYCOLOR3USVPROC) (const GLushort *v);
1554typedef void ( * PFNGLSECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
1555typedef void ( * PFNGLWINDOWPOS2DPROC) (GLdouble x, GLdouble y);
1556typedef void ( * PFNGLWINDOWPOS2DVPROC) (const GLdouble *v);
1557typedef void ( * PFNGLWINDOWPOS2FPROC) (GLfloat x, GLfloat y);
1558typedef void ( * PFNGLWINDOWPOS2FVPROC) (const GLfloat *v);
1559typedef void ( * PFNGLWINDOWPOS2IPROC) (GLint x, GLint y);
1560typedef void ( * PFNGLWINDOWPOS2IVPROC) (const GLint *v);
1561typedef void ( * PFNGLWINDOWPOS2SPROC) (GLshort x, GLshort y);
1562typedef void ( * PFNGLWINDOWPOS2SVPROC) (const GLshort *v);
1563typedef void ( * PFNGLWINDOWPOS3DPROC) (GLdouble x, GLdouble y, GLdouble z);
1564typedef void ( * PFNGLWINDOWPOS3DVPROC) (const GLdouble *v);
1565typedef void ( * PFNGLWINDOWPOS3FPROC) (GLfloat x, GLfloat y, GLfloat z);
1566typedef void ( * PFNGLWINDOWPOS3FVPROC) (const GLfloat *v);
1567typedef void ( * PFNGLWINDOWPOS3IPROC) (GLint x, GLint y, GLint z);
1568typedef void ( * PFNGLWINDOWPOS3IVPROC) (const GLint *v);
1569typedef void ( * PFNGLWINDOWPOS3SPROC) (GLshort x, GLshort y, GLshort z);
1570typedef void ( * PFNGLWINDOWPOS3SVPROC) (const GLshort *v);
1571
1572
1573
1574
1575
1576__attribute__((visibility("default"))) void glGenQueries (GLsizei n, GLuint *ids);
1577__attribute__((visibility("default"))) void glDeleteQueries (GLsizei n, const GLuint *ids);
1578__attribute__((visibility("default"))) GLboolean glIsQuery (GLuint id);
1579__attribute__((visibility("default"))) void glBeginQuery (GLenum target, GLuint id);
1580__attribute__((visibility("default"))) void glEndQuery (GLenum target);
1581__attribute__((visibility("default"))) void glGetQueryiv (GLenum target, GLenum pname, GLint *params);
1582__attribute__((visibility("default"))) void glGetQueryObjectiv (GLuint id, GLenum pname, GLint *params);
1583__attribute__((visibility("default"))) void glGetQueryObjectuiv (GLuint id, GLenum pname, GLuint *params);
1584__attribute__((visibility("default"))) void glBindBuffer (GLenum target, GLuint buffer);
1585__attribute__((visibility("default"))) void glDeleteBuffers (GLsizei n, const GLuint *buffers);
1586__attribute__((visibility("default"))) void glGenBuffers (GLsizei n, GLuint *buffers);
1587__attribute__((visibility("default"))) GLboolean glIsBuffer (GLuint buffer);
1588__attribute__((visibility("default"))) void glBufferData (GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
1589__attribute__((visibility("default"))) void glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
1590__attribute__((visibility("default"))) void glGetBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
1591__attribute__((visibility("default"))) GLvoid* glMapBuffer (GLenum target, GLenum access);
1592__attribute__((visibility("default"))) GLboolean glUnmapBuffer (GLenum target);
1593__attribute__((visibility("default"))) void glGetBufferParameteriv (GLenum target, GLenum pname, GLint *params);
1594__attribute__((visibility("default"))) void glGetBufferPointerv (GLenum target, GLenum pname, GLvoid* *params);
1595
1596typedef void ( * PFNGLGENQUERIESPROC) (GLsizei n, GLuint *ids);
1597typedef void ( * PFNGLDELETEQUERIESPROC) (GLsizei n, const GLuint *ids);
1598typedef GLboolean ( * PFNGLISQUERYPROC) (GLuint id);
1599typedef void ( * PFNGLBEGINQUERYPROC) (GLenum target, GLuint id);
1600typedef void ( * PFNGLENDQUERYPROC) (GLenum target);
1601typedef void ( * PFNGLGETQUERYIVPROC) (GLenum target, GLenum pname, GLint *params);
1602typedef void ( * PFNGLGETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint *params);
1603typedef void ( * PFNGLGETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint *params);
1604typedef void ( * PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer);
1605typedef void ( * PFNGLDELETEBUFFERSPROC) (GLsizei n, const GLuint *buffers);
1606typedef void ( * PFNGLGENBUFFERSPROC) (GLsizei n, GLuint *buffers);
1607typedef GLboolean ( * PFNGLISBUFFERPROC) (GLuint buffer);
1608typedef void ( * PFNGLBUFFERDATAPROC) (GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage);
1609typedef void ( * PFNGLBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data);
1610typedef void ( * PFNGLGETBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid *data);
1611typedef GLvoid* ( * PFNGLMAPBUFFERPROC) (GLenum target, GLenum access);
1612typedef GLboolean ( * PFNGLUNMAPBUFFERPROC) (GLenum target);
1613typedef void ( * PFNGLGETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
1614typedef void ( * PFNGLGETBUFFERPOINTERVPROC) (GLenum target, GLenum pname, GLvoid* *params);
1615
1616
1617
1618
1619
1620__attribute__((visibility("default"))) void glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
1621__attribute__((visibility("default"))) void glDrawBuffers (GLsizei n, const GLenum *bufs);
1622__attribute__((visibility("default"))) void glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
1623__attribute__((visibility("default"))) void glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
1624__attribute__((visibility("default"))) void glStencilMaskSeparate (GLenum face, GLuint mask);
1625__attribute__((visibility("default"))) void glAttachShader (GLuint program, GLuint shader);
1626__attribute__((visibility("default"))) void glBindAttribLocation (GLuint program, GLuint index, const GLchar *name);
1627__attribute__((visibility("default"))) void glCompileShader (GLuint shader);
1628__attribute__((visibility("default"))) GLuint glCreateProgram (void);
1629__attribute__((visibility("default"))) GLuint glCreateShader (GLenum type);
1630__attribute__((visibility("default"))) void glDeleteProgram (GLuint program);
1631__attribute__((visibility("default"))) void glDeleteShader (GLuint shader);
1632__attribute__((visibility("default"))) void glDetachShader (GLuint program, GLuint shader);
1633__attribute__((visibility("default"))) void glDisableVertexAttribArray (GLuint index);
1634__attribute__((visibility("default"))) void glEnableVertexAttribArray (GLuint index);
1635__attribute__((visibility("default"))) void glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
1636__attribute__((visibility("default"))) void glGetActiveUniform (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
1637__attribute__((visibility("default"))) void glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
1638__attribute__((visibility("default"))) GLint glGetAttribLocation (GLuint program, const GLchar *name);
1639__attribute__((visibility("default"))) void glGetProgramiv (GLuint program, GLenum pname, GLint *params);
1640__attribute__((visibility("default"))) void glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1641__attribute__((visibility("default"))) void glGetShaderiv (GLuint shader, GLenum pname, GLint *params);
1642__attribute__((visibility("default"))) void glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1643__attribute__((visibility("default"))) void glGetShaderSource (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
1644__attribute__((visibility("default"))) GLint glGetUniformLocation (GLuint program, const GLchar *name);
1645__attribute__((visibility("default"))) void glGetUniformfv (GLuint program, GLint location, GLfloat *params);
1646__attribute__((visibility("default"))) void glGetUniformiv (GLuint program, GLint location, GLint *params);
1647__attribute__((visibility("default"))) void glGetVertexAttribdv (GLuint index, GLenum pname, GLdouble *params);
1648__attribute__((visibility("default"))) void glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat *params);
1649__attribute__((visibility("default"))) void glGetVertexAttribiv (GLuint index, GLenum pname, GLint *params);
1650__attribute__((visibility("default"))) void glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid* *pointer);
1651__attribute__((visibility("default"))) GLboolean glIsProgram (GLuint program);
1652__attribute__((visibility("default"))) GLboolean glIsShader (GLuint shader);
1653__attribute__((visibility("default"))) void glLinkProgram (GLuint program);
1654__attribute__((visibility("default"))) void glShaderSource (GLuint shader, GLsizei count, const GLchar* *string, const GLint *length);
1655__attribute__((visibility("default"))) void glUseProgram (GLuint program);
1656__attribute__((visibility("default"))) void glUniform1f (GLint location, GLfloat v0);
1657__attribute__((visibility("default"))) void glUniform2f (GLint location, GLfloat v0, GLfloat v1);
1658__attribute__((visibility("default"))) void glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
1659__attribute__((visibility("default"))) void glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
1660__attribute__((visibility("default"))) void glUniform1i (GLint location, GLint v0);
1661__attribute__((visibility("default"))) void glUniform2i (GLint location, GLint v0, GLint v1);
1662__attribute__((visibility("default"))) void glUniform3i (GLint location, GLint v0, GLint v1, GLint v2);
1663__attribute__((visibility("default"))) void glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
1664__attribute__((visibility("default"))) void glUniform1fv (GLint location, GLsizei count, const GLfloat *value);
1665__attribute__((visibility("default"))) void glUniform2fv (GLint location, GLsizei count, const GLfloat *value);
1666__attribute__((visibility("default"))) void glUniform3fv (GLint location, GLsizei count, const GLfloat *value);
1667__attribute__((visibility("default"))) void glUniform4fv (GLint location, GLsizei count, const GLfloat *value);
1668__attribute__((visibility("default"))) void glUniform1iv (GLint location, GLsizei count, const GLint *value);
1669__attribute__((visibility("default"))) void glUniform2iv (GLint location, GLsizei count, const GLint *value);
1670__attribute__((visibility("default"))) void glUniform3iv (GLint location, GLsizei count, const GLint *value);
1671__attribute__((visibility("default"))) void glUniform4iv (GLint location, GLsizei count, const GLint *value);
1672__attribute__((visibility("default"))) void glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1673__attribute__((visibility("default"))) void glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1674__attribute__((visibility("default"))) void glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1675__attribute__((visibility("default"))) void glValidateProgram (GLuint program);
1676__attribute__((visibility("default"))) void glVertexAttrib1d (GLuint index, GLdouble x);
1677__attribute__((visibility("default"))) void glVertexAttrib1dv (GLuint index, const GLdouble *v);
1678__attribute__((visibility("default"))) void glVertexAttrib1f (GLuint index, GLfloat x);
1679__attribute__((visibility("default"))) void glVertexAttrib1fv (GLuint index, const GLfloat *v);
1680__attribute__((visibility("default"))) void glVertexAttrib1s (GLuint index, GLshort x);
1681__attribute__((visibility("default"))) void glVertexAttrib1sv (GLuint index, const GLshort *v);
1682__attribute__((visibility("default"))) void glVertexAttrib2d (GLuint index, GLdouble x, GLdouble y);
1683__attribute__((visibility("default"))) void glVertexAttrib2dv (GLuint index, const GLdouble *v);
1684__attribute__((visibility("default"))) void glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y);
1685__attribute__((visibility("default"))) void glVertexAttrib2fv (GLuint index, const GLfloat *v);
1686__attribute__((visibility("default"))) void glVertexAttrib2s (GLuint index, GLshort x, GLshort y);
1687__attribute__((visibility("default"))) void glVertexAttrib2sv (GLuint index, const GLshort *v);
1688__attribute__((visibility("default"))) void glVertexAttrib3d (GLuint index, GLdouble x, GLdouble y, GLdouble z);
1689__attribute__((visibility("default"))) void glVertexAttrib3dv (GLuint index, const GLdouble *v);
1690__attribute__((visibility("default"))) void glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z);
1691__attribute__((visibility("default"))) void glVertexAttrib3fv (GLuint index, const GLfloat *v);
1692__attribute__((visibility("default"))) void glVertexAttrib3s (GLuint index, GLshort x, GLshort y, GLshort z);
1693__attribute__((visibility("default"))) void glVertexAttrib3sv (GLuint index, const GLshort *v);
1694__attribute__((visibility("default"))) void glVertexAttrib4Nbv (GLuint index, const GLbyte *v);
1695__attribute__((visibility("default"))) void glVertexAttrib4Niv (GLuint index, const GLint *v);
1696__attribute__((visibility("default"))) void glVertexAttrib4Nsv (GLuint index, const GLshort *v);
1697__attribute__((visibility("default"))) void glVertexAttrib4Nub (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
1698__attribute__((visibility("default"))) void glVertexAttrib4Nubv (GLuint index, const GLubyte *v);
1699__attribute__((visibility("default"))) void glVertexAttrib4Nuiv (GLuint index, const GLuint *v);
1700__attribute__((visibility("default"))) void glVertexAttrib4Nusv (GLuint index, const GLushort *v);
1701__attribute__((visibility("default"))) void glVertexAttrib4bv (GLuint index, const GLbyte *v);
1702__attribute__((visibility("default"))) void glVertexAttrib4d (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
1703__attribute__((visibility("default"))) void glVertexAttrib4dv (GLuint index, const GLdouble *v);
1704__attribute__((visibility("default"))) void glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1705__attribute__((visibility("default"))) void glVertexAttrib4fv (GLuint index, const GLfloat *v);
1706__attribute__((visibility("default"))) void glVertexAttrib4iv (GLuint index, const GLint *v);
1707__attribute__((visibility("default"))) void glVertexAttrib4s (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
1708__attribute__((visibility("default"))) void glVertexAttrib4sv (GLuint index, const GLshort *v);
1709__attribute__((visibility("default"))) void glVertexAttrib4ubv (GLuint index, const GLubyte *v);
1710__attribute__((visibility("default"))) void glVertexAttrib4uiv (GLuint index, const GLuint *v);
1711__attribute__((visibility("default"))) void glVertexAttrib4usv (GLuint index, const GLushort *v);
1712__attribute__((visibility("default"))) void glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
1713
1714typedef void ( * PFNGLBLENDEQUATIONSEPARATEPROC) (GLenum modeRGB, GLenum modeAlpha);
1715typedef void ( * PFNGLDRAWBUFFERSPROC) (GLsizei n, const GLenum *bufs);
1716typedef void ( * PFNGLSTENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
1717typedef void ( * PFNGLSTENCILFUNCSEPARATEPROC) (GLenum face, GLenum func, GLint ref, GLuint mask);
1718typedef void ( * PFNGLSTENCILMASKSEPARATEPROC) (GLenum face, GLuint mask);
1719typedef void ( * PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader);
1720typedef void ( * PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar *name);
1721typedef void ( * PFNGLCOMPILESHADERPROC) (GLuint shader);
1722typedef GLuint ( * PFNGLCREATEPROGRAMPROC) (void);
1723typedef GLuint ( * PFNGLCREATESHADERPROC) (GLenum type);
1724typedef void ( * PFNGLDELETEPROGRAMPROC) (GLuint program);
1725typedef void ( * PFNGLDELETESHADERPROC) (GLuint shader);
1726typedef void ( * PFNGLDETACHSHADERPROC) (GLuint program, GLuint shader);
1727typedef void ( * PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint index);
1728typedef void ( * PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index);
1729typedef void ( * PFNGLGETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
1730typedef void ( * PFNGLGETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
1731typedef void ( * PFNGLGETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *obj);
1732typedef GLint ( * PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const GLchar *name);
1733typedef void ( * PFNGLGETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint *params);
1734typedef void ( * PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1735typedef void ( * PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint *params);
1736typedef void ( * PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1737typedef void ( * PFNGLGETSHADERSOURCEPROC) (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
1738typedef GLint ( * PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const GLchar *name);
1739typedef void ( * PFNGLGETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat *params);
1740typedef void ( * PFNGLGETUNIFORMIVPROC) (GLuint program, GLint location, GLint *params);
1741typedef void ( * PFNGLGETVERTEXATTRIBDVPROC) (GLuint index, GLenum pname, GLdouble *params);
1742typedef void ( * PFNGLGETVERTEXATTRIBFVPROC) (GLuint index, GLenum pname, GLfloat *params);
1743typedef void ( * PFNGLGETVERTEXATTRIBIVPROC) (GLuint index, GLenum pname, GLint *params);
1744typedef void ( * PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint index, GLenum pname, GLvoid* *pointer);
1745typedef GLboolean ( * PFNGLISPROGRAMPROC) (GLuint program);
1746typedef GLboolean ( * PFNGLISSHADERPROC) (GLuint shader);
1747typedef void ( * PFNGLLINKPROGRAMPROC) (GLuint program);
1748typedef void ( * PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar* *string, const GLint *length);
1749typedef void ( * PFNGLUSEPROGRAMPROC) (GLuint program);
1750typedef void ( * PFNGLUNIFORM1FPROC) (GLint location, GLfloat v0);
1751typedef void ( * PFNGLUNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1);
1752typedef void ( * PFNGLUNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
1753typedef void ( * PFNGLUNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
1754typedef void ( * PFNGLUNIFORM1IPROC) (GLint location, GLint v0);
1755typedef void ( * PFNGLUNIFORM2IPROC) (GLint location, GLint v0, GLint v1);
1756typedef void ( * PFNGLUNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2);
1757typedef void ( * PFNGLUNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
1758typedef void ( * PFNGLUNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat *value);
1759typedef void ( * PFNGLUNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat *value);
1760typedef void ( * PFNGLUNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat *value);
1761typedef void ( * PFNGLUNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat *value);
1762typedef void ( * PFNGLUNIFORM1IVPROC) (GLint location, GLsizei count, const GLint *value);
1763typedef void ( * PFNGLUNIFORM2IVPROC) (GLint location, GLsizei count, const GLint *value);
1764typedef void ( * PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint *value);
1765typedef void ( * PFNGLUNIFORM4IVPROC) (GLint location, GLsizei count, const GLint *value);
1766typedef void ( * PFNGLUNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1767typedef void ( * PFNGLUNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1768typedef void ( * PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1769typedef void ( * PFNGLVALIDATEPROGRAMPROC) (GLuint program);
1770typedef void ( * PFNGLVERTEXATTRIB1DPROC) (GLuint index, GLdouble x);
1771typedef void ( * PFNGLVERTEXATTRIB1DVPROC) (GLuint index, const GLdouble *v);
1772typedef void ( * PFNGLVERTEXATTRIB1FPROC) (GLuint index, GLfloat x);
1773typedef void ( * PFNGLVERTEXATTRIB1FVPROC) (GLuint index, const GLfloat *v);
1774typedef void ( * PFNGLVERTEXATTRIB1SPROC) (GLuint index, GLshort x);
1775typedef void ( * PFNGLVERTEXATTRIB1SVPROC) (GLuint index, const GLshort *v);
1776typedef void ( * PFNGLVERTEXATTRIB2DPROC) (GLuint index, GLdouble x, GLdouble y);
1777typedef void ( * PFNGLVERTEXATTRIB2DVPROC) (GLuint index, const GLdouble *v);
1778typedef void ( * PFNGLVERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y);
1779typedef void ( * PFNGLVERTEXATTRIB2FVPROC) (GLuint index, const GLfloat *v);
1780typedef void ( * PFNGLVERTEXATTRIB2SPROC) (GLuint index, GLshort x, GLshort y);
1781typedef void ( * PFNGLVERTEXATTRIB2SVPROC) (GLuint index, const GLshort *v);
1782typedef void ( * PFNGLVERTEXATTRIB3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
1783typedef void ( * PFNGLVERTEXATTRIB3DVPROC) (GLuint index, const GLdouble *v);
1784typedef void ( * PFNGLVERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
1785typedef void ( * PFNGLVERTEXATTRIB3FVPROC) (GLuint index, const GLfloat *v);
1786typedef void ( * PFNGLVERTEXATTRIB3SPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
1787typedef void ( * PFNGLVERTEXATTRIB3SVPROC) (GLuint index, const GLshort *v);
1788typedef void ( * PFNGLVERTEXATTRIB4NBVPROC) (GLuint index, const GLbyte *v);
1789typedef void ( * PFNGLVERTEXATTRIB4NIVPROC) (GLuint index, const GLint *v);
1790typedef void ( * PFNGLVERTEXATTRIB4NSVPROC) (GLuint index, const GLshort *v);
1791typedef void ( * PFNGLVERTEXATTRIB4NUBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
1792typedef void ( * PFNGLVERTEXATTRIB4NUBVPROC) (GLuint index, const GLubyte *v);
1793typedef void ( * PFNGLVERTEXATTRIB4NUIVPROC) (GLuint index, const GLuint *v);
1794typedef void ( * PFNGLVERTEXATTRIB4NUSVPROC) (GLuint index, const GLushort *v);
1795typedef void ( * PFNGLVERTEXATTRIB4BVPROC) (GLuint index, const GLbyte *v);
1796typedef void ( * PFNGLVERTEXATTRIB4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
1797typedef void ( * PFNGLVERTEXATTRIB4DVPROC) (GLuint index, const GLdouble *v);
1798typedef void ( * PFNGLVERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1799typedef void ( * PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat *v);
1800typedef void ( * PFNGLVERTEXATTRIB4IVPROC) (GLuint index, const GLint *v);
1801typedef void ( * PFNGLVERTEXATTRIB4SPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
1802typedef void ( * PFNGLVERTEXATTRIB4SVPROC) (GLuint index, const GLshort *v);
1803typedef void ( * PFNGLVERTEXATTRIB4UBVPROC) (GLuint index, const GLubyte *v);
1804typedef void ( * PFNGLVERTEXATTRIB4UIVPROC) (GLuint index, const GLuint *v);
1805typedef void ( * PFNGLVERTEXATTRIB4USVPROC) (GLuint index, const GLushort *v);
1806typedef void ( * PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
1807
1808
1809
1810
1811
1812__attribute__((visibility("default"))) void glUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1813__attribute__((visibility("default"))) void glUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1814__attribute__((visibility("default"))) void glUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1815__attribute__((visibility("default"))) void glUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1816__attribute__((visibility("default"))) void glUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1817__attribute__((visibility("default"))) void glUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1818
1819typedef void ( * PFNGLUNIFORMMATRIX2X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1820typedef void ( * PFNGLUNIFORMMATRIX3X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1821typedef void ( * PFNGLUNIFORMMATRIX2X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1822typedef void ( * PFNGLUNIFORMMATRIX4X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1823typedef void ( * PFNGLUNIFORMMATRIX3X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1824typedef void ( * PFNGLUNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1825# 5719 "../../include/GL/glext.h"
1826__attribute__((visibility("default"))) void glColorMaski (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
1827__attribute__((visibility("default"))) void glGetBooleani_v (GLenum target, GLuint index, GLboolean *data);
1828__attribute__((visibility("default"))) void glGetIntegeri_v (GLenum target, GLuint index, GLint *data);
1829__attribute__((visibility("default"))) void glEnablei (GLenum target, GLuint index);
1830__attribute__((visibility("default"))) void glDisablei (GLenum target, GLuint index);
1831__attribute__((visibility("default"))) GLboolean glIsEnabledi (GLenum target, GLuint index);
1832__attribute__((visibility("default"))) void glBeginTransformFeedback (GLenum primitiveMode);
1833__attribute__((visibility("default"))) void glEndTransformFeedback (void);
1834__attribute__((visibility("default"))) void glBindBufferRange (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
1835__attribute__((visibility("default"))) void glBindBufferBase (GLenum target, GLuint index, GLuint buffer);
1836__attribute__((visibility("default"))) void glTransformFeedbackVaryings (GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode);
1837__attribute__((visibility("default"))) void glGetTransformFeedbackVarying (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
1838__attribute__((visibility("default"))) void glClampColor (GLenum target, GLenum clamp);
1839__attribute__((visibility("default"))) void glBeginConditionalRender (GLuint id, GLenum mode);
1840__attribute__((visibility("default"))) void glEndConditionalRender (void);
1841__attribute__((visibility("default"))) void glVertexAttribIPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
1842__attribute__((visibility("default"))) void glGetVertexAttribIiv (GLuint index, GLenum pname, GLint *params);
1843__attribute__((visibility("default"))) void glGetVertexAttribIuiv (GLuint index, GLenum pname, GLuint *params);
1844__attribute__((visibility("default"))) void glVertexAttribI1i (GLuint index, GLint x);
1845__attribute__((visibility("default"))) void glVertexAttribI2i (GLuint index, GLint x, GLint y);
1846__attribute__((visibility("default"))) void glVertexAttribI3i (GLuint index, GLint x, GLint y, GLint z);
1847__attribute__((visibility("default"))) void glVertexAttribI4i (GLuint index, GLint x, GLint y, GLint z, GLint w);
1848__attribute__((visibility("default"))) void glVertexAttribI1ui (GLuint index, GLuint x);
1849__attribute__((visibility("default"))) void glVertexAttribI2ui (GLuint index, GLuint x, GLuint y);
1850__attribute__((visibility("default"))) void glVertexAttribI3ui (GLuint index, GLuint x, GLuint y, GLuint z);
1851__attribute__((visibility("default"))) void glVertexAttribI4ui (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
1852__attribute__((visibility("default"))) void glVertexAttribI1iv (GLuint index, const GLint *v);
1853__attribute__((visibility("default"))) void glVertexAttribI2iv (GLuint index, const GLint *v);
1854__attribute__((visibility("default"))) void glVertexAttribI3iv (GLuint index, const GLint *v);
1855__attribute__((visibility("default"))) void glVertexAttribI4iv (GLuint index, const GLint *v);
1856__attribute__((visibility("default"))) void glVertexAttribI1uiv (GLuint index, const GLuint *v);
1857__attribute__((visibility("default"))) void glVertexAttribI2uiv (GLuint index, const GLuint *v);
1858__attribute__((visibility("default"))) void glVertexAttribI3uiv (GLuint index, const GLuint *v);
1859__attribute__((visibility("default"))) void glVertexAttribI4uiv (GLuint index, const GLuint *v);
1860__attribute__((visibility("default"))) void glVertexAttribI4bv (GLuint index, const GLbyte *v);
1861__attribute__((visibility("default"))) void glVertexAttribI4sv (GLuint index, const GLshort *v);
1862__attribute__((visibility("default"))) void glVertexAttribI4ubv (GLuint index, const GLubyte *v);
1863__attribute__((visibility("default"))) void glVertexAttribI4usv (GLuint index, const GLushort *v);
1864__attribute__((visibility("default"))) void glGetUniformuiv (GLuint program, GLint location, GLuint *params);
1865__attribute__((visibility("default"))) void glBindFragDataLocation (GLuint program, GLuint color, const GLchar *name);
1866__attribute__((visibility("default"))) GLint glGetFragDataLocation (GLuint program, const GLchar *name);
1867__attribute__((visibility("default"))) void glUniform1ui (GLint location, GLuint v0);
1868__attribute__((visibility("default"))) void glUniform2ui (GLint location, GLuint v0, GLuint v1);
1869__attribute__((visibility("default"))) void glUniform3ui (GLint location, GLuint v0, GLuint v1, GLuint v2);
1870__attribute__((visibility("default"))) void glUniform4ui (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
1871__attribute__((visibility("default"))) void glUniform1uiv (GLint location, GLsizei count, const GLuint *value);
1872__attribute__((visibility("default"))) void glUniform2uiv (GLint location, GLsizei count, const GLuint *value);
1873__attribute__((visibility("default"))) void glUniform3uiv (GLint location, GLsizei count, const GLuint *value);
1874__attribute__((visibility("default"))) void glUniform4uiv (GLint location, GLsizei count, const GLuint *value);
1875__attribute__((visibility("default"))) void glTexParameterIiv (GLenum target, GLenum pname, const GLint *params);
1876__attribute__((visibility("default"))) void glTexParameterIuiv (GLenum target, GLenum pname, const GLuint *params);
1877__attribute__((visibility("default"))) void glGetTexParameterIiv (GLenum target, GLenum pname, GLint *params);
1878__attribute__((visibility("default"))) void glGetTexParameterIuiv (GLenum target, GLenum pname, GLuint *params);
1879__attribute__((visibility("default"))) void glClearBufferiv (GLenum buffer, GLint drawbuffer, const GLint *value);
1880__attribute__((visibility("default"))) void glClearBufferuiv (GLenum buffer, GLint drawbuffer, const GLuint *value);
1881__attribute__((visibility("default"))) void glClearBufferfv (GLenum buffer, GLint drawbuffer, const GLfloat *value);
1882__attribute__((visibility("default"))) void glClearBufferfi (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
1883__attribute__((visibility("default"))) const GLubyte * glGetStringi (GLenum name, GLuint index);
1884
1885typedef void ( * PFNGLCOLORMASKIPROC) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
1886typedef void ( * PFNGLGETBOOLEANI_VPROC) (GLenum target, GLuint index, GLboolean *data);
1887typedef void ( * PFNGLGETINTEGERI_VPROC) (GLenum target, GLuint index, GLint *data);
1888typedef void ( * PFNGLENABLEIPROC) (GLenum target, GLuint index);
1889typedef void ( * PFNGLDISABLEIPROC) (GLenum target, GLuint index);
1890typedef GLboolean ( * PFNGLISENABLEDIPROC) (GLenum target, GLuint index);
1891typedef void ( * PFNGLBEGINTRANSFORMFEEDBACKPROC) (GLenum primitiveMode);
1892typedef void ( * PFNGLENDTRANSFORMFEEDBACKPROC) (void);
1893typedef void ( * PFNGLBINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
1894typedef void ( * PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer);
1895typedef void ( * PFNGLTRANSFORMFEEDBACKVARYINGSPROC) (GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode);
1896typedef void ( * PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
1897typedef void ( * PFNGLCLAMPCOLORPROC) (GLenum target, GLenum clamp);
1898typedef void ( * PFNGLBEGINCONDITIONALRENDERPROC) (GLuint id, GLenum mode);
1899typedef void ( * PFNGLENDCONDITIONALRENDERPROC) (void);
1900typedef void ( * PFNGLVERTEXATTRIBIPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
1901typedef void ( * PFNGLGETVERTEXATTRIBIIVPROC) (GLuint index, GLenum pname, GLint *params);
1902typedef void ( * PFNGLGETVERTEXATTRIBIUIVPROC) (GLuint index, GLenum pname, GLuint *params);
1903typedef void ( * PFNGLVERTEXATTRIBI1IPROC) (GLuint index, GLint x);
1904typedef void ( * PFNGLVERTEXATTRIBI2IPROC) (GLuint index, GLint x, GLint y);
1905typedef void ( * PFNGLVERTEXATTRIBI3IPROC) (GLuint index, GLint x, GLint y, GLint z);
1906typedef void ( * PFNGLVERTEXATTRIBI4IPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);
1907typedef void ( * PFNGLVERTEXATTRIBI1UIPROC) (GLuint index, GLuint x);
1908typedef void ( * PFNGLVERTEXATTRIBI2UIPROC) (GLuint index, GLuint x, GLuint y);
1909typedef void ( * PFNGLVERTEXATTRIBI3UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z);
1910typedef void ( * PFNGLVERTEXATTRIBI4UIPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
1911typedef void ( * PFNGLVERTEXATTRIBI1IVPROC) (GLuint index, const GLint *v);
1912typedef void ( * PFNGLVERTEXATTRIBI2IVPROC) (GLuint index, const GLint *v);
1913typedef void ( * PFNGLVERTEXATTRIBI3IVPROC) (GLuint index, const GLint *v);
1914typedef void ( * PFNGLVERTEXATTRIBI4IVPROC) (GLuint index, const GLint *v);
1915typedef void ( * PFNGLVERTEXATTRIBI1UIVPROC) (GLuint index, const GLuint *v);
1916typedef void ( * PFNGLVERTEXATTRIBI2UIVPROC) (GLuint index, const GLuint *v);
1917typedef void ( * PFNGLVERTEXATTRIBI3UIVPROC) (GLuint index, const GLuint *v);
1918typedef void ( * PFNGLVERTEXATTRIBI4UIVPROC) (GLuint index, const GLuint *v);
1919typedef void ( * PFNGLVERTEXATTRIBI4BVPROC) (GLuint index, const GLbyte *v);
1920typedef void ( * PFNGLVERTEXATTRIBI4SVPROC) (GLuint index, const GLshort *v);
1921typedef void ( * PFNGLVERTEXATTRIBI4UBVPROC) (GLuint index, const GLubyte *v);
1922typedef void ( * PFNGLVERTEXATTRIBI4USVPROC) (GLuint index, const GLushort *v);
1923typedef void ( * PFNGLGETUNIFORMUIVPROC) (GLuint program, GLint location, GLuint *params);
1924typedef void ( * PFNGLBINDFRAGDATALOCATIONPROC) (GLuint program, GLuint color, const GLchar *name);
1925typedef GLint ( * PFNGLGETFRAGDATALOCATIONPROC) (GLuint program, const GLchar *name);
1926typedef void ( * PFNGLUNIFORM1UIPROC) (GLint location, GLuint v0);
1927typedef void ( * PFNGLUNIFORM2UIPROC) (GLint location, GLuint v0, GLuint v1);
1928typedef void ( * PFNGLUNIFORM3UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);
1929typedef void ( * PFNGLUNIFORM4UIPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
1930typedef void ( * PFNGLUNIFORM1UIVPROC) (GLint location, GLsizei count, const GLuint *value);
1931typedef void ( * PFNGLUNIFORM2UIVPROC) (GLint location, GLsizei count, const GLuint *value);
1932typedef void ( * PFNGLUNIFORM3UIVPROC) (GLint location, GLsizei count, const GLuint *value);
1933typedef void ( * PFNGLUNIFORM4UIVPROC) (GLint location, GLsizei count, const GLuint *value);
1934typedef void ( * PFNGLTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, const GLint *params);
1935typedef void ( * PFNGLTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, const GLuint *params);
1936typedef void ( * PFNGLGETTEXPARAMETERIIVPROC) (GLenum target, GLenum pname, GLint *params);
1937typedef void ( * PFNGLGETTEXPARAMETERIUIVPROC) (GLenum target, GLenum pname, GLuint *params);
1938typedef void ( * PFNGLCLEARBUFFERIVPROC) (GLenum buffer, GLint drawbuffer, const GLint *value);
1939typedef void ( * PFNGLCLEARBUFFERUIVPROC) (GLenum buffer, GLint drawbuffer, const GLuint *value);
1940typedef void ( * PFNGLCLEARBUFFERFVPROC) (GLenum buffer, GLint drawbuffer, const GLfloat *value);
1941typedef void ( * PFNGLCLEARBUFFERFIPROC) (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
1942typedef const GLubyte * ( * PFNGLGETSTRINGIPROC) (GLenum name, GLuint index);
1943# 5844 "../../include/GL/glext.h"
1944__attribute__((visibility("default"))) void glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1945__attribute__((visibility("default"))) void glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
1946__attribute__((visibility("default"))) void glTexBuffer (GLenum target, GLenum internalformat, GLuint buffer);
1947__attribute__((visibility("default"))) void glPrimitiveRestartIndex (GLuint index);
1948
1949typedef void ( * PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1950typedef void ( * PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
1951typedef void ( * PFNGLTEXBUFFERPROC) (GLenum target, GLenum internalformat, GLuint buffer);
1952typedef void ( * PFNGLPRIMITIVERESTARTINDEXPROC) (GLuint index);
1953# 5863 "../../include/GL/glext.h"
1954__attribute__((visibility("default"))) void glGetInteger64i_v (GLenum target, GLuint index, GLint64 *data);
1955__attribute__((visibility("default"))) void glGetBufferParameteri64v (GLenum target, GLenum pname, GLint64 *params);
1956__attribute__((visibility("default"))) void glFramebufferTexture (GLenum target, GLenum attachment, GLuint texture, GLint level);
1957
1958typedef void ( * PFNGLGETINTEGER64I_VPROC) (GLenum target, GLuint index, GLint64 *data);
1959typedef void ( * PFNGLGETBUFFERPARAMETERI64VPROC) (GLenum target, GLenum pname, GLint64 *params);
1960typedef void ( * PFNGLFRAMEBUFFERTEXTUREPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
1961# 5885 "../../include/GL/glext.h"
1962__attribute__((visibility("default"))) void glVertexAttribDivisor (GLuint index, GLuint divisor);
1963
1964typedef void ( * PFNGLVERTEXATTRIBDIVISORPROC) (GLuint index, GLuint divisor);
1965# 5905 "../../include/GL/glext.h"
1966__attribute__((visibility("default"))) void glMinSampleShading (GLclampf value);
1967__attribute__((visibility("default"))) void glBlendEquationi (GLuint buf, GLenum mode);
1968__attribute__((visibility("default"))) void glBlendEquationSeparatei (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
1969__attribute__((visibility("default"))) void glBlendFunci (GLuint buf, GLenum src, GLenum dst);
1970__attribute__((visibility("default"))) void glBlendFuncSeparatei (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
1971
1972typedef void ( * PFNGLMINSAMPLESHADINGPROC) (GLclampf value);
1973typedef void ( * PFNGLBLENDEQUATIONIPROC) (GLuint buf, GLenum mode);
1974typedef void ( * PFNGLBLENDEQUATIONSEPARATEIPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
1975typedef void ( * PFNGLBLENDFUNCIPROC) (GLuint buf, GLenum src, GLenum dst);
1976typedef void ( * PFNGLBLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
1977# 6006 "../../include/GL/glext.h"
1978__attribute__((visibility("default"))) void glLoadTransposeMatrixfARB (const GLfloat *m);
1979__attribute__((visibility("default"))) void glLoadTransposeMatrixdARB (const GLdouble *m);
1980__attribute__((visibility("default"))) void glMultTransposeMatrixfARB (const GLfloat *m);
1981__attribute__((visibility("default"))) void glMultTransposeMatrixdARB (const GLdouble *m);
1982
1983typedef void ( * PFNGLLOADTRANSPOSEMATRIXFARBPROC) (const GLfloat *m);
1984typedef void ( * PFNGLLOADTRANSPOSEMATRIXDARBPROC) (const GLdouble *m);
1985typedef void ( * PFNGLMULTTRANSPOSEMATRIXFARBPROC) (const GLfloat *m);
1986typedef void ( * PFNGLMULTTRANSPOSEMATRIXDARBPROC) (const GLdouble *m);
1987
1988
1989
1990
1991
1992__attribute__((visibility("default"))) void glSampleCoverageARB (GLclampf value, GLboolean invert);
1993
1994typedef void ( * PFNGLSAMPLECOVERAGEARBPROC) (GLclampf value, GLboolean invert);
1995# 6036 "../../include/GL/glext.h"
1996__attribute__((visibility("default"))) void glCompressedTexImage3DARB (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
1997__attribute__((visibility("default"))) void glCompressedTexImage2DARB (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
1998__attribute__((visibility("default"))) void glCompressedTexImage1DARB (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
1999__attribute__((visibility("default"))) void glCompressedTexSubImage3DARB (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
2000__attribute__((visibility("default"))) void glCompressedTexSubImage2DARB (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
2001__attribute__((visibility("default"))) void glCompressedTexSubImage1DARB (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
2002__attribute__((visibility("default"))) void glGetCompressedTexImageARB (GLenum target, GLint level, GLvoid *img);
2003
2004typedef void ( * PFNGLCOMPRESSEDTEXIMAGE3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
2005typedef void ( * PFNGLCOMPRESSEDTEXIMAGE2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);
2006typedef void ( * PFNGLCOMPRESSEDTEXIMAGE1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
2007typedef void ( * PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);
2008typedef void ( * PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);
2009typedef void ( * PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);
2010typedef void ( * PFNGLGETCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint level, GLvoid *img);
2011# 6060 "../../include/GL/glext.h"
2012__attribute__((visibility("default"))) void glPointParameterfARB (GLenum pname, GLfloat param);
2013__attribute__((visibility("default"))) void glPointParameterfvARB (GLenum pname, const GLfloat *params);
2014
2015typedef void ( * PFNGLPOINTPARAMETERFARBPROC) (GLenum pname, GLfloat param);
2016typedef void ( * PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, const GLfloat *params);
2017
2018
2019
2020
2021
2022__attribute__((visibility("default"))) void glWeightbvARB (GLint size, const GLbyte *weights);
2023__attribute__((visibility("default"))) void glWeightsvARB (GLint size, const GLshort *weights);
2024__attribute__((visibility("default"))) void glWeightivARB (GLint size, const GLint *weights);
2025__attribute__((visibility("default"))) void glWeightfvARB (GLint size, const GLfloat *weights);
2026__attribute__((visibility("default"))) void glWeightdvARB (GLint size, const GLdouble *weights);
2027__attribute__((visibility("default"))) void glWeightubvARB (GLint size, const GLubyte *weights);
2028__attribute__((visibility("default"))) void glWeightusvARB (GLint size, const GLushort *weights);
2029__attribute__((visibility("default"))) void glWeightuivARB (GLint size, const GLuint *weights);
2030__attribute__((visibility("default"))) void glWeightPointerARB (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2031__attribute__((visibility("default"))) void glVertexBlendARB (GLint count);
2032
2033typedef void ( * PFNGLWEIGHTBVARBPROC) (GLint size, const GLbyte *weights);
2034typedef void ( * PFNGLWEIGHTSVARBPROC) (GLint size, const GLshort *weights);
2035typedef void ( * PFNGLWEIGHTIVARBPROC) (GLint size, const GLint *weights);
2036typedef void ( * PFNGLWEIGHTFVARBPROC) (GLint size, const GLfloat *weights);
2037typedef void ( * PFNGLWEIGHTDVARBPROC) (GLint size, const GLdouble *weights);
2038typedef void ( * PFNGLWEIGHTUBVARBPROC) (GLint size, const GLubyte *weights);
2039typedef void ( * PFNGLWEIGHTUSVARBPROC) (GLint size, const GLushort *weights);
2040typedef void ( * PFNGLWEIGHTUIVARBPROC) (GLint size, const GLuint *weights);
2041typedef void ( * PFNGLWEIGHTPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2042typedef void ( * PFNGLVERTEXBLENDARBPROC) (GLint count);
2043
2044
2045
2046
2047
2048__attribute__((visibility("default"))) void glCurrentPaletteMatrixARB (GLint index);
2049__attribute__((visibility("default"))) void glMatrixIndexubvARB (GLint size, const GLubyte *indices);
2050__attribute__((visibility("default"))) void glMatrixIndexusvARB (GLint size, const GLushort *indices);
2051__attribute__((visibility("default"))) void glMatrixIndexuivARB (GLint size, const GLuint *indices);
2052__attribute__((visibility("default"))) void glMatrixIndexPointerARB (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2053
2054typedef void ( * PFNGLCURRENTPALETTEMATRIXARBPROC) (GLint index);
2055typedef void ( * PFNGLMATRIXINDEXUBVARBPROC) (GLint size, const GLubyte *indices);
2056typedef void ( * PFNGLMATRIXINDEXUSVARBPROC) (GLint size, const GLushort *indices);
2057typedef void ( * PFNGLMATRIXINDEXUIVARBPROC) (GLint size, const GLuint *indices);
2058typedef void ( * PFNGLMATRIXINDEXPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2059# 6140 "../../include/GL/glext.h"
2060__attribute__((visibility("default"))) void glWindowPos2dARB (GLdouble x, GLdouble y);
2061__attribute__((visibility("default"))) void glWindowPos2dvARB (const GLdouble *v);
2062__attribute__((visibility("default"))) void glWindowPos2fARB (GLfloat x, GLfloat y);
2063__attribute__((visibility("default"))) void glWindowPos2fvARB (const GLfloat *v);
2064__attribute__((visibility("default"))) void glWindowPos2iARB (GLint x, GLint y);
2065__attribute__((visibility("default"))) void glWindowPos2ivARB (const GLint *v);
2066__attribute__((visibility("default"))) void glWindowPos2sARB (GLshort x, GLshort y);
2067__attribute__((visibility("default"))) void glWindowPos2svARB (const GLshort *v);
2068__attribute__((visibility("default"))) void glWindowPos3dARB (GLdouble x, GLdouble y, GLdouble z);
2069__attribute__((visibility("default"))) void glWindowPos3dvARB (const GLdouble *v);
2070__attribute__((visibility("default"))) void glWindowPos3fARB (GLfloat x, GLfloat y, GLfloat z);
2071__attribute__((visibility("default"))) void glWindowPos3fvARB (const GLfloat *v);
2072__attribute__((visibility("default"))) void glWindowPos3iARB (GLint x, GLint y, GLint z);
2073__attribute__((visibility("default"))) void glWindowPos3ivARB (const GLint *v);
2074__attribute__((visibility("default"))) void glWindowPos3sARB (GLshort x, GLshort y, GLshort z);
2075__attribute__((visibility("default"))) void glWindowPos3svARB (const GLshort *v);
2076
2077typedef void ( * PFNGLWINDOWPOS2DARBPROC) (GLdouble x, GLdouble y);
2078typedef void ( * PFNGLWINDOWPOS2DVARBPROC) (const GLdouble *v);
2079typedef void ( * PFNGLWINDOWPOS2FARBPROC) (GLfloat x, GLfloat y);
2080typedef void ( * PFNGLWINDOWPOS2FVARBPROC) (const GLfloat *v);
2081typedef void ( * PFNGLWINDOWPOS2IARBPROC) (GLint x, GLint y);
2082typedef void ( * PFNGLWINDOWPOS2IVARBPROC) (const GLint *v);
2083typedef void ( * PFNGLWINDOWPOS2SARBPROC) (GLshort x, GLshort y);
2084typedef void ( * PFNGLWINDOWPOS2SVARBPROC) (const GLshort *v);
2085typedef void ( * PFNGLWINDOWPOS3DARBPROC) (GLdouble x, GLdouble y, GLdouble z);
2086typedef void ( * PFNGLWINDOWPOS3DVARBPROC) (const GLdouble *v);
2087typedef void ( * PFNGLWINDOWPOS3FARBPROC) (GLfloat x, GLfloat y, GLfloat z);
2088typedef void ( * PFNGLWINDOWPOS3FVARBPROC) (const GLfloat *v);
2089typedef void ( * PFNGLWINDOWPOS3IARBPROC) (GLint x, GLint y, GLint z);
2090typedef void ( * PFNGLWINDOWPOS3IVARBPROC) (const GLint *v);
2091typedef void ( * PFNGLWINDOWPOS3SARBPROC) (GLshort x, GLshort y, GLshort z);
2092typedef void ( * PFNGLWINDOWPOS3SVARBPROC) (const GLshort *v);
2093
2094
2095
2096
2097
2098__attribute__((visibility("default"))) void glVertexAttrib1dARB (GLuint index, GLdouble x);
2099__attribute__((visibility("default"))) void glVertexAttrib1dvARB (GLuint index, const GLdouble *v);
2100__attribute__((visibility("default"))) void glVertexAttrib1fARB (GLuint index, GLfloat x);
2101__attribute__((visibility("default"))) void glVertexAttrib1fvARB (GLuint index, const GLfloat *v);
2102__attribute__((visibility("default"))) void glVertexAttrib1sARB (GLuint index, GLshort x);
2103__attribute__((visibility("default"))) void glVertexAttrib1svARB (GLuint index, const GLshort *v);
2104__attribute__((visibility("default"))) void glVertexAttrib2dARB (GLuint index, GLdouble x, GLdouble y);
2105__attribute__((visibility("default"))) void glVertexAttrib2dvARB (GLuint index, const GLdouble *v);
2106__attribute__((visibility("default"))) void glVertexAttrib2fARB (GLuint index, GLfloat x, GLfloat y);
2107__attribute__((visibility("default"))) void glVertexAttrib2fvARB (GLuint index, const GLfloat *v);
2108__attribute__((visibility("default"))) void glVertexAttrib2sARB (GLuint index, GLshort x, GLshort y);
2109__attribute__((visibility("default"))) void glVertexAttrib2svARB (GLuint index, const GLshort *v);
2110__attribute__((visibility("default"))) void glVertexAttrib3dARB (GLuint index, GLdouble x, GLdouble y, GLdouble z);
2111__attribute__((visibility("default"))) void glVertexAttrib3dvARB (GLuint index, const GLdouble *v);
2112__attribute__((visibility("default"))) void glVertexAttrib3fARB (GLuint index, GLfloat x, GLfloat y, GLfloat z);
2113__attribute__((visibility("default"))) void glVertexAttrib3fvARB (GLuint index, const GLfloat *v);
2114__attribute__((visibility("default"))) void glVertexAttrib3sARB (GLuint index, GLshort x, GLshort y, GLshort z);
2115__attribute__((visibility("default"))) void glVertexAttrib3svARB (GLuint index, const GLshort *v);
2116__attribute__((visibility("default"))) void glVertexAttrib4NbvARB (GLuint index, const GLbyte *v);
2117__attribute__((visibility("default"))) void glVertexAttrib4NivARB (GLuint index, const GLint *v);
2118__attribute__((visibility("default"))) void glVertexAttrib4NsvARB (GLuint index, const GLshort *v);
2119__attribute__((visibility("default"))) void glVertexAttrib4NubARB (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
2120__attribute__((visibility("default"))) void glVertexAttrib4NubvARB (GLuint index, const GLubyte *v);
2121__attribute__((visibility("default"))) void glVertexAttrib4NuivARB (GLuint index, const GLuint *v);
2122__attribute__((visibility("default"))) void glVertexAttrib4NusvARB (GLuint index, const GLushort *v);
2123__attribute__((visibility("default"))) void glVertexAttrib4bvARB (GLuint index, const GLbyte *v);
2124__attribute__((visibility("default"))) void glVertexAttrib4dARB (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2125__attribute__((visibility("default"))) void glVertexAttrib4dvARB (GLuint index, const GLdouble *v);
2126__attribute__((visibility("default"))) void glVertexAttrib4fARB (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2127__attribute__((visibility("default"))) void glVertexAttrib4fvARB (GLuint index, const GLfloat *v);
2128__attribute__((visibility("default"))) void glVertexAttrib4ivARB (GLuint index, const GLint *v);
2129__attribute__((visibility("default"))) void glVertexAttrib4sARB (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
2130__attribute__((visibility("default"))) void glVertexAttrib4svARB (GLuint index, const GLshort *v);
2131__attribute__((visibility("default"))) void glVertexAttrib4ubvARB (GLuint index, const GLubyte *v);
2132__attribute__((visibility("default"))) void glVertexAttrib4uivARB (GLuint index, const GLuint *v);
2133__attribute__((visibility("default"))) void glVertexAttrib4usvARB (GLuint index, const GLushort *v);
2134__attribute__((visibility("default"))) void glVertexAttribPointerARB (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
2135__attribute__((visibility("default"))) void glEnableVertexAttribArrayARB (GLuint index);
2136__attribute__((visibility("default"))) void glDisableVertexAttribArrayARB (GLuint index);
2137__attribute__((visibility("default"))) void glProgramStringARB (GLenum target, GLenum format, GLsizei len, const GLvoid *string);
2138__attribute__((visibility("default"))) void glBindProgramARB (GLenum target, GLuint program);
2139__attribute__((visibility("default"))) void glDeleteProgramsARB (GLsizei n, const GLuint *programs);
2140__attribute__((visibility("default"))) void glGenProgramsARB (GLsizei n, GLuint *programs);
2141__attribute__((visibility("default"))) void glProgramEnvParameter4dARB (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2142__attribute__((visibility("default"))) void glProgramEnvParameter4dvARB (GLenum target, GLuint index, const GLdouble *params);
2143__attribute__((visibility("default"))) void glProgramEnvParameter4fARB (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2144__attribute__((visibility("default"))) void glProgramEnvParameter4fvARB (GLenum target, GLuint index, const GLfloat *params);
2145__attribute__((visibility("default"))) void glProgramLocalParameter4dARB (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2146__attribute__((visibility("default"))) void glProgramLocalParameter4dvARB (GLenum target, GLuint index, const GLdouble *params);
2147__attribute__((visibility("default"))) void glProgramLocalParameter4fARB (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2148__attribute__((visibility("default"))) void glProgramLocalParameter4fvARB (GLenum target, GLuint index, const GLfloat *params);
2149__attribute__((visibility("default"))) void glGetProgramEnvParameterdvARB (GLenum target, GLuint index, GLdouble *params);
2150__attribute__((visibility("default"))) void glGetProgramEnvParameterfvARB (GLenum target, GLuint index, GLfloat *params);
2151__attribute__((visibility("default"))) void glGetProgramLocalParameterdvARB (GLenum target, GLuint index, GLdouble *params);
2152__attribute__((visibility("default"))) void glGetProgramLocalParameterfvARB (GLenum target, GLuint index, GLfloat *params);
2153__attribute__((visibility("default"))) void glGetProgramivARB (GLenum target, GLenum pname, GLint *params);
2154__attribute__((visibility("default"))) void glGetProgramStringARB (GLenum target, GLenum pname, GLvoid *string);
2155__attribute__((visibility("default"))) void glGetVertexAttribdvARB (GLuint index, GLenum pname, GLdouble *params);
2156__attribute__((visibility("default"))) void glGetVertexAttribfvARB (GLuint index, GLenum pname, GLfloat *params);
2157__attribute__((visibility("default"))) void glGetVertexAttribivARB (GLuint index, GLenum pname, GLint *params);
2158__attribute__((visibility("default"))) void glGetVertexAttribPointervARB (GLuint index, GLenum pname, GLvoid* *pointer);
2159__attribute__((visibility("default"))) GLboolean glIsProgramARB (GLuint program);
2160
2161typedef void ( * PFNGLVERTEXATTRIB1DARBPROC) (GLuint index, GLdouble x);
2162typedef void ( * PFNGLVERTEXATTRIB1DVARBPROC) (GLuint index, const GLdouble *v);
2163typedef void ( * PFNGLVERTEXATTRIB1FARBPROC) (GLuint index, GLfloat x);
2164typedef void ( * PFNGLVERTEXATTRIB1FVARBPROC) (GLuint index, const GLfloat *v);
2165typedef void ( * PFNGLVERTEXATTRIB1SARBPROC) (GLuint index, GLshort x);
2166typedef void ( * PFNGLVERTEXATTRIB1SVARBPROC) (GLuint index, const GLshort *v);
2167typedef void ( * PFNGLVERTEXATTRIB2DARBPROC) (GLuint index, GLdouble x, GLdouble y);
2168typedef void ( * PFNGLVERTEXATTRIB2DVARBPROC) (GLuint index, const GLdouble *v);
2169typedef void ( * PFNGLVERTEXATTRIB2FARBPROC) (GLuint index, GLfloat x, GLfloat y);
2170typedef void ( * PFNGLVERTEXATTRIB2FVARBPROC) (GLuint index, const GLfloat *v);
2171typedef void ( * PFNGLVERTEXATTRIB2SARBPROC) (GLuint index, GLshort x, GLshort y);
2172typedef void ( * PFNGLVERTEXATTRIB2SVARBPROC) (GLuint index, const GLshort *v);
2173typedef void ( * PFNGLVERTEXATTRIB3DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
2174typedef void ( * PFNGLVERTEXATTRIB3DVARBPROC) (GLuint index, const GLdouble *v);
2175typedef void ( * PFNGLVERTEXATTRIB3FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
2176typedef void ( * PFNGLVERTEXATTRIB3FVARBPROC) (GLuint index, const GLfloat *v);
2177typedef void ( * PFNGLVERTEXATTRIB3SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
2178typedef void ( * PFNGLVERTEXATTRIB3SVARBPROC) (GLuint index, const GLshort *v);
2179typedef void ( * PFNGLVERTEXATTRIB4NBVARBPROC) (GLuint index, const GLbyte *v);
2180typedef void ( * PFNGLVERTEXATTRIB4NIVARBPROC) (GLuint index, const GLint *v);
2181typedef void ( * PFNGLVERTEXATTRIB4NSVARBPROC) (GLuint index, const GLshort *v);
2182typedef void ( * PFNGLVERTEXATTRIB4NUBARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
2183typedef void ( * PFNGLVERTEXATTRIB4NUBVARBPROC) (GLuint index, const GLubyte *v);
2184typedef void ( * PFNGLVERTEXATTRIB4NUIVARBPROC) (GLuint index, const GLuint *v);
2185typedef void ( * PFNGLVERTEXATTRIB4NUSVARBPROC) (GLuint index, const GLushort *v);
2186typedef void ( * PFNGLVERTEXATTRIB4BVARBPROC) (GLuint index, const GLbyte *v);
2187typedef void ( * PFNGLVERTEXATTRIB4DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2188typedef void ( * PFNGLVERTEXATTRIB4DVARBPROC) (GLuint index, const GLdouble *v);
2189typedef void ( * PFNGLVERTEXATTRIB4FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2190typedef void ( * PFNGLVERTEXATTRIB4FVARBPROC) (GLuint index, const GLfloat *v);
2191typedef void ( * PFNGLVERTEXATTRIB4IVARBPROC) (GLuint index, const GLint *v);
2192typedef void ( * PFNGLVERTEXATTRIB4SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
2193typedef void ( * PFNGLVERTEXATTRIB4SVARBPROC) (GLuint index, const GLshort *v);
2194typedef void ( * PFNGLVERTEXATTRIB4UBVARBPROC) (GLuint index, const GLubyte *v);
2195typedef void ( * PFNGLVERTEXATTRIB4UIVARBPROC) (GLuint index, const GLuint *v);
2196typedef void ( * PFNGLVERTEXATTRIB4USVARBPROC) (GLuint index, const GLushort *v);
2197typedef void ( * PFNGLVERTEXATTRIBPOINTERARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer);
2198typedef void ( * PFNGLENABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);
2199typedef void ( * PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);
2200typedef void ( * PFNGLPROGRAMSTRINGARBPROC) (GLenum target, GLenum format, GLsizei len, const GLvoid *string);
2201typedef void ( * PFNGLBINDPROGRAMARBPROC) (GLenum target, GLuint program);
2202typedef void ( * PFNGLDELETEPROGRAMSARBPROC) (GLsizei n, const GLuint *programs);
2203typedef void ( * PFNGLGENPROGRAMSARBPROC) (GLsizei n, GLuint *programs);
2204typedef void ( * PFNGLPROGRAMENVPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2205typedef void ( * PFNGLPROGRAMENVPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble *params);
2206typedef void ( * PFNGLPROGRAMENVPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2207typedef void ( * PFNGLPROGRAMENVPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat *params);
2208typedef void ( * PFNGLPROGRAMLOCALPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2209typedef void ( * PFNGLPROGRAMLOCALPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble *params);
2210typedef void ( * PFNGLPROGRAMLOCALPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
2211typedef void ( * PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat *params);
2212typedef void ( * PFNGLGETPROGRAMENVPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble *params);
2213typedef void ( * PFNGLGETPROGRAMENVPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat *params);
2214typedef void ( * PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble *params);
2215typedef void ( * PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat *params);
2216typedef void ( * PFNGLGETPROGRAMIVARBPROC) (GLenum target, GLenum pname, GLint *params);
2217typedef void ( * PFNGLGETPROGRAMSTRINGARBPROC) (GLenum target, GLenum pname, GLvoid *string);
2218typedef void ( * PFNGLGETVERTEXATTRIBDVARBPROC) (GLuint index, GLenum pname, GLdouble *params);
2219typedef void ( * PFNGLGETVERTEXATTRIBFVARBPROC) (GLuint index, GLenum pname, GLfloat *params);
2220typedef void ( * PFNGLGETVERTEXATTRIBIVARBPROC) (GLuint index, GLenum pname, GLint *params);
2221typedef void ( * PFNGLGETVERTEXATTRIBPOINTERVARBPROC) (GLuint index, GLenum pname, GLvoid* *pointer);
2222typedef GLboolean ( * PFNGLISPROGRAMARBPROC) (GLuint program);
2223# 6313 "../../include/GL/glext.h"
2224__attribute__((visibility("default"))) void glBindBufferARB (GLenum target, GLuint buffer);
2225__attribute__((visibility("default"))) void glDeleteBuffersARB (GLsizei n, const GLuint *buffers);
2226__attribute__((visibility("default"))) void glGenBuffersARB (GLsizei n, GLuint *buffers);
2227__attribute__((visibility("default"))) GLboolean glIsBufferARB (GLuint buffer);
2228__attribute__((visibility("default"))) void glBufferDataARB (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage);
2229__attribute__((visibility("default"))) void glBufferSubDataARB (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data);
2230__attribute__((visibility("default"))) void glGetBufferSubDataARB (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data);
2231__attribute__((visibility("default"))) GLvoid* glMapBufferARB (GLenum target, GLenum access);
2232__attribute__((visibility("default"))) GLboolean glUnmapBufferARB (GLenum target);
2233__attribute__((visibility("default"))) void glGetBufferParameterivARB (GLenum target, GLenum pname, GLint *params);
2234__attribute__((visibility("default"))) void glGetBufferPointervARB (GLenum target, GLenum pname, GLvoid* *params);
2235
2236typedef void ( * PFNGLBINDBUFFERARBPROC) (GLenum target, GLuint buffer);
2237typedef void ( * PFNGLDELETEBUFFERSARBPROC) (GLsizei n, const GLuint *buffers);
2238typedef void ( * PFNGLGENBUFFERSARBPROC) (GLsizei n, GLuint *buffers);
2239typedef GLboolean ( * PFNGLISBUFFERARBPROC) (GLuint buffer);
2240typedef void ( * PFNGLBUFFERDATAARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid *data, GLenum usage);
2241typedef void ( * PFNGLBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid *data);
2242typedef void ( * PFNGLGETBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid *data);
2243typedef GLvoid* ( * PFNGLMAPBUFFERARBPROC) (GLenum target, GLenum access);
2244typedef GLboolean ( * PFNGLUNMAPBUFFERARBPROC) (GLenum target);
2245typedef void ( * PFNGLGETBUFFERPARAMETERIVARBPROC) (GLenum target, GLenum pname, GLint *params);
2246typedef void ( * PFNGLGETBUFFERPOINTERVARBPROC) (GLenum target, GLenum pname, GLvoid* *params);
2247
2248
2249
2250
2251
2252__attribute__((visibility("default"))) void glGenQueriesARB (GLsizei n, GLuint *ids);
2253__attribute__((visibility("default"))) void glDeleteQueriesARB (GLsizei n, const GLuint *ids);
2254__attribute__((visibility("default"))) GLboolean glIsQueryARB (GLuint id);
2255__attribute__((visibility("default"))) void glBeginQueryARB (GLenum target, GLuint id);
2256__attribute__((visibility("default"))) void glEndQueryARB (GLenum target);
2257__attribute__((visibility("default"))) void glGetQueryivARB (GLenum target, GLenum pname, GLint *params);
2258__attribute__((visibility("default"))) void glGetQueryObjectivARB (GLuint id, GLenum pname, GLint *params);
2259__attribute__((visibility("default"))) void glGetQueryObjectuivARB (GLuint id, GLenum pname, GLuint *params);
2260
2261typedef void ( * PFNGLGENQUERIESARBPROC) (GLsizei n, GLuint *ids);
2262typedef void ( * PFNGLDELETEQUERIESARBPROC) (GLsizei n, const GLuint *ids);
2263typedef GLboolean ( * PFNGLISQUERYARBPROC) (GLuint id);
2264typedef void ( * PFNGLBEGINQUERYARBPROC) (GLenum target, GLuint id);
2265typedef void ( * PFNGLENDQUERYARBPROC) (GLenum target);
2266typedef void ( * PFNGLGETQUERYIVARBPROC) (GLenum target, GLenum pname, GLint *params);
2267typedef void ( * PFNGLGETQUERYOBJECTIVARBPROC) (GLuint id, GLenum pname, GLint *params);
2268typedef void ( * PFNGLGETQUERYOBJECTUIVARBPROC) (GLuint id, GLenum pname, GLuint *params);
2269
2270
2271
2272
2273
2274__attribute__((visibility("default"))) void glDeleteObjectARB (GLhandleARB obj);
2275__attribute__((visibility("default"))) GLhandleARB glGetHandleARB (GLenum pname);
2276__attribute__((visibility("default"))) void glDetachObjectARB (GLhandleARB containerObj, GLhandleARB attachedObj);
2277__attribute__((visibility("default"))) GLhandleARB glCreateShaderObjectARB (GLenum shaderType);
2278__attribute__((visibility("default"))) void glShaderSourceARB (GLhandleARB shaderObj, GLsizei count, const GLcharARB* *string, const GLint *length);
2279__attribute__((visibility("default"))) void glCompileShaderARB (GLhandleARB shaderObj);
2280__attribute__((visibility("default"))) GLhandleARB glCreateProgramObjectARB (void);
2281__attribute__((visibility("default"))) void glAttachObjectARB (GLhandleARB containerObj, GLhandleARB obj);
2282__attribute__((visibility("default"))) void glLinkProgramARB (GLhandleARB programObj);
2283__attribute__((visibility("default"))) void glUseProgramObjectARB (GLhandleARB programObj);
2284__attribute__((visibility("default"))) void glValidateProgramARB (GLhandleARB programObj);
2285__attribute__((visibility("default"))) void glUniform1fARB (GLint location, GLfloat v0);
2286__attribute__((visibility("default"))) void glUniform2fARB (GLint location, GLfloat v0, GLfloat v1);
2287__attribute__((visibility("default"))) void glUniform3fARB (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
2288__attribute__((visibility("default"))) void glUniform4fARB (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
2289__attribute__((visibility("default"))) void glUniform1iARB (GLint location, GLint v0);
2290__attribute__((visibility("default"))) void glUniform2iARB (GLint location, GLint v0, GLint v1);
2291__attribute__((visibility("default"))) void glUniform3iARB (GLint location, GLint v0, GLint v1, GLint v2);
2292__attribute__((visibility("default"))) void glUniform4iARB (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
2293__attribute__((visibility("default"))) void glUniform1fvARB (GLint location, GLsizei count, const GLfloat *value);
2294__attribute__((visibility("default"))) void glUniform2fvARB (GLint location, GLsizei count, const GLfloat *value);
2295__attribute__((visibility("default"))) void glUniform3fvARB (GLint location, GLsizei count, const GLfloat *value);
2296__attribute__((visibility("default"))) void glUniform4fvARB (GLint location, GLsizei count, const GLfloat *value);
2297__attribute__((visibility("default"))) void glUniform1ivARB (GLint location, GLsizei count, const GLint *value);
2298__attribute__((visibility("default"))) void glUniform2ivARB (GLint location, GLsizei count, const GLint *value);
2299__attribute__((visibility("default"))) void glUniform3ivARB (GLint location, GLsizei count, const GLint *value);
2300__attribute__((visibility("default"))) void glUniform4ivARB (GLint location, GLsizei count, const GLint *value);
2301__attribute__((visibility("default"))) void glUniformMatrix2fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2302__attribute__((visibility("default"))) void glUniformMatrix3fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2303__attribute__((visibility("default"))) void glUniformMatrix4fvARB (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2304__attribute__((visibility("default"))) void glGetObjectParameterfvARB (GLhandleARB obj, GLenum pname, GLfloat *params);
2305__attribute__((visibility("default"))) void glGetObjectParameterivARB (GLhandleARB obj, GLenum pname, GLint *params);
2306__attribute__((visibility("default"))) void glGetInfoLogARB (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
2307__attribute__((visibility("default"))) void glGetAttachedObjectsARB (GLhandleARB containerObj, GLsizei maxCount, GLsizei *count, GLhandleARB *obj);
2308__attribute__((visibility("default"))) GLint glGetUniformLocationARB (GLhandleARB programObj, const GLcharARB *name);
2309__attribute__((visibility("default"))) void glGetActiveUniformARB (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
2310__attribute__((visibility("default"))) void glGetUniformfvARB (GLhandleARB programObj, GLint location, GLfloat *params);
2311__attribute__((visibility("default"))) void glGetUniformivARB (GLhandleARB programObj, GLint location, GLint *params);
2312__attribute__((visibility("default"))) void glGetShaderSourceARB (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source);
2313
2314typedef void ( * PFNGLDELETEOBJECTARBPROC) (GLhandleARB obj);
2315typedef GLhandleARB ( * PFNGLGETHANDLEARBPROC) (GLenum pname);
2316typedef void ( * PFNGLDETACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj);
2317typedef GLhandleARB ( * PFNGLCREATESHADEROBJECTARBPROC) (GLenum shaderType);
2318typedef void ( * PFNGLSHADERSOURCEARBPROC) (GLhandleARB shaderObj, GLsizei count, const GLcharARB* *string, const GLint *length);
2319typedef void ( * PFNGLCOMPILESHADERARBPROC) (GLhandleARB shaderObj);
2320typedef GLhandleARB ( * PFNGLCREATEPROGRAMOBJECTARBPROC) (void);
2321typedef void ( * PFNGLATTACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB obj);
2322typedef void ( * PFNGLLINKPROGRAMARBPROC) (GLhandleARB programObj);
2323typedef void ( * PFNGLUSEPROGRAMOBJECTARBPROC) (GLhandleARB programObj);
2324typedef void ( * PFNGLVALIDATEPROGRAMARBPROC) (GLhandleARB programObj);
2325typedef void ( * PFNGLUNIFORM1FARBPROC) (GLint location, GLfloat v0);
2326typedef void ( * PFNGLUNIFORM2FARBPROC) (GLint location, GLfloat v0, GLfloat v1);
2327typedef void ( * PFNGLUNIFORM3FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
2328typedef void ( * PFNGLUNIFORM4FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
2329typedef void ( * PFNGLUNIFORM1IARBPROC) (GLint location, GLint v0);
2330typedef void ( * PFNGLUNIFORM2IARBPROC) (GLint location, GLint v0, GLint v1);
2331typedef void ( * PFNGLUNIFORM3IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2);
2332typedef void ( * PFNGLUNIFORM4IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
2333typedef void ( * PFNGLUNIFORM1FVARBPROC) (GLint location, GLsizei count, const GLfloat *value);
2334typedef void ( * PFNGLUNIFORM2FVARBPROC) (GLint location, GLsizei count, const GLfloat *value);
2335typedef void ( * PFNGLUNIFORM3FVARBPROC) (GLint location, GLsizei count, const GLfloat *value);
2336typedef void ( * PFNGLUNIFORM4FVARBPROC) (GLint location, GLsizei count, const GLfloat *value);
2337typedef void ( * PFNGLUNIFORM1IVARBPROC) (GLint location, GLsizei count, const GLint *value);
2338typedef void ( * PFNGLUNIFORM2IVARBPROC) (GLint location, GLsizei count, const GLint *value);
2339typedef void ( * PFNGLUNIFORM3IVARBPROC) (GLint location, GLsizei count, const GLint *value);
2340typedef void ( * PFNGLUNIFORM4IVARBPROC) (GLint location, GLsizei count, const GLint *value);
2341typedef void ( * PFNGLUNIFORMMATRIX2FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2342typedef void ( * PFNGLUNIFORMMATRIX3FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2343typedef void ( * PFNGLUNIFORMMATRIX4FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2344typedef void ( * PFNGLGETOBJECTPARAMETERFVARBPROC) (GLhandleARB obj, GLenum pname, GLfloat *params);
2345typedef void ( * PFNGLGETOBJECTPARAMETERIVARBPROC) (GLhandleARB obj, GLenum pname, GLint *params);
2346typedef void ( * PFNGLGETINFOLOGARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *infoLog);
2347typedef void ( * PFNGLGETATTACHEDOBJECTSARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei *count, GLhandleARB *obj);
2348typedef GLint ( * PFNGLGETUNIFORMLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB *name);
2349typedef void ( * PFNGLGETACTIVEUNIFORMARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
2350typedef void ( * PFNGLGETUNIFORMFVARBPROC) (GLhandleARB programObj, GLint location, GLfloat *params);
2351typedef void ( * PFNGLGETUNIFORMIVARBPROC) (GLhandleARB programObj, GLint location, GLint *params);
2352typedef void ( * PFNGLGETSHADERSOURCEARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei *length, GLcharARB *source);
2353
2354
2355
2356
2357
2358__attribute__((visibility("default"))) void glBindAttribLocationARB (GLhandleARB programObj, GLuint index, const GLcharARB *name);
2359__attribute__((visibility("default"))) void glGetActiveAttribARB (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
2360__attribute__((visibility("default"))) GLint glGetAttribLocationARB (GLhandleARB programObj, const GLcharARB *name);
2361
2362typedef void ( * PFNGLBINDATTRIBLOCATIONARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB *name);
2363typedef void ( * PFNGLGETACTIVEATTRIBARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei *length, GLint *size, GLenum *type, GLcharARB *name);
2364typedef GLint ( * PFNGLGETATTRIBLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB *name);
2365# 6479 "../../include/GL/glext.h"
2366__attribute__((visibility("default"))) void glDrawBuffersARB (GLsizei n, const GLenum *bufs);
2367
2368typedef void ( * PFNGLDRAWBUFFERSARBPROC) (GLsizei n, const GLenum *bufs);
2369# 6491 "../../include/GL/glext.h"
2370__attribute__((visibility("default"))) void glClampColorARB (GLenum target, GLenum clamp);
2371
2372typedef void ( * PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);
2373# 6515 "../../include/GL/glext.h"
2374__attribute__((visibility("default"))) void glDrawArraysInstancedARB (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
2375__attribute__((visibility("default"))) void glDrawElementsInstancedARB (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
2376
2377typedef void ( * PFNGLDRAWARRAYSINSTANCEDARBPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
2378typedef void ( * PFNGLDRAWELEMENTSINSTANCEDARBPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
2379
2380
2381
2382
2383
2384__attribute__((visibility("default"))) GLboolean glIsRenderbuffer (GLuint renderbuffer);
2385__attribute__((visibility("default"))) void glBindRenderbuffer (GLenum target, GLuint renderbuffer);
2386__attribute__((visibility("default"))) void glDeleteRenderbuffers (GLsizei n, const GLuint *renderbuffers);
2387__attribute__((visibility("default"))) void glGenRenderbuffers (GLsizei n, GLuint *renderbuffers);
2388__attribute__((visibility("default"))) void glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
2389__attribute__((visibility("default"))) void glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint *params);
2390__attribute__((visibility("default"))) GLboolean glIsFramebuffer (GLuint framebuffer);
2391__attribute__((visibility("default"))) void glBindFramebuffer (GLenum target, GLuint framebuffer);
2392__attribute__((visibility("default"))) void glDeleteFramebuffers (GLsizei n, const GLuint *framebuffers);
2393__attribute__((visibility("default"))) void glGenFramebuffers (GLsizei n, GLuint *framebuffers);
2394__attribute__((visibility("default"))) GLenum glCheckFramebufferStatus (GLenum target);
2395__attribute__((visibility("default"))) void glFramebufferTexture1D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
2396__attribute__((visibility("default"))) void glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
2397__attribute__((visibility("default"))) void glFramebufferTexture3D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
2398__attribute__((visibility("default"))) void glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
2399__attribute__((visibility("default"))) void glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint *params);
2400__attribute__((visibility("default"))) void glGenerateMipmap (GLenum target);
2401__attribute__((visibility("default"))) void glBlitFramebuffer (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
2402__attribute__((visibility("default"))) void glRenderbufferStorageMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
2403__attribute__((visibility("default"))) void glFramebufferTextureLayer (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
2404
2405typedef GLboolean ( * PFNGLISRENDERBUFFERPROC) (GLuint renderbuffer);
2406typedef void ( * PFNGLBINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer);
2407typedef void ( * PFNGLDELETERENDERBUFFERSPROC) (GLsizei n, const GLuint *renderbuffers);
2408typedef void ( * PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint *renderbuffers);
2409typedef void ( * PFNGLRENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
2410typedef void ( * PFNGLGETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);
2411typedef GLboolean ( * PFNGLISFRAMEBUFFERPROC) (GLuint framebuffer);
2412typedef void ( * PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer);
2413typedef void ( * PFNGLDELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint *framebuffers);
2414typedef void ( * PFNGLGENFRAMEBUFFERSPROC) (GLsizei n, GLuint *framebuffers);
2415typedef GLenum ( * PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target);
2416typedef void ( * PFNGLFRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
2417typedef void ( * PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
2418typedef void ( * PFNGLFRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
2419typedef void ( * PFNGLFRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
2420typedef void ( * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
2421typedef void ( * PFNGLGENERATEMIPMAPPROC) (GLenum target);
2422typedef void ( * PFNGLBLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
2423typedef void ( * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
2424typedef void ( * PFNGLFRAMEBUFFERTEXTURELAYERPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
2425# 6575 "../../include/GL/glext.h"
2426__attribute__((visibility("default"))) void glProgramParameteriARB (GLuint program, GLenum pname, GLint value);
2427__attribute__((visibility("default"))) void glFramebufferTextureARB (GLenum target, GLenum attachment, GLuint texture, GLint level);
2428__attribute__((visibility("default"))) void glFramebufferTextureLayerARB (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
2429__attribute__((visibility("default"))) void glFramebufferTextureFaceARB (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
2430
2431typedef void ( * PFNGLPROGRAMPARAMETERIARBPROC) (GLuint program, GLenum pname, GLint value);
2432typedef void ( * PFNGLFRAMEBUFFERTEXTUREARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
2433typedef void ( * PFNGLFRAMEBUFFERTEXTURELAYERARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
2434typedef void ( * PFNGLFRAMEBUFFERTEXTUREFACEARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
2435# 6593 "../../include/GL/glext.h"
2436__attribute__((visibility("default"))) void glVertexAttribDivisorARB (GLuint index, GLuint divisor);
2437
2438typedef void ( * PFNGLVERTEXATTRIBDIVISORARBPROC) (GLuint index, GLuint divisor);
2439
2440
2441
2442
2443
2444__attribute__((visibility("default"))) GLvoid* glMapBufferRange (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
2445__attribute__((visibility("default"))) void glFlushMappedBufferRange (GLenum target, GLintptr offset, GLsizeiptr length);
2446
2447typedef GLvoid* ( * PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
2448typedef void ( * PFNGLFLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
2449
2450
2451
2452
2453
2454__attribute__((visibility("default"))) void glTexBufferARB (GLenum target, GLenum internalformat, GLuint buffer);
2455
2456typedef void ( * PFNGLTEXBUFFERARBPROC) (GLenum target, GLenum internalformat, GLuint buffer);
2457# 6627 "../../include/GL/glext.h"
2458__attribute__((visibility("default"))) void glBindVertexArray (GLuint array);
2459__attribute__((visibility("default"))) void glDeleteVertexArrays (GLsizei n, const GLuint *arrays);
2460__attribute__((visibility("default"))) void glGenVertexArrays (GLsizei n, GLuint *arrays);
2461__attribute__((visibility("default"))) GLboolean glIsVertexArray (GLuint array);
2462
2463typedef void ( * PFNGLBINDVERTEXARRAYPROC) (GLuint array);
2464typedef void ( * PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint *arrays);
2465typedef void ( * PFNGLGENVERTEXARRAYSPROC) (GLsizei n, GLuint *arrays);
2466typedef GLboolean ( * PFNGLISVERTEXARRAYPROC) (GLuint array);
2467
2468
2469
2470
2471
2472__attribute__((visibility("default"))) void glGetUniformIndices (GLuint program, GLsizei uniformCount, const GLchar* *uniformNames, GLuint *uniformIndices);
2473__attribute__((visibility("default"))) void glGetActiveUniformsiv (GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
2474__attribute__((visibility("default"))) void glGetActiveUniformName (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
2475__attribute__((visibility("default"))) GLuint glGetUniformBlockIndex (GLuint program, const GLchar *uniformBlockName);
2476__attribute__((visibility("default"))) void glGetActiveUniformBlockiv (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
2477__attribute__((visibility("default"))) void glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
2478__attribute__((visibility("default"))) void glUniformBlockBinding (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
2479
2480typedef void ( * PFNGLGETUNIFORMINDICESPROC) (GLuint program, GLsizei uniformCount, const GLchar* *uniformNames, GLuint *uniformIndices);
2481typedef void ( * PFNGLGETACTIVEUNIFORMSIVPROC) (GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
2482typedef void ( * PFNGLGETACTIVEUNIFORMNAMEPROC) (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName);
2483typedef GLuint ( * PFNGLGETUNIFORMBLOCKINDEXPROC) (GLuint program, const GLchar *uniformBlockName);
2484typedef void ( * PFNGLGETACTIVEUNIFORMBLOCKIVPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
2485typedef void ( * PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
2486typedef void ( * PFNGLUNIFORMBLOCKBINDINGPROC) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
2487# 6665 "../../include/GL/glext.h"
2488__attribute__((visibility("default"))) void glCopyBufferSubData (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
2489
2490typedef void ( * PFNGLCOPYBUFFERSUBDATAPROC) (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
2491# 6681 "../../include/GL/glext.h"
2492__attribute__((visibility("default"))) void glDrawElementsBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
2493__attribute__((visibility("default"))) void glDrawRangeElementsBaseVertex (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
2494__attribute__((visibility("default"))) void glDrawElementsInstancedBaseVertex (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount, GLint basevertex);
2495__attribute__((visibility("default"))) void glMultiDrawElementsBaseVertex (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount, const GLint *basevertex);
2496
2497typedef void ( * PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
2498typedef void ( * PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices, GLint basevertex);
2499typedef void ( * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount, GLint basevertex);
2500typedef void ( * PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount, const GLint *basevertex);
2501# 6699 "../../include/GL/glext.h"
2502__attribute__((visibility("default"))) void glProvokingVertex (GLenum mode);
2503
2504typedef void ( * PFNGLPROVOKINGVERTEXPROC) (GLenum mode);
2505# 6711 "../../include/GL/glext.h"
2506__attribute__((visibility("default"))) GLsync glFenceSync (GLenum condition, GLbitfield flags);
2507__attribute__((visibility("default"))) GLboolean glIsSync (GLsync sync);
2508__attribute__((visibility("default"))) void glDeleteSync (GLsync sync);
2509__attribute__((visibility("default"))) GLenum glClientWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
2510__attribute__((visibility("default"))) void glWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
2511__attribute__((visibility("default"))) void glGetInteger64v (GLenum pname, GLint64 *params);
2512__attribute__((visibility("default"))) void glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
2513
2514typedef GLsync ( * PFNGLFENCESYNCPROC) (GLenum condition, GLbitfield flags);
2515typedef GLboolean ( * PFNGLISSYNCPROC) (GLsync sync);
2516typedef void ( * PFNGLDELETESYNCPROC) (GLsync sync);
2517typedef GLenum ( * PFNGLCLIENTWAITSYNCPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
2518typedef void ( * PFNGLWAITSYNCPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
2519typedef void ( * PFNGLGETINTEGER64VPROC) (GLenum pname, GLint64 *params);
2520typedef void ( * PFNGLGETSYNCIVPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
2521
2522
2523
2524
2525
2526__attribute__((visibility("default"))) void glTexImage2DMultisample (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
2527__attribute__((visibility("default"))) void glTexImage3DMultisample (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
2528__attribute__((visibility("default"))) void glGetMultisamplefv (GLenum pname, GLuint index, GLfloat *val);
2529__attribute__((visibility("default"))) void glSampleMaski (GLuint index, GLbitfield mask);
2530
2531typedef void ( * PFNGLTEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
2532typedef void ( * PFNGLTEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
2533typedef void ( * PFNGLGETMULTISAMPLEFVPROC) (GLenum pname, GLuint index, GLfloat *val);
2534typedef void ( * PFNGLSAMPLEMASKIPROC) (GLuint index, GLbitfield mask);
2535# 6749 "../../include/GL/glext.h"
2536__attribute__((visibility("default"))) void glBlendEquationiARB (GLuint buf, GLenum mode);
2537__attribute__((visibility("default"))) void glBlendEquationSeparateiARB (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
2538__attribute__((visibility("default"))) void glBlendFunciARB (GLuint buf, GLenum src, GLenum dst);
2539__attribute__((visibility("default"))) void glBlendFuncSeparateiARB (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
2540
2541typedef void ( * PFNGLBLENDEQUATIONIARBPROC) (GLuint buf, GLenum mode);
2542typedef void ( * PFNGLBLENDEQUATIONSEPARATEIARBPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
2543typedef void ( * PFNGLBLENDFUNCIARBPROC) (GLuint buf, GLenum src, GLenum dst);
2544typedef void ( * PFNGLBLENDFUNCSEPARATEIARBPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
2545
2546
2547
2548
2549
2550__attribute__((visibility("default"))) void glMinSampleShadingARB (GLclampf value);
2551
2552typedef void ( * PFNGLMINSAMPLESHADINGARBPROC) (GLclampf value);
2553# 6783 "../../include/GL/glext.h"
2554__attribute__((visibility("default"))) void glNamedStringARB (GLenum type, GLint namelen, const GLchar *name, GLint stringlen, const GLchar *string);
2555__attribute__((visibility("default"))) void glDeleteNamedStringARB (GLint namelen, const GLchar *name);
2556__attribute__((visibility("default"))) void glCompileShaderIncludeARB (GLuint shader, GLsizei count, const GLchar* *path, const GLint *length);
2557__attribute__((visibility("default"))) GLboolean glIsNamedStringARB (GLint namelen, const GLchar *name);
2558__attribute__((visibility("default"))) void glGetNamedStringARB (GLint namelen, const GLchar *name, GLsizei bufSize, GLint *stringlen, GLchar *string);
2559__attribute__((visibility("default"))) void glGetNamedStringivARB (GLint namelen, const GLchar *name, GLenum pname, GLint *params);
2560
2561typedef void ( * PFNGLNAMEDSTRINGARBPROC) (GLenum type, GLint namelen, const GLchar *name, GLint stringlen, const GLchar *string);
2562typedef void ( * PFNGLDELETENAMEDSTRINGARBPROC) (GLint namelen, const GLchar *name);
2563typedef void ( * PFNGLCOMPILESHADERINCLUDEARBPROC) (GLuint shader, GLsizei count, const GLchar* *path, const GLint *length);
2564typedef GLboolean ( * PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, const GLchar *name);
2565typedef void ( * PFNGLGETNAMEDSTRINGARBPROC) (GLint namelen, const GLchar *name, GLsizei bufSize, GLint *stringlen, GLchar *string);
2566typedef void ( * PFNGLGETNAMEDSTRINGIVARBPROC) (GLint namelen, const GLchar *name, GLenum pname, GLint *params);
2567# 6805 "../../include/GL/glext.h"
2568__attribute__((visibility("default"))) void glBindFragDataLocationIndexed (GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
2569__attribute__((visibility("default"))) GLint glGetFragDataIndex (GLuint program, const GLchar *name);
2570
2571typedef void ( * PFNGLBINDFRAGDATALOCATIONINDEXEDPROC) (GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
2572typedef GLint ( * PFNGLGETFRAGDATAINDEXPROC) (GLuint program, const GLchar *name);
2573# 6823 "../../include/GL/glext.h"
2574__attribute__((visibility("default"))) void glGenSamplers (GLsizei count, GLuint *samplers);
2575__attribute__((visibility("default"))) void glDeleteSamplers (GLsizei count, const GLuint *samplers);
2576__attribute__((visibility("default"))) GLboolean glIsSampler (GLuint sampler);
2577__attribute__((visibility("default"))) void glBindSampler (GLuint unit, GLuint sampler);
2578__attribute__((visibility("default"))) void glSamplerParameteri (GLuint sampler, GLenum pname, GLint param);
2579__attribute__((visibility("default"))) void glSamplerParameteriv (GLuint sampler, GLenum pname, const GLint *param);
2580__attribute__((visibility("default"))) void glSamplerParameterf (GLuint sampler, GLenum pname, GLfloat param);
2581__attribute__((visibility("default"))) void glSamplerParameterfv (GLuint sampler, GLenum pname, const GLfloat *param);
2582__attribute__((visibility("default"))) void glSamplerParameterIiv (GLuint sampler, GLenum pname, const GLint *param);
2583__attribute__((visibility("default"))) void glSamplerParameterIuiv (GLuint sampler, GLenum pname, const GLuint *param);
2584__attribute__((visibility("default"))) void glGetSamplerParameteriv (GLuint sampler, GLenum pname, GLint *params);
2585__attribute__((visibility("default"))) void glGetSamplerParameterIiv (GLuint sampler, GLenum pname, GLint *params);
2586__attribute__((visibility("default"))) void glGetSamplerParameterfv (GLuint sampler, GLenum pname, GLfloat *params);
2587__attribute__((visibility("default"))) void glGetSamplerParameterIuiv (GLuint sampler, GLenum pname, GLuint *params);
2588
2589typedef void ( * PFNGLGENSAMPLERSPROC) (GLsizei count, GLuint *samplers);
2590typedef void ( * PFNGLDELETESAMPLERSPROC) (GLsizei count, const GLuint *samplers);
2591typedef GLboolean ( * PFNGLISSAMPLERPROC) (GLuint sampler);
2592typedef void ( * PFNGLBINDSAMPLERPROC) (GLuint unit, GLuint sampler);
2593typedef void ( * PFNGLSAMPLERPARAMETERIPROC) (GLuint sampler, GLenum pname, GLint param);
2594typedef void ( * PFNGLSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, const GLint *param);
2595typedef void ( * PFNGLSAMPLERPARAMETERFPROC) (GLuint sampler, GLenum pname, GLfloat param);
2596typedef void ( * PFNGLSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, const GLfloat *param);
2597typedef void ( * PFNGLSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, const GLint *param);
2598typedef void ( * PFNGLSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, const GLuint *param);
2599typedef void ( * PFNGLGETSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, GLint *params);
2600typedef void ( * PFNGLGETSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, GLint *params);
2601typedef void ( * PFNGLGETSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, GLfloat *params);
2602typedef void ( * PFNGLGETSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, GLuint *params);
2603# 6865 "../../include/GL/glext.h"
2604__attribute__((visibility("default"))) void glQueryCounter (GLuint id, GLenum target);
2605__attribute__((visibility("default"))) void glGetQueryObjecti64v (GLuint id, GLenum pname, GLint64 *params);
2606__attribute__((visibility("default"))) void glGetQueryObjectui64v (GLuint id, GLenum pname, GLuint64 *params);
2607
2608typedef void ( * PFNGLQUERYCOUNTERPROC) (GLuint id, GLenum target);
2609typedef void ( * PFNGLGETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64 *params);
2610typedef void ( * PFNGLGETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64 *params);
2611
2612
2613
2614
2615
2616__attribute__((visibility("default"))) void glVertexP2ui (GLenum type, GLuint value);
2617__attribute__((visibility("default"))) void glVertexP2uiv (GLenum type, const GLuint *value);
2618__attribute__((visibility("default"))) void glVertexP3ui (GLenum type, GLuint value);
2619__attribute__((visibility("default"))) void glVertexP3uiv (GLenum type, const GLuint *value);
2620__attribute__((visibility("default"))) void glVertexP4ui (GLenum type, GLuint value);
2621__attribute__((visibility("default"))) void glVertexP4uiv (GLenum type, const GLuint *value);
2622__attribute__((visibility("default"))) void glTexCoordP1ui (GLenum type, GLuint coords);
2623__attribute__((visibility("default"))) void glTexCoordP1uiv (GLenum type, const GLuint *coords);
2624__attribute__((visibility("default"))) void glTexCoordP2ui (GLenum type, GLuint coords);
2625__attribute__((visibility("default"))) void glTexCoordP2uiv (GLenum type, const GLuint *coords);
2626__attribute__((visibility("default"))) void glTexCoordP3ui (GLenum type, GLuint coords);
2627__attribute__((visibility("default"))) void glTexCoordP3uiv (GLenum type, const GLuint *coords);
2628__attribute__((visibility("default"))) void glTexCoordP4ui (GLenum type, GLuint coords);
2629__attribute__((visibility("default"))) void glTexCoordP4uiv (GLenum type, const GLuint *coords);
2630__attribute__((visibility("default"))) void glMultiTexCoordP1ui (GLenum texture, GLenum type, GLuint coords);
2631__attribute__((visibility("default"))) void glMultiTexCoordP1uiv (GLenum texture, GLenum type, const GLuint *coords);
2632__attribute__((visibility("default"))) void glMultiTexCoordP2ui (GLenum texture, GLenum type, GLuint coords);
2633__attribute__((visibility("default"))) void glMultiTexCoordP2uiv (GLenum texture, GLenum type, const GLuint *coords);
2634__attribute__((visibility("default"))) void glMultiTexCoordP3ui (GLenum texture, GLenum type, GLuint coords);
2635__attribute__((visibility("default"))) void glMultiTexCoordP3uiv (GLenum texture, GLenum type, const GLuint *coords);
2636__attribute__((visibility("default"))) void glMultiTexCoordP4ui (GLenum texture, GLenum type, GLuint coords);
2637__attribute__((visibility("default"))) void glMultiTexCoordP4uiv (GLenum texture, GLenum type, const GLuint *coords);
2638__attribute__((visibility("default"))) void glNormalP3ui (GLenum type, GLuint coords);
2639__attribute__((visibility("default"))) void glNormalP3uiv (GLenum type, const GLuint *coords);
2640__attribute__((visibility("default"))) void glColorP3ui (GLenum type, GLuint color);
2641__attribute__((visibility("default"))) void glColorP3uiv (GLenum type, const GLuint *color);
2642__attribute__((visibility("default"))) void glColorP4ui (GLenum type, GLuint color);
2643__attribute__((visibility("default"))) void glColorP4uiv (GLenum type, const GLuint *color);
2644__attribute__((visibility("default"))) void glSecondaryColorP3ui (GLenum type, GLuint color);
2645__attribute__((visibility("default"))) void glSecondaryColorP3uiv (GLenum type, const GLuint *color);
2646__attribute__((visibility("default"))) void glVertexAttribP1ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2647__attribute__((visibility("default"))) void glVertexAttribP1uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2648__attribute__((visibility("default"))) void glVertexAttribP2ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2649__attribute__((visibility("default"))) void glVertexAttribP2uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2650__attribute__((visibility("default"))) void glVertexAttribP3ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2651__attribute__((visibility("default"))) void glVertexAttribP3uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2652__attribute__((visibility("default"))) void glVertexAttribP4ui (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2653__attribute__((visibility("default"))) void glVertexAttribP4uiv (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2654
2655typedef void ( * PFNGLVERTEXP2UIPROC) (GLenum type, GLuint value);
2656typedef void ( * PFNGLVERTEXP2UIVPROC) (GLenum type, const GLuint *value);
2657typedef void ( * PFNGLVERTEXP3UIPROC) (GLenum type, GLuint value);
2658typedef void ( * PFNGLVERTEXP3UIVPROC) (GLenum type, const GLuint *value);
2659typedef void ( * PFNGLVERTEXP4UIPROC) (GLenum type, GLuint value);
2660typedef void ( * PFNGLVERTEXP4UIVPROC) (GLenum type, const GLuint *value);
2661typedef void ( * PFNGLTEXCOORDP1UIPROC) (GLenum type, GLuint coords);
2662typedef void ( * PFNGLTEXCOORDP1UIVPROC) (GLenum type, const GLuint *coords);
2663typedef void ( * PFNGLTEXCOORDP2UIPROC) (GLenum type, GLuint coords);
2664typedef void ( * PFNGLTEXCOORDP2UIVPROC) (GLenum type, const GLuint *coords);
2665typedef void ( * PFNGLTEXCOORDP3UIPROC) (GLenum type, GLuint coords);
2666typedef void ( * PFNGLTEXCOORDP3UIVPROC) (GLenum type, const GLuint *coords);
2667typedef void ( * PFNGLTEXCOORDP4UIPROC) (GLenum type, GLuint coords);
2668typedef void ( * PFNGLTEXCOORDP4UIVPROC) (GLenum type, const GLuint *coords);
2669typedef void ( * PFNGLMULTITEXCOORDP1UIPROC) (GLenum texture, GLenum type, GLuint coords);
2670typedef void ( * PFNGLMULTITEXCOORDP1UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
2671typedef void ( * PFNGLMULTITEXCOORDP2UIPROC) (GLenum texture, GLenum type, GLuint coords);
2672typedef void ( * PFNGLMULTITEXCOORDP2UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
2673typedef void ( * PFNGLMULTITEXCOORDP3UIPROC) (GLenum texture, GLenum type, GLuint coords);
2674typedef void ( * PFNGLMULTITEXCOORDP3UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
2675typedef void ( * PFNGLMULTITEXCOORDP4UIPROC) (GLenum texture, GLenum type, GLuint coords);
2676typedef void ( * PFNGLMULTITEXCOORDP4UIVPROC) (GLenum texture, GLenum type, const GLuint *coords);
2677typedef void ( * PFNGLNORMALP3UIPROC) (GLenum type, GLuint coords);
2678typedef void ( * PFNGLNORMALP3UIVPROC) (GLenum type, const GLuint *coords);
2679typedef void ( * PFNGLCOLORP3UIPROC) (GLenum type, GLuint color);
2680typedef void ( * PFNGLCOLORP3UIVPROC) (GLenum type, const GLuint *color);
2681typedef void ( * PFNGLCOLORP4UIPROC) (GLenum type, GLuint color);
2682typedef void ( * PFNGLCOLORP4UIVPROC) (GLenum type, const GLuint *color);
2683typedef void ( * PFNGLSECONDARYCOLORP3UIPROC) (GLenum type, GLuint color);
2684typedef void ( * PFNGLSECONDARYCOLORP3UIVPROC) (GLenum type, const GLuint *color);
2685typedef void ( * PFNGLVERTEXATTRIBP1UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2686typedef void ( * PFNGLVERTEXATTRIBP1UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2687typedef void ( * PFNGLVERTEXATTRIBP2UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2688typedef void ( * PFNGLVERTEXATTRIBP2UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2689typedef void ( * PFNGLVERTEXATTRIBP3UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2690typedef void ( * PFNGLVERTEXATTRIBP3UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2691typedef void ( * PFNGLVERTEXATTRIBP4UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);
2692typedef void ( * PFNGLVERTEXATTRIBP4UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint *value);
2693
2694
2695
2696
2697
2698__attribute__((visibility("default"))) void glDrawArraysIndirect (GLenum mode, const GLvoid *indirect);
2699__attribute__((visibility("default"))) void glDrawElementsIndirect (GLenum mode, GLenum type, const GLvoid *indirect);
2700
2701typedef void ( * PFNGLDRAWARRAYSINDIRECTPROC) (GLenum mode, const GLvoid *indirect);
2702typedef void ( * PFNGLDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const GLvoid *indirect);
2703# 6973 "../../include/GL/glext.h"
2704__attribute__((visibility("default"))) void glUniform1d (GLint location, GLdouble x);
2705__attribute__((visibility("default"))) void glUniform2d (GLint location, GLdouble x, GLdouble y);
2706__attribute__((visibility("default"))) void glUniform3d (GLint location, GLdouble x, GLdouble y, GLdouble z);
2707__attribute__((visibility("default"))) void glUniform4d (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2708__attribute__((visibility("default"))) void glUniform1dv (GLint location, GLsizei count, const GLdouble *value);
2709__attribute__((visibility("default"))) void glUniform2dv (GLint location, GLsizei count, const GLdouble *value);
2710__attribute__((visibility("default"))) void glUniform3dv (GLint location, GLsizei count, const GLdouble *value);
2711__attribute__((visibility("default"))) void glUniform4dv (GLint location, GLsizei count, const GLdouble *value);
2712__attribute__((visibility("default"))) void glUniformMatrix2dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2713__attribute__((visibility("default"))) void glUniformMatrix3dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2714__attribute__((visibility("default"))) void glUniformMatrix4dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2715__attribute__((visibility("default"))) void glUniformMatrix2x3dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2716__attribute__((visibility("default"))) void glUniformMatrix2x4dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2717__attribute__((visibility("default"))) void glUniformMatrix3x2dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2718__attribute__((visibility("default"))) void glUniformMatrix3x4dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2719__attribute__((visibility("default"))) void glUniformMatrix4x2dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2720__attribute__((visibility("default"))) void glUniformMatrix4x3dv (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2721__attribute__((visibility("default"))) void glGetUniformdv (GLuint program, GLint location, GLdouble *params);
2722
2723typedef void ( * PFNGLUNIFORM1DPROC) (GLint location, GLdouble x);
2724typedef void ( * PFNGLUNIFORM2DPROC) (GLint location, GLdouble x, GLdouble y);
2725typedef void ( * PFNGLUNIFORM3DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z);
2726typedef void ( * PFNGLUNIFORM4DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2727typedef void ( * PFNGLUNIFORM1DVPROC) (GLint location, GLsizei count, const GLdouble *value);
2728typedef void ( * PFNGLUNIFORM2DVPROC) (GLint location, GLsizei count, const GLdouble *value);
2729typedef void ( * PFNGLUNIFORM3DVPROC) (GLint location, GLsizei count, const GLdouble *value);
2730typedef void ( * PFNGLUNIFORM4DVPROC) (GLint location, GLsizei count, const GLdouble *value);
2731typedef void ( * PFNGLUNIFORMMATRIX2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2732typedef void ( * PFNGLUNIFORMMATRIX3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2733typedef void ( * PFNGLUNIFORMMATRIX4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2734typedef void ( * PFNGLUNIFORMMATRIX2X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2735typedef void ( * PFNGLUNIFORMMATRIX2X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2736typedef void ( * PFNGLUNIFORMMATRIX3X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2737typedef void ( * PFNGLUNIFORMMATRIX3X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2738typedef void ( * PFNGLUNIFORMMATRIX4X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2739typedef void ( * PFNGLUNIFORMMATRIX4X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2740typedef void ( * PFNGLGETUNIFORMDVPROC) (GLuint program, GLint location, GLdouble *params);
2741
2742
2743
2744
2745
2746__attribute__((visibility("default"))) GLint glGetSubroutineUniformLocation (GLuint program, GLenum shadertype, const GLchar *name);
2747__attribute__((visibility("default"))) GLuint glGetSubroutineIndex (GLuint program, GLenum shadertype, const GLchar *name);
2748__attribute__((visibility("default"))) void glGetActiveSubroutineUniformiv (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
2749__attribute__((visibility("default"))) void glGetActiveSubroutineUniformName (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
2750__attribute__((visibility("default"))) void glGetActiveSubroutineName (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
2751__attribute__((visibility("default"))) void glUniformSubroutinesuiv (GLenum shadertype, GLsizei count, const GLuint *indices);
2752__attribute__((visibility("default"))) void glGetUniformSubroutineuiv (GLenum shadertype, GLint location, GLuint *params);
2753__attribute__((visibility("default"))) void glGetProgramStageiv (GLuint program, GLenum shadertype, GLenum pname, GLint *values);
2754
2755typedef GLint ( * PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint program, GLenum shadertype, const GLchar *name);
2756typedef GLuint ( * PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, GLenum shadertype, const GLchar *name);
2757typedef void ( * PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC) (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint *values);
2758typedef void ( * PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
2759typedef void ( * PFNGLGETACTIVESUBROUTINENAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei *length, GLchar *name);
2760typedef void ( * PFNGLUNIFORMSUBROUTINESUIVPROC) (GLenum shadertype, GLsizei count, const GLuint *indices);
2761typedef void ( * PFNGLGETUNIFORMSUBROUTINEUIVPROC) (GLenum shadertype, GLint location, GLuint *params);
2762typedef void ( * PFNGLGETPROGRAMSTAGEIVPROC) (GLuint program, GLenum shadertype, GLenum pname, GLint *values);
2763
2764
2765
2766
2767
2768__attribute__((visibility("default"))) void glPatchParameteri (GLenum pname, GLint value);
2769__attribute__((visibility("default"))) void glPatchParameterfv (GLenum pname, const GLfloat *values);
2770
2771typedef void ( * PFNGLPATCHPARAMETERIPROC) (GLenum pname, GLint value);
2772typedef void ( * PFNGLPATCHPARAMETERFVPROC) (GLenum pname, const GLfloat *values);
2773# 7051 "../../include/GL/glext.h"
2774__attribute__((visibility("default"))) void glBindTransformFeedback (GLenum target, GLuint id);
2775__attribute__((visibility("default"))) void glDeleteTransformFeedbacks (GLsizei n, const GLuint *ids);
2776__attribute__((visibility("default"))) void glGenTransformFeedbacks (GLsizei n, GLuint *ids);
2777__attribute__((visibility("default"))) GLboolean glIsTransformFeedback (GLuint id);
2778__attribute__((visibility("default"))) void glPauseTransformFeedback (void);
2779__attribute__((visibility("default"))) void glResumeTransformFeedback (void);
2780__attribute__((visibility("default"))) void glDrawTransformFeedback (GLenum mode, GLuint id);
2781
2782typedef void ( * PFNGLBINDTRANSFORMFEEDBACKPROC) (GLenum target, GLuint id);
2783typedef void ( * PFNGLDELETETRANSFORMFEEDBACKSPROC) (GLsizei n, const GLuint *ids);
2784typedef void ( * PFNGLGENTRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint *ids);
2785typedef GLboolean ( * PFNGLISTRANSFORMFEEDBACKPROC) (GLuint id);
2786typedef void ( * PFNGLPAUSETRANSFORMFEEDBACKPROC) (void);
2787typedef void ( * PFNGLRESUMETRANSFORMFEEDBACKPROC) (void);
2788typedef void ( * PFNGLDRAWTRANSFORMFEEDBACKPROC) (GLenum mode, GLuint id);
2789
2790
2791
2792
2793
2794__attribute__((visibility("default"))) void glDrawTransformFeedbackStream (GLenum mode, GLuint id, GLuint stream);
2795__attribute__((visibility("default"))) void glBeginQueryIndexed (GLenum target, GLuint index, GLuint id);
2796__attribute__((visibility("default"))) void glEndQueryIndexed (GLenum target, GLuint index);
2797__attribute__((visibility("default"))) void glGetQueryIndexediv (GLenum target, GLuint index, GLenum pname, GLint *params);
2798
2799typedef void ( * PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC) (GLenum mode, GLuint id, GLuint stream);
2800typedef void ( * PFNGLBEGINQUERYINDEXEDPROC) (GLenum target, GLuint index, GLuint id);
2801typedef void ( * PFNGLENDQUERYINDEXEDPROC) (GLenum target, GLuint index);
2802typedef void ( * PFNGLGETQUERYINDEXEDIVPROC) (GLenum target, GLuint index, GLenum pname, GLint *params);
2803
2804
2805
2806
2807
2808__attribute__((visibility("default"))) void glReleaseShaderCompiler (void);
2809__attribute__((visibility("default"))) void glShaderBinary (GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
2810__attribute__((visibility("default"))) void glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
2811__attribute__((visibility("default"))) void glDepthRangef (GLclampf n, GLclampf f);
2812__attribute__((visibility("default"))) void glClearDepthf (GLclampf d);
2813
2814typedef void ( * PFNGLRELEASESHADERCOMPILERPROC) (void);
2815typedef void ( * PFNGLSHADERBINARYPROC) (GLsizei count, const GLuint *shaders, GLenum binaryformat, const GLvoid *binary, GLsizei length);
2816typedef void ( * PFNGLGETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
2817typedef void ( * PFNGLDEPTHRANGEFPROC) (GLclampf n, GLclampf f);
2818typedef void ( * PFNGLCLEARDEPTHFPROC) (GLclampf d);
2819
2820
2821
2822
2823
2824__attribute__((visibility("default"))) void glGetProgramBinary (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
2825__attribute__((visibility("default"))) void glProgramBinary (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
2826__attribute__((visibility("default"))) void glProgramParameteri (GLuint program, GLenum pname, GLint value);
2827
2828typedef void ( * PFNGLGETPROGRAMBINARYPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
2829typedef void ( * PFNGLPROGRAMBINARYPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLsizei length);
2830typedef void ( * PFNGLPROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value);
2831
2832
2833
2834
2835
2836__attribute__((visibility("default"))) void glUseProgramStages (GLuint pipeline, GLbitfield stages, GLuint program);
2837__attribute__((visibility("default"))) void glActiveShaderProgram (GLuint pipeline, GLuint program);
2838__attribute__((visibility("default"))) GLuint glCreateShaderProgramv (GLenum type, GLsizei count, const GLchar* *strings);
2839__attribute__((visibility("default"))) void glBindProgramPipeline (GLuint pipeline);
2840__attribute__((visibility("default"))) void glDeleteProgramPipelines (GLsizei n, const GLuint *pipelines);
2841__attribute__((visibility("default"))) void glGenProgramPipelines (GLsizei n, GLuint *pipelines);
2842__attribute__((visibility("default"))) GLboolean glIsProgramPipeline (GLuint pipeline);
2843__attribute__((visibility("default"))) void glGetProgramPipelineiv (GLuint pipeline, GLenum pname, GLint *params);
2844__attribute__((visibility("default"))) void glProgramUniform1i (GLuint program, GLint location, GLint v0);
2845__attribute__((visibility("default"))) void glProgramUniform1iv (GLuint program, GLint location, GLsizei count, const GLint *value);
2846__attribute__((visibility("default"))) void glProgramUniform1f (GLuint program, GLint location, GLfloat v0);
2847__attribute__((visibility("default"))) void glProgramUniform1fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2848__attribute__((visibility("default"))) void glProgramUniform1d (GLuint program, GLint location, GLdouble v0);
2849__attribute__((visibility("default"))) void glProgramUniform1dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2850__attribute__((visibility("default"))) void glProgramUniform1ui (GLuint program, GLint location, GLuint v0);
2851__attribute__((visibility("default"))) void glProgramUniform1uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
2852__attribute__((visibility("default"))) void glProgramUniform2i (GLuint program, GLint location, GLint v0, GLint v1);
2853__attribute__((visibility("default"))) void glProgramUniform2iv (GLuint program, GLint location, GLsizei count, const GLint *value);
2854__attribute__((visibility("default"))) void glProgramUniform2f (GLuint program, GLint location, GLfloat v0, GLfloat v1);
2855__attribute__((visibility("default"))) void glProgramUniform2fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2856__attribute__((visibility("default"))) void glProgramUniform2d (GLuint program, GLint location, GLdouble v0, GLdouble v1);
2857__attribute__((visibility("default"))) void glProgramUniform2dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2858__attribute__((visibility("default"))) void glProgramUniform2ui (GLuint program, GLint location, GLuint v0, GLuint v1);
2859__attribute__((visibility("default"))) void glProgramUniform2uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
2860__attribute__((visibility("default"))) void glProgramUniform3i (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
2861__attribute__((visibility("default"))) void glProgramUniform3iv (GLuint program, GLint location, GLsizei count, const GLint *value);
2862__attribute__((visibility("default"))) void glProgramUniform3f (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
2863__attribute__((visibility("default"))) void glProgramUniform3fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2864__attribute__((visibility("default"))) void glProgramUniform3d (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
2865__attribute__((visibility("default"))) void glProgramUniform3dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2866__attribute__((visibility("default"))) void glProgramUniform3ui (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
2867__attribute__((visibility("default"))) void glProgramUniform3uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
2868__attribute__((visibility("default"))) void glProgramUniform4i (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
2869__attribute__((visibility("default"))) void glProgramUniform4iv (GLuint program, GLint location, GLsizei count, const GLint *value);
2870__attribute__((visibility("default"))) void glProgramUniform4f (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
2871__attribute__((visibility("default"))) void glProgramUniform4fv (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2872__attribute__((visibility("default"))) void glProgramUniform4d (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
2873__attribute__((visibility("default"))) void glProgramUniform4dv (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2874__attribute__((visibility("default"))) void glProgramUniform4ui (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
2875__attribute__((visibility("default"))) void glProgramUniform4uiv (GLuint program, GLint location, GLsizei count, const GLuint *value);
2876__attribute__((visibility("default"))) void glProgramUniformMatrix2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2877__attribute__((visibility("default"))) void glProgramUniformMatrix3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2878__attribute__((visibility("default"))) void glProgramUniformMatrix4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2879__attribute__((visibility("default"))) void glProgramUniformMatrix2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2880__attribute__((visibility("default"))) void glProgramUniformMatrix3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2881__attribute__((visibility("default"))) void glProgramUniformMatrix4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2882__attribute__((visibility("default"))) void glProgramUniformMatrix2x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2883__attribute__((visibility("default"))) void glProgramUniformMatrix3x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2884__attribute__((visibility("default"))) void glProgramUniformMatrix2x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2885__attribute__((visibility("default"))) void glProgramUniformMatrix4x2fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2886__attribute__((visibility("default"))) void glProgramUniformMatrix3x4fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2887__attribute__((visibility("default"))) void glProgramUniformMatrix4x3fv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2888__attribute__((visibility("default"))) void glProgramUniformMatrix2x3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2889__attribute__((visibility("default"))) void glProgramUniformMatrix3x2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2890__attribute__((visibility("default"))) void glProgramUniformMatrix2x4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2891__attribute__((visibility("default"))) void glProgramUniformMatrix4x2dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2892__attribute__((visibility("default"))) void glProgramUniformMatrix3x4dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2893__attribute__((visibility("default"))) void glProgramUniformMatrix4x3dv (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2894__attribute__((visibility("default"))) void glValidateProgramPipeline (GLuint pipeline);
2895__attribute__((visibility("default"))) void glGetProgramPipelineInfoLog (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
2896
2897typedef void ( * PFNGLUSEPROGRAMSTAGESPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
2898typedef void ( * PFNGLACTIVESHADERPROGRAMPROC) (GLuint pipeline, GLuint program);
2899typedef GLuint ( * PFNGLCREATESHADERPROGRAMVPROC) (GLenum type, GLsizei count, const GLchar* *strings);
2900typedef void ( * PFNGLBINDPROGRAMPIPELINEPROC) (GLuint pipeline);
2901typedef void ( * PFNGLDELETEPROGRAMPIPELINESPROC) (GLsizei n, const GLuint *pipelines);
2902typedef void ( * PFNGLGENPROGRAMPIPELINESPROC) (GLsizei n, GLuint *pipelines);
2903typedef GLboolean ( * PFNGLISPROGRAMPIPELINEPROC) (GLuint pipeline);
2904typedef void ( * PFNGLGETPROGRAMPIPELINEIVPROC) (GLuint pipeline, GLenum pname, GLint *params);
2905typedef void ( * PFNGLPROGRAMUNIFORM1IPROC) (GLuint program, GLint location, GLint v0);
2906typedef void ( * PFNGLPROGRAMUNIFORM1IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
2907typedef void ( * PFNGLPROGRAMUNIFORM1FPROC) (GLuint program, GLint location, GLfloat v0);
2908typedef void ( * PFNGLPROGRAMUNIFORM1FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2909typedef void ( * PFNGLPROGRAMUNIFORM1DPROC) (GLuint program, GLint location, GLdouble v0);
2910typedef void ( * PFNGLPROGRAMUNIFORM1DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2911typedef void ( * PFNGLPROGRAMUNIFORM1UIPROC) (GLuint program, GLint location, GLuint v0);
2912typedef void ( * PFNGLPROGRAMUNIFORM1UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
2913typedef void ( * PFNGLPROGRAMUNIFORM2IPROC) (GLuint program, GLint location, GLint v0, GLint v1);
2914typedef void ( * PFNGLPROGRAMUNIFORM2IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
2915typedef void ( * PFNGLPROGRAMUNIFORM2FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
2916typedef void ( * PFNGLPROGRAMUNIFORM2FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2917typedef void ( * PFNGLPROGRAMUNIFORM2DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1);
2918typedef void ( * PFNGLPROGRAMUNIFORM2DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2919typedef void ( * PFNGLPROGRAMUNIFORM2UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);
2920typedef void ( * PFNGLPROGRAMUNIFORM2UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
2921typedef void ( * PFNGLPROGRAMUNIFORM3IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
2922typedef void ( * PFNGLPROGRAMUNIFORM3IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
2923typedef void ( * PFNGLPROGRAMUNIFORM3FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
2924typedef void ( * PFNGLPROGRAMUNIFORM3FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2925typedef void ( * PFNGLPROGRAMUNIFORM3DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2);
2926typedef void ( * PFNGLPROGRAMUNIFORM3DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2927typedef void ( * PFNGLPROGRAMUNIFORM3UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
2928typedef void ( * PFNGLPROGRAMUNIFORM3UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
2929typedef void ( * PFNGLPROGRAMUNIFORM4IPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
2930typedef void ( * PFNGLPROGRAMUNIFORM4IVPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
2931typedef void ( * PFNGLPROGRAMUNIFORM4FPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
2932typedef void ( * PFNGLPROGRAMUNIFORM4FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
2933typedef void ( * PFNGLPROGRAMUNIFORM4DPROC) (GLuint program, GLint location, GLdouble v0, GLdouble v1, GLdouble v2, GLdouble v3);
2934typedef void ( * PFNGLPROGRAMUNIFORM4DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
2935typedef void ( * PFNGLPROGRAMUNIFORM4UIPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
2936typedef void ( * PFNGLPROGRAMUNIFORM4UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
2937typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2938typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2939typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2940typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2941typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2942typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2943typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2944typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2945typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2946typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2947typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2948typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
2949typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2950typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2951typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2952typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2953typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2954typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
2955typedef void ( * PFNGLVALIDATEPROGRAMPIPELINEPROC) (GLuint pipeline);
2956typedef void ( * PFNGLGETPROGRAMPIPELINEINFOLOGPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
2957
2958
2959
2960
2961
2962__attribute__((visibility("default"))) void glVertexAttribL1d (GLuint index, GLdouble x);
2963__attribute__((visibility("default"))) void glVertexAttribL2d (GLuint index, GLdouble x, GLdouble y);
2964__attribute__((visibility("default"))) void glVertexAttribL3d (GLuint index, GLdouble x, GLdouble y, GLdouble z);
2965__attribute__((visibility("default"))) void glVertexAttribL4d (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2966__attribute__((visibility("default"))) void glVertexAttribL1dv (GLuint index, const GLdouble *v);
2967__attribute__((visibility("default"))) void glVertexAttribL2dv (GLuint index, const GLdouble *v);
2968__attribute__((visibility("default"))) void glVertexAttribL3dv (GLuint index, const GLdouble *v);
2969__attribute__((visibility("default"))) void glVertexAttribL4dv (GLuint index, const GLdouble *v);
2970__attribute__((visibility("default"))) void glVertexAttribLPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2971__attribute__((visibility("default"))) void glGetVertexAttribLdv (GLuint index, GLenum pname, GLdouble *params);
2972
2973typedef void ( * PFNGLVERTEXATTRIBL1DPROC) (GLuint index, GLdouble x);
2974typedef void ( * PFNGLVERTEXATTRIBL2DPROC) (GLuint index, GLdouble x, GLdouble y);
2975typedef void ( * PFNGLVERTEXATTRIBL3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
2976typedef void ( * PFNGLVERTEXATTRIBL4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
2977typedef void ( * PFNGLVERTEXATTRIBL1DVPROC) (GLuint index, const GLdouble *v);
2978typedef void ( * PFNGLVERTEXATTRIBL2DVPROC) (GLuint index, const GLdouble *v);
2979typedef void ( * PFNGLVERTEXATTRIBL3DVPROC) (GLuint index, const GLdouble *v);
2980typedef void ( * PFNGLVERTEXATTRIBL4DVPROC) (GLuint index, const GLdouble *v);
2981typedef void ( * PFNGLVERTEXATTRIBLPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
2982typedef void ( * PFNGLGETVERTEXATTRIBLDVPROC) (GLuint index, GLenum pname, GLdouble *params);
2983
2984
2985
2986
2987
2988__attribute__((visibility("default"))) void glViewportArrayv (GLuint first, GLsizei count, const GLfloat *v);
2989__attribute__((visibility("default"))) void glViewportIndexedf (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
2990__attribute__((visibility("default"))) void glViewportIndexedfv (GLuint index, const GLfloat *v);
2991__attribute__((visibility("default"))) void glScissorArrayv (GLuint first, GLsizei count, const GLint *v);
2992__attribute__((visibility("default"))) void glScissorIndexed (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
2993__attribute__((visibility("default"))) void glScissorIndexedv (GLuint index, const GLint *v);
2994__attribute__((visibility("default"))) void glDepthRangeArrayv (GLuint first, GLsizei count, const GLclampd *v);
2995__attribute__((visibility("default"))) void glDepthRangeIndexed (GLuint index, GLclampd n, GLclampd f);
2996__attribute__((visibility("default"))) void glGetFloati_v (GLenum target, GLuint index, GLfloat *data);
2997__attribute__((visibility("default"))) void glGetDoublei_v (GLenum target, GLuint index, GLdouble *data);
2998
2999typedef void ( * PFNGLVIEWPORTARRAYVPROC) (GLuint first, GLsizei count, const GLfloat *v);
3000typedef void ( * PFNGLVIEWPORTINDEXEDFPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
3001typedef void ( * PFNGLVIEWPORTINDEXEDFVPROC) (GLuint index, const GLfloat *v);
3002typedef void ( * PFNGLSCISSORARRAYVPROC) (GLuint first, GLsizei count, const GLint *v);
3003typedef void ( * PFNGLSCISSORINDEXEDPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
3004typedef void ( * PFNGLSCISSORINDEXEDVPROC) (GLuint index, const GLint *v);
3005typedef void ( * PFNGLDEPTHRANGEARRAYVPROC) (GLuint first, GLsizei count, const GLclampd *v);
3006typedef void ( * PFNGLDEPTHRANGEINDEXEDPROC) (GLuint index, GLclampd n, GLclampd f);
3007typedef void ( * PFNGLGETFLOATI_VPROC) (GLenum target, GLuint index, GLfloat *data);
3008typedef void ( * PFNGLGETDOUBLEI_VPROC) (GLenum target, GLuint index, GLdouble *data);
3009
3010
3011
3012
3013
3014__attribute__((visibility("default"))) GLsync glCreateSyncFromCLeventARB (struct _cl_context * context, struct _cl_event * event, GLbitfield flags);
3015
3016typedef GLsync ( * PFNGLCREATESYNCFROMCLEVENTARBPROC) (struct _cl_context * context, struct _cl_event * event, GLbitfield flags);
3017
3018
3019
3020
3021
3022__attribute__((visibility("default"))) void glDebugMessageControlARB (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
3023__attribute__((visibility("default"))) void glDebugMessageInsertARB (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
3024__attribute__((visibility("default"))) void glDebugMessageCallbackARB (GLDEBUGPROCARB callback, const GLvoid *userParam);
3025__attribute__((visibility("default"))) GLuint glGetDebugMessageLogARB (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
3026
3027typedef void ( * PFNGLDEBUGMESSAGECONTROLARBPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
3028typedef void ( * PFNGLDEBUGMESSAGEINSERTARBPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
3029typedef void ( * PFNGLDEBUGMESSAGECALLBACKARBPROC) (GLDEBUGPROCARB callback, const GLvoid *userParam);
3030typedef GLuint ( * PFNGLGETDEBUGMESSAGELOGARBPROC) (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
3031
3032
3033
3034
3035
3036__attribute__((visibility("default"))) GLenum glGetGraphicsResetStatusARB (void);
3037__attribute__((visibility("default"))) void glGetnMapdvARB (GLenum target, GLenum query, GLsizei bufSize, GLdouble *v);
3038__attribute__((visibility("default"))) void glGetnMapfvARB (GLenum target, GLenum query, GLsizei bufSize, GLfloat *v);
3039__attribute__((visibility("default"))) void glGetnMapivARB (GLenum target, GLenum query, GLsizei bufSize, GLint *v);
3040__attribute__((visibility("default"))) void glGetnPixelMapfvARB (GLenum map, GLsizei bufSize, GLfloat *values);
3041__attribute__((visibility("default"))) void glGetnPixelMapuivARB (GLenum map, GLsizei bufSize, GLuint *values);
3042__attribute__((visibility("default"))) void glGetnPixelMapusvARB (GLenum map, GLsizei bufSize, GLushort *values);
3043__attribute__((visibility("default"))) void glGetnPolygonStippleARB (GLsizei bufSize, GLubyte *pattern);
3044__attribute__((visibility("default"))) void glGetnColorTableARB (GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *table);
3045__attribute__((visibility("default"))) void glGetnConvolutionFilterARB (GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *image);
3046__attribute__((visibility("default"))) void glGetnSeparableFilterARB (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid *row, GLsizei columnBufSize, GLvoid *column, GLvoid *span);
3047__attribute__((visibility("default"))) void glGetnHistogramARB (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values);
3048__attribute__((visibility("default"))) void glGetnMinmaxARB (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values);
3049__attribute__((visibility("default"))) void glGetnTexImageARB (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *img);
3050__attribute__((visibility("default"))) void glReadnPixelsARB (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data);
3051__attribute__((visibility("default"))) void glGetnCompressedTexImageARB (GLenum target, GLint lod, GLsizei bufSize, GLvoid *img);
3052__attribute__((visibility("default"))) void glGetnUniformfvARB (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
3053__attribute__((visibility("default"))) void glGetnUniformivARB (GLuint program, GLint location, GLsizei bufSize, GLint *params);
3054__attribute__((visibility("default"))) void glGetnUniformuivARB (GLuint program, GLint location, GLsizei bufSize, GLuint *params);
3055__attribute__((visibility("default"))) void glGetnUniformdvARB (GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
3056
3057typedef GLenum ( * PFNGLGETGRAPHICSRESETSTATUSARBPROC) (void);
3058typedef void ( * PFNGLGETNMAPDVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLdouble *v);
3059typedef void ( * PFNGLGETNMAPFVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLfloat *v);
3060typedef void ( * PFNGLGETNMAPIVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLint *v);
3061typedef void ( * PFNGLGETNPIXELMAPFVARBPROC) (GLenum map, GLsizei bufSize, GLfloat *values);
3062typedef void ( * PFNGLGETNPIXELMAPUIVARBPROC) (GLenum map, GLsizei bufSize, GLuint *values);
3063typedef void ( * PFNGLGETNPIXELMAPUSVARBPROC) (GLenum map, GLsizei bufSize, GLushort *values);
3064typedef void ( * PFNGLGETNPOLYGONSTIPPLEARBPROC) (GLsizei bufSize, GLubyte *pattern);
3065typedef void ( * PFNGLGETNCOLORTABLEARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *table);
3066typedef void ( * PFNGLGETNCONVOLUTIONFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, GLvoid *image);
3067typedef void ( * PFNGLGETNSEPARABLEFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, GLvoid *row, GLsizei columnBufSize, GLvoid *column, GLvoid *span);
3068typedef void ( * PFNGLGETNHISTOGRAMARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values);
3069typedef void ( * PFNGLGETNMINMAXARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, GLvoid *values);
3070typedef void ( * PFNGLGETNTEXIMAGEARBPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, GLvoid *img);
3071typedef void ( * PFNGLREADNPIXELSARBPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data);
3072typedef void ( * PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, GLsizei bufSize, GLvoid *img);
3073typedef void ( * PFNGLGETNUNIFORMFVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
3074typedef void ( * PFNGLGETNUNIFORMIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
3075typedef void ( * PFNGLGETNUNIFORMUIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint *params);
3076typedef void ( * PFNGLGETNUNIFORMDVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
3077# 7367 "../../include/GL/glext.h"
3078__attribute__((visibility("default"))) void glBlendColorEXT (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
3079
3080typedef void ( * PFNGLBLENDCOLOREXTPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
3081
3082
3083
3084
3085
3086__attribute__((visibility("default"))) void glPolygonOffsetEXT (GLfloat factor, GLfloat bias);
3087
3088typedef void ( * PFNGLPOLYGONOFFSETEXTPROC) (GLfloat factor, GLfloat bias);
3089# 7387 "../../include/GL/glext.h"
3090__attribute__((visibility("default"))) void glTexImage3DEXT (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
3091__attribute__((visibility("default"))) void glTexSubImage3DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
3092
3093typedef void ( * PFNGLTEXIMAGE3DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
3094typedef void ( * PFNGLTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
3095
3096
3097
3098
3099
3100__attribute__((visibility("default"))) void glGetTexFilterFuncSGIS (GLenum target, GLenum filter, GLfloat *weights);
3101__attribute__((visibility("default"))) void glTexFilterFuncSGIS (GLenum target, GLenum filter, GLsizei n, const GLfloat *weights);
3102
3103typedef void ( * PFNGLGETTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLfloat *weights);
3104typedef void ( * PFNGLTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLsizei n, const GLfloat *weights);
3105
3106
3107
3108
3109
3110__attribute__((visibility("default"))) void glTexSubImage1DEXT (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
3111__attribute__((visibility("default"))) void glTexSubImage2DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
3112
3113typedef void ( * PFNGLTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
3114typedef void ( * PFNGLTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
3115
3116
3117
3118
3119
3120__attribute__((visibility("default"))) void glCopyTexImage1DEXT (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
3121__attribute__((visibility("default"))) void glCopyTexImage2DEXT (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
3122__attribute__((visibility("default"))) void glCopyTexSubImage1DEXT (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
3123__attribute__((visibility("default"))) void glCopyTexSubImage2DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
3124__attribute__((visibility("default"))) void glCopyTexSubImage3DEXT (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
3125
3126typedef void ( * PFNGLCOPYTEXIMAGE1DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
3127typedef void ( * PFNGLCOPYTEXIMAGE2DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
3128typedef void ( * PFNGLCOPYTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
3129typedef void ( * PFNGLCOPYTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
3130typedef void ( * PFNGLCOPYTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
3131
3132
3133
3134
3135
3136__attribute__((visibility("default"))) void glGetHistogramEXT (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
3137__attribute__((visibility("default"))) void glGetHistogramParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
3138__attribute__((visibility("default"))) void glGetHistogramParameterivEXT (GLenum target, GLenum pname, GLint *params);
3139__attribute__((visibility("default"))) void glGetMinmaxEXT (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
3140__attribute__((visibility("default"))) void glGetMinmaxParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
3141__attribute__((visibility("default"))) void glGetMinmaxParameterivEXT (GLenum target, GLenum pname, GLint *params);
3142__attribute__((visibility("default"))) void glHistogramEXT (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
3143__attribute__((visibility("default"))) void glMinmaxEXT (GLenum target, GLenum internalformat, GLboolean sink);
3144__attribute__((visibility("default"))) void glResetHistogramEXT (GLenum target);
3145__attribute__((visibility("default"))) void glResetMinmaxEXT (GLenum target);
3146
3147typedef void ( * PFNGLGETHISTOGRAMEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
3148typedef void ( * PFNGLGETHISTOGRAMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
3149typedef void ( * PFNGLGETHISTOGRAMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
3150typedef void ( * PFNGLGETMINMAXEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);
3151typedef void ( * PFNGLGETMINMAXPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
3152typedef void ( * PFNGLGETMINMAXPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
3153typedef void ( * PFNGLHISTOGRAMEXTPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
3154typedef void ( * PFNGLMINMAXEXTPROC) (GLenum target, GLenum internalformat, GLboolean sink);
3155typedef void ( * PFNGLRESETHISTOGRAMEXTPROC) (GLenum target);
3156typedef void ( * PFNGLRESETMINMAXEXTPROC) (GLenum target);
3157
3158
3159
3160
3161
3162__attribute__((visibility("default"))) void glConvolutionFilter1DEXT (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
3163__attribute__((visibility("default"))) void glConvolutionFilter2DEXT (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
3164__attribute__((visibility("default"))) void glConvolutionParameterfEXT (GLenum target, GLenum pname, GLfloat params);
3165__attribute__((visibility("default"))) void glConvolutionParameterfvEXT (GLenum target, GLenum pname, const GLfloat *params);
3166__attribute__((visibility("default"))) void glConvolutionParameteriEXT (GLenum target, GLenum pname, GLint params);
3167__attribute__((visibility("default"))) void glConvolutionParameterivEXT (GLenum target, GLenum pname, const GLint *params);
3168__attribute__((visibility("default"))) void glCopyConvolutionFilter1DEXT (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
3169__attribute__((visibility("default"))) void glCopyConvolutionFilter2DEXT (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
3170__attribute__((visibility("default"))) void glGetConvolutionFilterEXT (GLenum target, GLenum format, GLenum type, GLvoid *image);
3171__attribute__((visibility("default"))) void glGetConvolutionParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
3172__attribute__((visibility("default"))) void glGetConvolutionParameterivEXT (GLenum target, GLenum pname, GLint *params);
3173__attribute__((visibility("default"))) void glGetSeparableFilterEXT (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
3174__attribute__((visibility("default"))) void glSeparableFilter2DEXT (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
3175
3176typedef void ( * PFNGLCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);
3177typedef void ( * PFNGLCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);
3178typedef void ( * PFNGLCONVOLUTIONPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat params);
3179typedef void ( * PFNGLCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat *params);
3180typedef void ( * PFNGLCONVOLUTIONPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint params);
3181typedef void ( * PFNGLCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);
3182typedef void ( * PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
3183typedef void ( * PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
3184typedef void ( * PFNGLGETCONVOLUTIONFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image);
3185typedef void ( * PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
3186typedef void ( * PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
3187typedef void ( * PFNGLGETSEPARABLEFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);
3188typedef void ( * PFNGLSEPARABLEFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);
3189# 7495 "../../include/GL/glext.h"
3190__attribute__((visibility("default"))) void glColorTableSGI (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
3191__attribute__((visibility("default"))) void glColorTableParameterfvSGI (GLenum target, GLenum pname, const GLfloat *params);
3192__attribute__((visibility("default"))) void glColorTableParameterivSGI (GLenum target, GLenum pname, const GLint *params);
3193__attribute__((visibility("default"))) void glCopyColorTableSGI (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
3194__attribute__((visibility("default"))) void glGetColorTableSGI (GLenum target, GLenum format, GLenum type, GLvoid *table);
3195__attribute__((visibility("default"))) void glGetColorTableParameterfvSGI (GLenum target, GLenum pname, GLfloat *params);
3196__attribute__((visibility("default"))) void glGetColorTableParameterivSGI (GLenum target, GLenum pname, GLint *params);
3197
3198typedef void ( * PFNGLCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
3199typedef void ( * PFNGLCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat *params);
3200typedef void ( * PFNGLCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint *params);
3201typedef void ( * PFNGLCOPYCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
3202typedef void ( * PFNGLGETCOLORTABLESGIPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table);
3203typedef void ( * PFNGLGETCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat *params);
3204typedef void ( * PFNGLGETCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint *params);
3205
3206
3207
3208
3209
3210__attribute__((visibility("default"))) void glPixelTexGenSGIX (GLenum mode);
3211
3212typedef void ( * PFNGLPIXELTEXGENSGIXPROC) (GLenum mode);
3213
3214
3215
3216
3217
3218__attribute__((visibility("default"))) void glPixelTexGenParameteriSGIS (GLenum pname, GLint param);
3219__attribute__((visibility("default"))) void glPixelTexGenParameterivSGIS (GLenum pname, const GLint *params);
3220__attribute__((visibility("default"))) void glPixelTexGenParameterfSGIS (GLenum pname, GLfloat param);
3221__attribute__((visibility("default"))) void glPixelTexGenParameterfvSGIS (GLenum pname, const GLfloat *params);
3222__attribute__((visibility("default"))) void glGetPixelTexGenParameterivSGIS (GLenum pname, GLint *params);
3223__attribute__((visibility("default"))) void glGetPixelTexGenParameterfvSGIS (GLenum pname, GLfloat *params);
3224
3225typedef void ( * PFNGLPIXELTEXGENPARAMETERISGISPROC) (GLenum pname, GLint param);
3226typedef void ( * PFNGLPIXELTEXGENPARAMETERIVSGISPROC) (GLenum pname, const GLint *params);
3227typedef void ( * PFNGLPIXELTEXGENPARAMETERFSGISPROC) (GLenum pname, GLfloat param);
3228typedef void ( * PFNGLPIXELTEXGENPARAMETERFVSGISPROC) (GLenum pname, const GLfloat *params);
3229typedef void ( * PFNGLGETPIXELTEXGENPARAMETERIVSGISPROC) (GLenum pname, GLint *params);
3230typedef void ( * PFNGLGETPIXELTEXGENPARAMETERFVSGISPROC) (GLenum pname, GLfloat *params);
3231
3232
3233
3234
3235
3236__attribute__((visibility("default"))) void glTexImage4DSGIS (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
3237__attribute__((visibility("default"))) void glTexSubImage4DSGIS (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLenum format, GLenum type, const GLvoid *pixels);
3238
3239typedef void ( * PFNGLTEXIMAGE4DSGISPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
3240typedef void ( * PFNGLTEXSUBIMAGE4DSGISPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei size4d, GLenum format, GLenum type, const GLvoid *pixels);
3241# 7559 "../../include/GL/glext.h"
3242__attribute__((visibility("default"))) GLboolean glAreTexturesResidentEXT (GLsizei n, const GLuint *textures, GLboolean *residences);
3243__attribute__((visibility("default"))) void glBindTextureEXT (GLenum target, GLuint texture);
3244__attribute__((visibility("default"))) void glDeleteTexturesEXT (GLsizei n, const GLuint *textures);
3245__attribute__((visibility("default"))) void glGenTexturesEXT (GLsizei n, GLuint *textures);
3246__attribute__((visibility("default"))) GLboolean glIsTextureEXT (GLuint texture);
3247__attribute__((visibility("default"))) void glPrioritizeTexturesEXT (GLsizei n, const GLuint *textures, const GLclampf *priorities);
3248
3249typedef GLboolean ( * PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n, const GLuint *textures, GLboolean *residences);
3250typedef void ( * PFNGLBINDTEXTUREEXTPROC) (GLenum target, GLuint texture);
3251typedef void ( * PFNGLDELETETEXTURESEXTPROC) (GLsizei n, const GLuint *textures);
3252typedef void ( * PFNGLGENTEXTURESEXTPROC) (GLsizei n, GLuint *textures);
3253typedef GLboolean ( * PFNGLISTEXTUREEXTPROC) (GLuint texture);
3254typedef void ( * PFNGLPRIORITIZETEXTURESEXTPROC) (GLsizei n, const GLuint *textures, const GLclampf *priorities);
3255
3256
3257
3258
3259
3260__attribute__((visibility("default"))) void glDetailTexFuncSGIS (GLenum target, GLsizei n, const GLfloat *points);
3261__attribute__((visibility("default"))) void glGetDetailTexFuncSGIS (GLenum target, GLfloat *points);
3262
3263typedef void ( * PFNGLDETAILTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat *points);
3264typedef void ( * PFNGLGETDETAILTEXFUNCSGISPROC) (GLenum target, GLfloat *points);
3265
3266
3267
3268
3269
3270__attribute__((visibility("default"))) void glSharpenTexFuncSGIS (GLenum target, GLsizei n, const GLfloat *points);
3271__attribute__((visibility("default"))) void glGetSharpenTexFuncSGIS (GLenum target, GLfloat *points);
3272
3273typedef void ( * PFNGLSHARPENTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat *points);
3274typedef void ( * PFNGLGETSHARPENTEXFUNCSGISPROC) (GLenum target, GLfloat *points);
3275# 7605 "../../include/GL/glext.h"
3276__attribute__((visibility("default"))) void glSampleMaskSGIS (GLclampf value, GLboolean invert);
3277__attribute__((visibility("default"))) void glSamplePatternSGIS (GLenum pattern);
3278
3279typedef void ( * PFNGLSAMPLEMASKSGISPROC) (GLclampf value, GLboolean invert);
3280typedef void ( * PFNGLSAMPLEPATTERNSGISPROC) (GLenum pattern);
3281# 7619 "../../include/GL/glext.h"
3282__attribute__((visibility("default"))) void glArrayElementEXT (GLint i);
3283__attribute__((visibility("default"))) void glColorPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3284__attribute__((visibility("default"))) void glDrawArraysEXT (GLenum mode, GLint first, GLsizei count);
3285__attribute__((visibility("default"))) void glEdgeFlagPointerEXT (GLsizei stride, GLsizei count, const GLboolean *pointer);
3286__attribute__((visibility("default"))) void glGetPointervEXT (GLenum pname, GLvoid* *params);
3287__attribute__((visibility("default"))) void glIndexPointerEXT (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3288__attribute__((visibility("default"))) void glNormalPointerEXT (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3289__attribute__((visibility("default"))) void glTexCoordPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3290__attribute__((visibility("default"))) void glVertexPointerEXT (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3291
3292typedef void ( * PFNGLARRAYELEMENTEXTPROC) (GLint i);
3293typedef void ( * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3294typedef void ( * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count);
3295typedef void ( * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean *pointer);
3296typedef void ( * PFNGLGETPOINTERVEXTPROC) (GLenum pname, GLvoid* *params);
3297typedef void ( * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3298typedef void ( * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3299typedef void ( * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3300typedef void ( * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
3301# 7667 "../../include/GL/glext.h"
3302__attribute__((visibility("default"))) void glBlendEquationEXT (GLenum mode);
3303
3304typedef void ( * PFNGLBLENDEQUATIONEXTPROC) (GLenum mode);
3305# 7695 "../../include/GL/glext.h"
3306__attribute__((visibility("default"))) void glSpriteParameterfSGIX (GLenum pname, GLfloat param);
3307__attribute__((visibility("default"))) void glSpriteParameterfvSGIX (GLenum pname, const GLfloat *params);
3308__attribute__((visibility("default"))) void glSpriteParameteriSGIX (GLenum pname, GLint param);
3309__attribute__((visibility("default"))) void glSpriteParameterivSGIX (GLenum pname, const GLint *params);
3310
3311typedef void ( * PFNGLSPRITEPARAMETERFSGIXPROC) (GLenum pname, GLfloat param);
3312typedef void ( * PFNGLSPRITEPARAMETERFVSGIXPROC) (GLenum pname, const GLfloat *params);
3313typedef void ( * PFNGLSPRITEPARAMETERISGIXPROC) (GLenum pname, GLint param);
3314typedef void ( * PFNGLSPRITEPARAMETERIVSGIXPROC) (GLenum pname, const GLint *params);
3315# 7713 "../../include/GL/glext.h"
3316__attribute__((visibility("default"))) void glPointParameterfEXT (GLenum pname, GLfloat param);
3317__attribute__((visibility("default"))) void glPointParameterfvEXT (GLenum pname, const GLfloat *params);
3318
3319typedef void ( * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param);
3320typedef void ( * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, const GLfloat *params);
3321
3322
3323
3324
3325
3326__attribute__((visibility("default"))) void glPointParameterfSGIS (GLenum pname, GLfloat param);
3327__attribute__((visibility("default"))) void glPointParameterfvSGIS (GLenum pname, const GLfloat *params);
3328
3329typedef void ( * PFNGLPOINTPARAMETERFSGISPROC) (GLenum pname, GLfloat param);
3330typedef void ( * PFNGLPOINTPARAMETERFVSGISPROC) (GLenum pname, const GLfloat *params);
3331
3332
3333
3334
3335
3336__attribute__((visibility("default"))) GLint glGetInstrumentsSGIX (void);
3337__attribute__((visibility("default"))) void glInstrumentsBufferSGIX (GLsizei size, GLint *buffer);
3338__attribute__((visibility("default"))) GLint glPollInstrumentsSGIX (GLint *marker_p);
3339__attribute__((visibility("default"))) void glReadInstrumentsSGIX (GLint marker);
3340__attribute__((visibility("default"))) void glStartInstrumentsSGIX (void);
3341__attribute__((visibility("default"))) void glStopInstrumentsSGIX (GLint marker);
3342
3343typedef GLint ( * PFNGLGETINSTRUMENTSSGIXPROC) (void);
3344typedef void ( * PFNGLINSTRUMENTSBUFFERSGIXPROC) (GLsizei size, GLint *buffer);
3345typedef GLint ( * PFNGLPOLLINSTRUMENTSSGIXPROC) (GLint *marker_p);
3346typedef void ( * PFNGLREADINSTRUMENTSSGIXPROC) (GLint marker);
3347typedef void ( * PFNGLSTARTINSTRUMENTSSGIXPROC) (void);
3348typedef void ( * PFNGLSTOPINSTRUMENTSSGIXPROC) (GLint marker);
3349# 7755 "../../include/GL/glext.h"
3350__attribute__((visibility("default"))) void glFrameZoomSGIX (GLint factor);
3351
3352typedef void ( * PFNGLFRAMEZOOMSGIXPROC) (GLint factor);
3353
3354
3355
3356
3357
3358__attribute__((visibility("default"))) void glTagSampleBufferSGIX (void);
3359
3360typedef void ( * PFNGLTAGSAMPLEBUFFERSGIXPROC) (void);
3361
3362
3363
3364
3365
3366__attribute__((visibility("default"))) void glDeformationMap3dSGIX (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, GLdouble w1, GLdouble w2, GLint wstride, GLint worder, const GLdouble *points);
3367__attribute__((visibility("default"))) void glDeformationMap3fSGIX (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, GLfloat w1, GLfloat w2, GLint wstride, GLint worder, const GLfloat *points);
3368__attribute__((visibility("default"))) void glDeformSGIX (GLbitfield mask);
3369__attribute__((visibility("default"))) void glLoadIdentityDeformationMapSGIX (GLbitfield mask);
3370
3371typedef void ( * PFNGLDEFORMATIONMAP3DSGIXPROC) (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, GLdouble w1, GLdouble w2, GLint wstride, GLint worder, const GLdouble *points);
3372typedef void ( * PFNGLDEFORMATIONMAP3FSGIXPROC) (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, GLfloat w1, GLfloat w2, GLint wstride, GLint worder, const GLfloat *points);
3373typedef void ( * PFNGLDEFORMSGIXPROC) (GLbitfield mask);
3374typedef void ( * PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC) (GLbitfield mask);
3375
3376
3377
3378
3379
3380__attribute__((visibility("default"))) void glReferencePlaneSGIX (const GLdouble *equation);
3381
3382typedef void ( * PFNGLREFERENCEPLANESGIXPROC) (const GLdouble *equation);
3383
3384
3385
3386
3387
3388__attribute__((visibility("default"))) void glFlushRasterSGIX (void);
3389
3390typedef void ( * PFNGLFLUSHRASTERSGIXPROC) (void);
3391# 7805 "../../include/GL/glext.h"
3392__attribute__((visibility("default"))) void glFogFuncSGIS (GLsizei n, const GLfloat *points);
3393__attribute__((visibility("default"))) void glGetFogFuncSGIS (GLfloat *points);
3394
3395typedef void ( * PFNGLFOGFUNCSGISPROC) (GLsizei n, const GLfloat *points);
3396typedef void ( * PFNGLGETFOGFUNCSGISPROC) (GLfloat *points);
3397# 7819 "../../include/GL/glext.h"
3398__attribute__((visibility("default"))) void glImageTransformParameteriHP (GLenum target, GLenum pname, GLint param);
3399__attribute__((visibility("default"))) void glImageTransformParameterfHP (GLenum target, GLenum pname, GLfloat param);
3400__attribute__((visibility("default"))) void glImageTransformParameterivHP (GLenum target, GLenum pname, const GLint *params);
3401__attribute__((visibility("default"))) void glImageTransformParameterfvHP (GLenum target, GLenum pname, const GLfloat *params);
3402__attribute__((visibility("default"))) void glGetImageTransformParameterivHP (GLenum target, GLenum pname, GLint *params);
3403__attribute__((visibility("default"))) void glGetImageTransformParameterfvHP (GLenum target, GLenum pname, GLfloat *params);
3404
3405typedef void ( * PFNGLIMAGETRANSFORMPARAMETERIHPPROC) (GLenum target, GLenum pname, GLint param);
3406typedef void ( * PFNGLIMAGETRANSFORMPARAMETERFHPPROC) (GLenum target, GLenum pname, GLfloat param);
3407typedef void ( * PFNGLIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint *params);
3408typedef void ( * PFNGLIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat *params);
3409typedef void ( * PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, GLint *params);
3410typedef void ( * PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, GLfloat *params);
3411# 7845 "../../include/GL/glext.h"
3412__attribute__((visibility("default"))) void glColorSubTableEXT (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
3413__attribute__((visibility("default"))) void glCopyColorSubTableEXT (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
3414
3415typedef void ( * PFNGLCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);
3416typedef void ( * PFNGLCOPYCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
3417# 7859 "../../include/GL/glext.h"
3418__attribute__((visibility("default"))) void glHintPGI (GLenum target, GLint mode);
3419
3420typedef void ( * PFNGLHINTPGIPROC) (GLenum target, GLint mode);
3421
3422
3423
3424
3425
3426__attribute__((visibility("default"))) void glColorTableEXT (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
3427__attribute__((visibility("default"))) void glGetColorTableEXT (GLenum target, GLenum format, GLenum type, GLvoid *data);
3428__attribute__((visibility("default"))) void glGetColorTableParameterivEXT (GLenum target, GLenum pname, GLint *params);
3429__attribute__((visibility("default"))) void glGetColorTableParameterfvEXT (GLenum target, GLenum pname, GLfloat *params);
3430
3431typedef void ( * PFNGLCOLORTABLEEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);
3432typedef void ( * PFNGLGETCOLORTABLEEXTPROC) (GLenum target, GLenum format, GLenum type, GLvoid *data);
3433typedef void ( * PFNGLGETCOLORTABLEPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
3434typedef void ( * PFNGLGETCOLORTABLEPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat *params);
3435# 7885 "../../include/GL/glext.h"
3436__attribute__((visibility("default"))) void glGetListParameterfvSGIX (GLuint list, GLenum pname, GLfloat *params);
3437__attribute__((visibility("default"))) void glGetListParameterivSGIX (GLuint list, GLenum pname, GLint *params);
3438__attribute__((visibility("default"))) void glListParameterfSGIX (GLuint list, GLenum pname, GLfloat param);
3439__attribute__((visibility("default"))) void glListParameterfvSGIX (GLuint list, GLenum pname, const GLfloat *params);
3440__attribute__((visibility("default"))) void glListParameteriSGIX (GLuint list, GLenum pname, GLint param);
3441__attribute__((visibility("default"))) void glListParameterivSGIX (GLuint list, GLenum pname, const GLint *params);
3442
3443typedef void ( * PFNGLGETLISTPARAMETERFVSGIXPROC) (GLuint list, GLenum pname, GLfloat *params);
3444typedef void ( * PFNGLGETLISTPARAMETERIVSGIXPROC) (GLuint list, GLenum pname, GLint *params);
3445typedef void ( * PFNGLLISTPARAMETERFSGIXPROC) (GLuint list, GLenum pname, GLfloat param);
3446typedef void ( * PFNGLLISTPARAMETERFVSGIXPROC) (GLuint list, GLenum pname, const GLfloat *params);
3447typedef void ( * PFNGLLISTPARAMETERISGIXPROC) (GLuint list, GLenum pname, GLint param);
3448typedef void ( * PFNGLLISTPARAMETERIVSGIXPROC) (GLuint list, GLenum pname, const GLint *params);
3449# 7923 "../../include/GL/glext.h"
3450__attribute__((visibility("default"))) void glIndexMaterialEXT (GLenum face, GLenum mode);
3451
3452typedef void ( * PFNGLINDEXMATERIALEXTPROC) (GLenum face, GLenum mode);
3453
3454
3455
3456
3457
3458__attribute__((visibility("default"))) void glIndexFuncEXT (GLenum func, GLclampf ref);
3459
3460typedef void ( * PFNGLINDEXFUNCEXTPROC) (GLenum func, GLclampf ref);
3461# 7943 "../../include/GL/glext.h"
3462__attribute__((visibility("default"))) void glLockArraysEXT (GLint first, GLsizei count);
3463__attribute__((visibility("default"))) void glUnlockArraysEXT (void);
3464
3465typedef void ( * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count);
3466typedef void ( * PFNGLUNLOCKARRAYSEXTPROC) (void);
3467
3468
3469
3470
3471
3472__attribute__((visibility("default"))) void glCullParameterdvEXT (GLenum pname, GLdouble *params);
3473__attribute__((visibility("default"))) void glCullParameterfvEXT (GLenum pname, GLfloat *params);
3474
3475typedef void ( * PFNGLCULLPARAMETERDVEXTPROC) (GLenum pname, GLdouble *params);
3476typedef void ( * PFNGLCULLPARAMETERFVEXTPROC) (GLenum pname, GLfloat *params);
3477# 7967 "../../include/GL/glext.h"
3478__attribute__((visibility("default"))) void glFragmentColorMaterialSGIX (GLenum face, GLenum mode);
3479__attribute__((visibility("default"))) void glFragmentLightfSGIX (GLenum light, GLenum pname, GLfloat param);
3480__attribute__((visibility("default"))) void glFragmentLightfvSGIX (GLenum light, GLenum pname, const GLfloat *params);
3481__attribute__((visibility("default"))) void glFragmentLightiSGIX (GLenum light, GLenum pname, GLint param);
3482__attribute__((visibility("default"))) void glFragmentLightivSGIX (GLenum light, GLenum pname, const GLint *params);
3483__attribute__((visibility("default"))) void glFragmentLightModelfSGIX (GLenum pname, GLfloat param);
3484__attribute__((visibility("default"))) void glFragmentLightModelfvSGIX (GLenum pname, const GLfloat *params);
3485__attribute__((visibility("default"))) void glFragmentLightModeliSGIX (GLenum pname, GLint param);
3486__attribute__((visibility("default"))) void glFragmentLightModelivSGIX (GLenum pname, const GLint *params);
3487__attribute__((visibility("default"))) void glFragmentMaterialfSGIX (GLenum face, GLenum pname, GLfloat param);
3488__attribute__((visibility("default"))) void glFragmentMaterialfvSGIX (GLenum face, GLenum pname, const GLfloat *params);
3489__attribute__((visibility("default"))) void glFragmentMaterialiSGIX (GLenum face, GLenum pname, GLint param);
3490__attribute__((visibility("default"))) void glFragmentMaterialivSGIX (GLenum face, GLenum pname, const GLint *params);
3491__attribute__((visibility("default"))) void glGetFragmentLightfvSGIX (GLenum light, GLenum pname, GLfloat *params);
3492__attribute__((visibility("default"))) void glGetFragmentLightivSGIX (GLenum light, GLenum pname, GLint *params);
3493__attribute__((visibility("default"))) void glGetFragmentMaterialfvSGIX (GLenum face, GLenum pname, GLfloat *params);
3494__attribute__((visibility("default"))) void glGetFragmentMaterialivSGIX (GLenum face, GLenum pname, GLint *params);
3495__attribute__((visibility("default"))) void glLightEnviSGIX (GLenum pname, GLint param);
3496
3497typedef void ( * PFNGLFRAGMENTCOLORMATERIALSGIXPROC) (GLenum face, GLenum mode);
3498typedef void ( * PFNGLFRAGMENTLIGHTFSGIXPROC) (GLenum light, GLenum pname, GLfloat param);
3499typedef void ( * PFNGLFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, const GLfloat *params);
3500typedef void ( * PFNGLFRAGMENTLIGHTISGIXPROC) (GLenum light, GLenum pname, GLint param);
3501typedef void ( * PFNGLFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, const GLint *params);
3502typedef void ( * PFNGLFRAGMENTLIGHTMODELFSGIXPROC) (GLenum pname, GLfloat param);
3503typedef void ( * PFNGLFRAGMENTLIGHTMODELFVSGIXPROC) (GLenum pname, const GLfloat *params);
3504typedef void ( * PFNGLFRAGMENTLIGHTMODELISGIXPROC) (GLenum pname, GLint param);
3505typedef void ( * PFNGLFRAGMENTLIGHTMODELIVSGIXPROC) (GLenum pname, const GLint *params);
3506typedef void ( * PFNGLFRAGMENTMATERIALFSGIXPROC) (GLenum face, GLenum pname, GLfloat param);
3507typedef void ( * PFNGLFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat *params);
3508typedef void ( * PFNGLFRAGMENTMATERIALISGIXPROC) (GLenum face, GLenum pname, GLint param);
3509typedef void ( * PFNGLFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint *params);
3510typedef void ( * PFNGLGETFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLfloat *params);
3511typedef void ( * PFNGLGETFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, GLint *params);
3512typedef void ( * PFNGLGETFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, GLfloat *params);
3513typedef void ( * PFNGLGETFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, GLint *params);
3514typedef void ( * PFNGLLIGHTENVISGIXPROC) (GLenum pname, GLint param);
3515# 8017 "../../include/GL/glext.h"
3516__attribute__((visibility("default"))) void glDrawRangeElementsEXT (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
3517
3518typedef void ( * PFNGLDRAWRANGEELEMENTSEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);
3519# 8033 "../../include/GL/glext.h"
3520__attribute__((visibility("default"))) void glApplyTextureEXT (GLenum mode);
3521__attribute__((visibility("default"))) void glTextureLightEXT (GLenum pname);
3522__attribute__((visibility("default"))) void glTextureMaterialEXT (GLenum face, GLenum mode);
3523
3524typedef void ( * PFNGLAPPLYTEXTUREEXTPROC) (GLenum mode);
3525typedef void ( * PFNGLTEXTURELIGHTEXTPROC) (GLenum pname);
3526typedef void ( * PFNGLTEXTUREMATERIALEXTPROC) (GLenum face, GLenum mode);
3527# 8053 "../../include/GL/glext.h"
3528__attribute__((visibility("default"))) void glAsyncMarkerSGIX (GLuint marker);
3529__attribute__((visibility("default"))) GLint glFinishAsyncSGIX (GLuint *markerp);
3530__attribute__((visibility("default"))) GLint glPollAsyncSGIX (GLuint *markerp);
3531__attribute__((visibility("default"))) GLuint glGenAsyncMarkersSGIX (GLsizei range);
3532__attribute__((visibility("default"))) void glDeleteAsyncMarkersSGIX (GLuint marker, GLsizei range);
3533__attribute__((visibility("default"))) GLboolean glIsAsyncMarkerSGIX (GLuint marker);
3534
3535typedef void ( * PFNGLASYNCMARKERSGIXPROC) (GLuint marker);
3536typedef GLint ( * PFNGLFINISHASYNCSGIXPROC) (GLuint *markerp);
3537typedef GLint ( * PFNGLPOLLASYNCSGIXPROC) (GLuint *markerp);
3538typedef GLuint ( * PFNGLGENASYNCMARKERSSGIXPROC) (GLsizei range);
3539typedef void ( * PFNGLDELETEASYNCMARKERSSGIXPROC) (GLuint marker, GLsizei range);
3540typedef GLboolean ( * PFNGLISASYNCMARKERSGIXPROC) (GLuint marker);
3541# 8079 "../../include/GL/glext.h"
3542__attribute__((visibility("default"))) void glVertexPointervINTEL (GLint size, GLenum type, const GLvoid* *pointer);
3543__attribute__((visibility("default"))) void glNormalPointervINTEL (GLenum type, const GLvoid* *pointer);
3544__attribute__((visibility("default"))) void glColorPointervINTEL (GLint size, GLenum type, const GLvoid* *pointer);
3545__attribute__((visibility("default"))) void glTexCoordPointervINTEL (GLint size, GLenum type, const GLvoid* *pointer);
3546
3547typedef void ( * PFNGLVERTEXPOINTERVINTELPROC) (GLint size, GLenum type, const GLvoid* *pointer);
3548typedef void ( * PFNGLNORMALPOINTERVINTELPROC) (GLenum type, const GLvoid* *pointer);
3549typedef void ( * PFNGLCOLORPOINTERVINTELPROC) (GLint size, GLenum type, const GLvoid* *pointer);
3550typedef void ( * PFNGLTEXCOORDPOINTERVINTELPROC) (GLint size, GLenum type, const GLvoid* *pointer);
3551# 8097 "../../include/GL/glext.h"
3552__attribute__((visibility("default"))) void glPixelTransformParameteriEXT (GLenum target, GLenum pname, GLint param);
3553__attribute__((visibility("default"))) void glPixelTransformParameterfEXT (GLenum target, GLenum pname, GLfloat param);
3554__attribute__((visibility("default"))) void glPixelTransformParameterivEXT (GLenum target, GLenum pname, const GLint *params);
3555__attribute__((visibility("default"))) void glPixelTransformParameterfvEXT (GLenum target, GLenum pname, const GLfloat *params);
3556
3557typedef void ( * PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint param);
3558typedef void ( * PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat param);
3559typedef void ( * PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);
3560typedef void ( * PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat *params);
3561# 8123 "../../include/GL/glext.h"
3562__attribute__((visibility("default"))) void glSecondaryColor3bEXT (GLbyte red, GLbyte green, GLbyte blue);
3563__attribute__((visibility("default"))) void glSecondaryColor3bvEXT (const GLbyte *v);
3564__attribute__((visibility("default"))) void glSecondaryColor3dEXT (GLdouble red, GLdouble green, GLdouble blue);
3565__attribute__((visibility("default"))) void glSecondaryColor3dvEXT (const GLdouble *v);
3566__attribute__((visibility("default"))) void glSecondaryColor3fEXT (GLfloat red, GLfloat green, GLfloat blue);
3567__attribute__((visibility("default"))) void glSecondaryColor3fvEXT (const GLfloat *v);
3568__attribute__((visibility("default"))) void glSecondaryColor3iEXT (GLint red, GLint green, GLint blue);
3569__attribute__((visibility("default"))) void glSecondaryColor3ivEXT (const GLint *v);
3570__attribute__((visibility("default"))) void glSecondaryColor3sEXT (GLshort red, GLshort green, GLshort blue);
3571__attribute__((visibility("default"))) void glSecondaryColor3svEXT (const GLshort *v);
3572__attribute__((visibility("default"))) void glSecondaryColor3ubEXT (GLubyte red, GLubyte green, GLubyte blue);
3573__attribute__((visibility("default"))) void glSecondaryColor3ubvEXT (const GLubyte *v);
3574__attribute__((visibility("default"))) void glSecondaryColor3uiEXT (GLuint red, GLuint green, GLuint blue);
3575__attribute__((visibility("default"))) void glSecondaryColor3uivEXT (const GLuint *v);
3576__attribute__((visibility("default"))) void glSecondaryColor3usEXT (GLushort red, GLushort green, GLushort blue);
3577__attribute__((visibility("default"))) void glSecondaryColor3usvEXT (const GLushort *v);
3578__attribute__((visibility("default"))) void glSecondaryColorPointerEXT (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
3579
3580typedef void ( * PFNGLSECONDARYCOLOR3BEXTPROC) (GLbyte red, GLbyte green, GLbyte blue);
3581typedef void ( * PFNGLSECONDARYCOLOR3BVEXTPROC) (const GLbyte *v);
3582typedef void ( * PFNGLSECONDARYCOLOR3DEXTPROC) (GLdouble red, GLdouble green, GLdouble blue);
3583typedef void ( * PFNGLSECONDARYCOLOR3DVEXTPROC) (const GLdouble *v);
3584typedef void ( * PFNGLSECONDARYCOLOR3FEXTPROC) (GLfloat red, GLfloat green, GLfloat blue);
3585typedef void ( * PFNGLSECONDARYCOLOR3FVEXTPROC) (const GLfloat *v);
3586typedef void ( * PFNGLSECONDARYCOLOR3IEXTPROC) (GLint red, GLint green, GLint blue);
3587typedef void ( * PFNGLSECONDARYCOLOR3IVEXTPROC) (const GLint *v);
3588typedef void ( * PFNGLSECONDARYCOLOR3SEXTPROC) (GLshort red, GLshort green, GLshort blue);
3589typedef void ( * PFNGLSECONDARYCOLOR3SVEXTPROC) (const GLshort *v);
3590typedef void ( * PFNGLSECONDARYCOLOR3UBEXTPROC) (GLubyte red, GLubyte green, GLubyte blue);
3591typedef void ( * PFNGLSECONDARYCOLOR3UBVEXTPROC) (const GLubyte *v);
3592typedef void ( * PFNGLSECONDARYCOLOR3UIEXTPROC) (GLuint red, GLuint green, GLuint blue);
3593typedef void ( * PFNGLSECONDARYCOLOR3UIVEXTPROC) (const GLuint *v);
3594typedef void ( * PFNGLSECONDARYCOLOR3USEXTPROC) (GLushort red, GLushort green, GLushort blue);
3595typedef void ( * PFNGLSECONDARYCOLOR3USVEXTPROC) (const GLushort *v);
3596typedef void ( * PFNGLSECONDARYCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
3597
3598
3599
3600
3601
3602__attribute__((visibility("default"))) void glTextureNormalEXT (GLenum mode);
3603
3604typedef void ( * PFNGLTEXTURENORMALEXTPROC) (GLenum mode);
3605
3606
3607
3608
3609
3610__attribute__((visibility("default"))) void glMultiDrawArraysEXT (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
3611__attribute__((visibility("default"))) void glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
3612
3613typedef void ( * PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
3614typedef void ( * PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
3615
3616
3617
3618
3619
3620__attribute__((visibility("default"))) void glFogCoordfEXT (GLfloat coord);
3621__attribute__((visibility("default"))) void glFogCoordfvEXT (const GLfloat *coord);
3622__attribute__((visibility("default"))) void glFogCoorddEXT (GLdouble coord);
3623__attribute__((visibility("default"))) void glFogCoorddvEXT (const GLdouble *coord);
3624__attribute__((visibility("default"))) void glFogCoordPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer);
3625
3626typedef void ( * PFNGLFOGCOORDFEXTPROC) (GLfloat coord);
3627typedef void ( * PFNGLFOGCOORDFVEXTPROC) (const GLfloat *coord);
3628typedef void ( * PFNGLFOGCOORDDEXTPROC) (GLdouble coord);
3629typedef void ( * PFNGLFOGCOORDDVEXTPROC) (const GLdouble *coord);
3630typedef void ( * PFNGLFOGCOORDPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
3631# 8201 "../../include/GL/glext.h"
3632__attribute__((visibility("default"))) void glTangent3bEXT (GLbyte tx, GLbyte ty, GLbyte tz);
3633__attribute__((visibility("default"))) void glTangent3bvEXT (const GLbyte *v);
3634__attribute__((visibility("default"))) void glTangent3dEXT (GLdouble tx, GLdouble ty, GLdouble tz);
3635__attribute__((visibility("default"))) void glTangent3dvEXT (const GLdouble *v);
3636__attribute__((visibility("default"))) void glTangent3fEXT (GLfloat tx, GLfloat ty, GLfloat tz);
3637__attribute__((visibility("default"))) void glTangent3fvEXT (const GLfloat *v);
3638__attribute__((visibility("default"))) void glTangent3iEXT (GLint tx, GLint ty, GLint tz);
3639__attribute__((visibility("default"))) void glTangent3ivEXT (const GLint *v);
3640__attribute__((visibility("default"))) void glTangent3sEXT (GLshort tx, GLshort ty, GLshort tz);
3641__attribute__((visibility("default"))) void glTangent3svEXT (const GLshort *v);
3642__attribute__((visibility("default"))) void glBinormal3bEXT (GLbyte bx, GLbyte by, GLbyte bz);
3643__attribute__((visibility("default"))) void glBinormal3bvEXT (const GLbyte *v);
3644__attribute__((visibility("default"))) void glBinormal3dEXT (GLdouble bx, GLdouble by, GLdouble bz);
3645__attribute__((visibility("default"))) void glBinormal3dvEXT (const GLdouble *v);
3646__attribute__((visibility("default"))) void glBinormal3fEXT (GLfloat bx, GLfloat by, GLfloat bz);
3647__attribute__((visibility("default"))) void glBinormal3fvEXT (const GLfloat *v);
3648__attribute__((visibility("default"))) void glBinormal3iEXT (GLint bx, GLint by, GLint bz);
3649__attribute__((visibility("default"))) void glBinormal3ivEXT (const GLint *v);
3650__attribute__((visibility("default"))) void glBinormal3sEXT (GLshort bx, GLshort by, GLshort bz);
3651__attribute__((visibility("default"))) void glBinormal3svEXT (const GLshort *v);
3652__attribute__((visibility("default"))) void glTangentPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer);
3653__attribute__((visibility("default"))) void glBinormalPointerEXT (GLenum type, GLsizei stride, const GLvoid *pointer);
3654
3655typedef void ( * PFNGLTANGENT3BEXTPROC) (GLbyte tx, GLbyte ty, GLbyte tz);
3656typedef void ( * PFNGLTANGENT3BVEXTPROC) (const GLbyte *v);
3657typedef void ( * PFNGLTANGENT3DEXTPROC) (GLdouble tx, GLdouble ty, GLdouble tz);
3658typedef void ( * PFNGLTANGENT3DVEXTPROC) (const GLdouble *v);
3659typedef void ( * PFNGLTANGENT3FEXTPROC) (GLfloat tx, GLfloat ty, GLfloat tz);
3660typedef void ( * PFNGLTANGENT3FVEXTPROC) (const GLfloat *v);
3661typedef void ( * PFNGLTANGENT3IEXTPROC) (GLint tx, GLint ty, GLint tz);
3662typedef void ( * PFNGLTANGENT3IVEXTPROC) (const GLint *v);
3663typedef void ( * PFNGLTANGENT3SEXTPROC) (GLshort tx, GLshort ty, GLshort tz);
3664typedef void ( * PFNGLTANGENT3SVEXTPROC) (const GLshort *v);
3665typedef void ( * PFNGLBINORMAL3BEXTPROC) (GLbyte bx, GLbyte by, GLbyte bz);
3666typedef void ( * PFNGLBINORMAL3BVEXTPROC) (const GLbyte *v);
3667typedef void ( * PFNGLBINORMAL3DEXTPROC) (GLdouble bx, GLdouble by, GLdouble bz);
3668typedef void ( * PFNGLBINORMAL3DVEXTPROC) (const GLdouble *v);
3669typedef void ( * PFNGLBINORMAL3FEXTPROC) (GLfloat bx, GLfloat by, GLfloat bz);
3670typedef void ( * PFNGLBINORMAL3FVEXTPROC) (const GLfloat *v);
3671typedef void ( * PFNGLBINORMAL3IEXTPROC) (GLint bx, GLint by, GLint bz);
3672typedef void ( * PFNGLBINORMAL3IVEXTPROC) (const GLint *v);
3673typedef void ( * PFNGLBINORMAL3SEXTPROC) (GLshort bx, GLshort by, GLshort bz);
3674typedef void ( * PFNGLBINORMAL3SVEXTPROC) (const GLshort *v);
3675typedef void ( * PFNGLTANGENTPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
3676typedef void ( * PFNGLBINORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);
3677# 8267 "../../include/GL/glext.h"
3678__attribute__((visibility("default"))) void glFinishTextureSUNX (void);
3679
3680typedef void ( * PFNGLFINISHTEXTURESUNXPROC) (void);
3681
3682
3683
3684
3685
3686__attribute__((visibility("default"))) void glGlobalAlphaFactorbSUN (GLbyte factor);
3687__attribute__((visibility("default"))) void glGlobalAlphaFactorsSUN (GLshort factor);
3688__attribute__((visibility("default"))) void glGlobalAlphaFactoriSUN (GLint factor);
3689__attribute__((visibility("default"))) void glGlobalAlphaFactorfSUN (GLfloat factor);
3690__attribute__((visibility("default"))) void glGlobalAlphaFactordSUN (GLdouble factor);
3691__attribute__((visibility("default"))) void glGlobalAlphaFactorubSUN (GLubyte factor);
3692__attribute__((visibility("default"))) void glGlobalAlphaFactorusSUN (GLushort factor);
3693__attribute__((visibility("default"))) void glGlobalAlphaFactoruiSUN (GLuint factor);
3694
3695typedef void ( * PFNGLGLOBALALPHAFACTORBSUNPROC) (GLbyte factor);
3696typedef void ( * PFNGLGLOBALALPHAFACTORSSUNPROC) (GLshort factor);
3697typedef void ( * PFNGLGLOBALALPHAFACTORISUNPROC) (GLint factor);
3698typedef void ( * PFNGLGLOBALALPHAFACTORFSUNPROC) (GLfloat factor);
3699typedef void ( * PFNGLGLOBALALPHAFACTORDSUNPROC) (GLdouble factor);
3700typedef void ( * PFNGLGLOBALALPHAFACTORUBSUNPROC) (GLubyte factor);
3701typedef void ( * PFNGLGLOBALALPHAFACTORUSSUNPROC) (GLushort factor);
3702typedef void ( * PFNGLGLOBALALPHAFACTORUISUNPROC) (GLuint factor);
3703
3704
3705
3706
3707
3708__attribute__((visibility("default"))) void glReplacementCodeuiSUN (GLuint code);
3709__attribute__((visibility("default"))) void glReplacementCodeusSUN (GLushort code);
3710__attribute__((visibility("default"))) void glReplacementCodeubSUN (GLubyte code);
3711__attribute__((visibility("default"))) void glReplacementCodeuivSUN (const GLuint *code);
3712__attribute__((visibility("default"))) void glReplacementCodeusvSUN (const GLushort *code);
3713__attribute__((visibility("default"))) void glReplacementCodeubvSUN (const GLubyte *code);
3714__attribute__((visibility("default"))) void glReplacementCodePointerSUN (GLenum type, GLsizei stride, const GLvoid* *pointer);
3715
3716typedef void ( * PFNGLREPLACEMENTCODEUISUNPROC) (GLuint code);
3717typedef void ( * PFNGLREPLACEMENTCODEUSSUNPROC) (GLushort code);
3718typedef void ( * PFNGLREPLACEMENTCODEUBSUNPROC) (GLubyte code);
3719typedef void ( * PFNGLREPLACEMENTCODEUIVSUNPROC) (const GLuint *code);
3720typedef void ( * PFNGLREPLACEMENTCODEUSVSUNPROC) (const GLushort *code);
3721typedef void ( * PFNGLREPLACEMENTCODEUBVSUNPROC) (const GLubyte *code);
3722typedef void ( * PFNGLREPLACEMENTCODEPOINTERSUNPROC) (GLenum type, GLsizei stride, const GLvoid* *pointer);
3723
3724
3725
3726
3727
3728__attribute__((visibility("default"))) void glColor4ubVertex2fSUN (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y);
3729__attribute__((visibility("default"))) void glColor4ubVertex2fvSUN (const GLubyte *c, const GLfloat *v);
3730__attribute__((visibility("default"))) void glColor4ubVertex3fSUN (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
3731__attribute__((visibility("default"))) void glColor4ubVertex3fvSUN (const GLubyte *c, const GLfloat *v);
3732__attribute__((visibility("default"))) void glColor3fVertex3fSUN (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
3733__attribute__((visibility("default"))) void glColor3fVertex3fvSUN (const GLfloat *c, const GLfloat *v);
3734__attribute__((visibility("default"))) void glNormal3fVertex3fSUN (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3735__attribute__((visibility("default"))) void glNormal3fVertex3fvSUN (const GLfloat *n, const GLfloat *v);
3736__attribute__((visibility("default"))) void glColor4fNormal3fVertex3fSUN (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3737__attribute__((visibility("default"))) void glColor4fNormal3fVertex3fvSUN (const GLfloat *c, const GLfloat *n, const GLfloat *v);
3738__attribute__((visibility("default"))) void glTexCoord2fVertex3fSUN (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
3739__attribute__((visibility("default"))) void glTexCoord2fVertex3fvSUN (const GLfloat *tc, const GLfloat *v);
3740__attribute__((visibility("default"))) void glTexCoord4fVertex4fSUN (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3741__attribute__((visibility("default"))) void glTexCoord4fVertex4fvSUN (const GLfloat *tc, const GLfloat *v);
3742__attribute__((visibility("default"))) void glTexCoord2fColor4ubVertex3fSUN (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
3743__attribute__((visibility("default"))) void glTexCoord2fColor4ubVertex3fvSUN (const GLfloat *tc, const GLubyte *c, const GLfloat *v);
3744__attribute__((visibility("default"))) void glTexCoord2fColor3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
3745__attribute__((visibility("default"))) void glTexCoord2fColor3fVertex3fvSUN (const GLfloat *tc, const GLfloat *c, const GLfloat *v);
3746__attribute__((visibility("default"))) void glTexCoord2fNormal3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3747__attribute__((visibility("default"))) void glTexCoord2fNormal3fVertex3fvSUN (const GLfloat *tc, const GLfloat *n, const GLfloat *v);
3748__attribute__((visibility("default"))) void glTexCoord2fColor4fNormal3fVertex3fSUN (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3749__attribute__((visibility("default"))) void glTexCoord2fColor4fNormal3fVertex3fvSUN (const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3750__attribute__((visibility("default"))) void glTexCoord4fColor4fNormal3fVertex4fSUN (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3751__attribute__((visibility("default"))) void glTexCoord4fColor4fNormal3fVertex4fvSUN (const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3752__attribute__((visibility("default"))) void glReplacementCodeuiVertex3fSUN (GLuint rc, GLfloat x, GLfloat y, GLfloat z);
3753__attribute__((visibility("default"))) void glReplacementCodeuiVertex3fvSUN (const GLuint *rc, const GLfloat *v);
3754__attribute__((visibility("default"))) void glReplacementCodeuiColor4ubVertex3fSUN (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
3755__attribute__((visibility("default"))) void glReplacementCodeuiColor4ubVertex3fvSUN (const GLuint *rc, const GLubyte *c, const GLfloat *v);
3756__attribute__((visibility("default"))) void glReplacementCodeuiColor3fVertex3fSUN (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
3757__attribute__((visibility("default"))) void glReplacementCodeuiColor3fVertex3fvSUN (const GLuint *rc, const GLfloat *c, const GLfloat *v);
3758__attribute__((visibility("default"))) void glReplacementCodeuiNormal3fVertex3fSUN (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3759__attribute__((visibility("default"))) void glReplacementCodeuiNormal3fVertex3fvSUN (const GLuint *rc, const GLfloat *n, const GLfloat *v);
3760__attribute__((visibility("default"))) void glReplacementCodeuiColor4fNormal3fVertex3fSUN (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3761__attribute__((visibility("default"))) void glReplacementCodeuiColor4fNormal3fVertex3fvSUN (const GLuint *rc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3762__attribute__((visibility("default"))) void glReplacementCodeuiTexCoord2fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
3763__attribute__((visibility("default"))) void glReplacementCodeuiTexCoord2fVertex3fvSUN (const GLuint *rc, const GLfloat *tc, const GLfloat *v);
3764__attribute__((visibility("default"))) void glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3765__attribute__((visibility("default"))) void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN (const GLuint *rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v);
3766__attribute__((visibility("default"))) void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3767__attribute__((visibility("default"))) void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN (const GLuint *rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3768
3769typedef void ( * PFNGLCOLOR4UBVERTEX2FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y);
3770typedef void ( * PFNGLCOLOR4UBVERTEX2FVSUNPROC) (const GLubyte *c, const GLfloat *v);
3771typedef void ( * PFNGLCOLOR4UBVERTEX3FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
3772typedef void ( * PFNGLCOLOR4UBVERTEX3FVSUNPROC) (const GLubyte *c, const GLfloat *v);
3773typedef void ( * PFNGLCOLOR3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
3774typedef void ( * PFNGLCOLOR3FVERTEX3FVSUNPROC) (const GLfloat *c, const GLfloat *v);
3775typedef void ( * PFNGLNORMAL3FVERTEX3FSUNPROC) (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3776typedef void ( * PFNGLNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *n, const GLfloat *v);
3777typedef void ( * PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3778typedef void ( * PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *c, const GLfloat *n, const GLfloat *v);
3779typedef void ( * PFNGLTEXCOORD2FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
3780typedef void ( * PFNGLTEXCOORD2FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *v);
3781typedef void ( * PFNGLTEXCOORD4FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3782typedef void ( * PFNGLTEXCOORD4FVERTEX4FVSUNPROC) (const GLfloat *tc, const GLfloat *v);
3783typedef void ( * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
3784typedef void ( * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC) (const GLfloat *tc, const GLubyte *c, const GLfloat *v);
3785typedef void ( * PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
3786typedef void ( * PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *c, const GLfloat *v);
3787typedef void ( * PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3788typedef void ( * PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *n, const GLfloat *v);
3789typedef void ( * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3790typedef void ( * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3791typedef void ( * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3792typedef void ( * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC) (const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3793typedef void ( * PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC) (GLuint rc, GLfloat x, GLfloat y, GLfloat z);
3794typedef void ( * PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *v);
3795typedef void ( * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC) (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);
3796typedef void ( * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC) (const GLuint *rc, const GLubyte *c, const GLfloat *v);
3797typedef void ( * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);
3798typedef void ( * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *c, const GLfloat *v);
3799typedef void ( * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3800typedef void ( * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *n, const GLfloat *v);
3801typedef void ( * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3802typedef void ( * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3803typedef void ( * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);
3804typedef void ( * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *tc, const GLfloat *v);
3805typedef void ( * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3806typedef void ( * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v);
3807typedef void ( * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);
3808typedef void ( * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint *rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);
3809
3810
3811
3812
3813
3814__attribute__((visibility("default"))) void glBlendFuncSeparateEXT (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
3815
3816typedef void ( * PFNGLBLENDFUNCSEPARATEEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
3817
3818
3819
3820
3821
3822__attribute__((visibility("default"))) void glBlendFuncSeparateINGR (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
3823
3824typedef void ( * PFNGLBLENDFUNCSEPARATEINGRPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
3825# 8455 "../../include/GL/glext.h"
3826__attribute__((visibility("default"))) void glVertexWeightfEXT (GLfloat weight);
3827__attribute__((visibility("default"))) void glVertexWeightfvEXT (const GLfloat *weight);
3828__attribute__((visibility("default"))) void glVertexWeightPointerEXT (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer);
3829
3830typedef void ( * PFNGLVERTEXWEIGHTFEXTPROC) (GLfloat weight);
3831typedef void ( * PFNGLVERTEXWEIGHTFVEXTPROC) (const GLfloat *weight);
3832typedef void ( * PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLsizei size, GLenum type, GLsizei stride, const GLvoid *pointer);
3833# 8471 "../../include/GL/glext.h"
3834__attribute__((visibility("default"))) void glFlushVertexArrayRangeNV (void);
3835__attribute__((visibility("default"))) void glVertexArrayRangeNV (GLsizei length, const GLvoid *pointer);
3836
3837typedef void ( * PFNGLFLUSHVERTEXARRAYRANGENVPROC) (void);
3838typedef void ( * PFNGLVERTEXARRAYRANGENVPROC) (GLsizei length, const GLvoid *pointer);
3839
3840
3841
3842
3843
3844__attribute__((visibility("default"))) void glCombinerParameterfvNV (GLenum pname, const GLfloat *params);
3845__attribute__((visibility("default"))) void glCombinerParameterfNV (GLenum pname, GLfloat param);
3846__attribute__((visibility("default"))) void glCombinerParameterivNV (GLenum pname, const GLint *params);
3847__attribute__((visibility("default"))) void glCombinerParameteriNV (GLenum pname, GLint param);
3848__attribute__((visibility("default"))) void glCombinerInputNV (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
3849__attribute__((visibility("default"))) void glCombinerOutputNV (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
3850__attribute__((visibility("default"))) void glFinalCombinerInputNV (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
3851__attribute__((visibility("default"))) void glGetCombinerInputParameterfvNV (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params);
3852__attribute__((visibility("default"))) void glGetCombinerInputParameterivNV (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params);
3853__attribute__((visibility("default"))) void glGetCombinerOutputParameterfvNV (GLenum stage, GLenum portion, GLenum pname, GLfloat *params);
3854__attribute__((visibility("default"))) void glGetCombinerOutputParameterivNV (GLenum stage, GLenum portion, GLenum pname, GLint *params);
3855__attribute__((visibility("default"))) void glGetFinalCombinerInputParameterfvNV (GLenum variable, GLenum pname, GLfloat *params);
3856__attribute__((visibility("default"))) void glGetFinalCombinerInputParameterivNV (GLenum variable, GLenum pname, GLint *params);
3857
3858typedef void ( * PFNGLCOMBINERPARAMETERFVNVPROC) (GLenum pname, const GLfloat *params);
3859typedef void ( * PFNGLCOMBINERPARAMETERFNVPROC) (GLenum pname, GLfloat param);
3860typedef void ( * PFNGLCOMBINERPARAMETERIVNVPROC) (GLenum pname, const GLint *params);
3861typedef void ( * PFNGLCOMBINERPARAMETERINVPROC) (GLenum pname, GLint param);
3862typedef void ( * PFNGLCOMBINERINPUTNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
3863typedef void ( * PFNGLCOMBINEROUTPUTNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);
3864typedef void ( * PFNGLFINALCOMBINERINPUTNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);
3865typedef void ( * PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat *params);
3866typedef void ( * PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint *params);
3867typedef void ( * PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat *params);
3868typedef void ( * PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint *params);
3869typedef void ( * PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC) (GLenum variable, GLenum pname, GLfloat *params);
3870typedef void ( * PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC) (GLenum variable, GLenum pname, GLint *params);
3871# 8529 "../../include/GL/glext.h"
3872__attribute__((visibility("default"))) void glResizeBuffersMESA (void);
3873
3874typedef void ( * PFNGLRESIZEBUFFERSMESAPROC) (void);
3875
3876
3877
3878
3879
3880__attribute__((visibility("default"))) void glWindowPos2dMESA (GLdouble x, GLdouble y);
3881__attribute__((visibility("default"))) void glWindowPos2dvMESA (const GLdouble *v);
3882__attribute__((visibility("default"))) void glWindowPos2fMESA (GLfloat x, GLfloat y);
3883__attribute__((visibility("default"))) void glWindowPos2fvMESA (const GLfloat *v);
3884__attribute__((visibility("default"))) void glWindowPos2iMESA (GLint x, GLint y);
3885__attribute__((visibility("default"))) void glWindowPos2ivMESA (const GLint *v);
3886__attribute__((visibility("default"))) void glWindowPos2sMESA (GLshort x, GLshort y);
3887__attribute__((visibility("default"))) void glWindowPos2svMESA (const GLshort *v);
3888__attribute__((visibility("default"))) void glWindowPos3dMESA (GLdouble x, GLdouble y, GLdouble z);
3889__attribute__((visibility("default"))) void glWindowPos3dvMESA (const GLdouble *v);
3890__attribute__((visibility("default"))) void glWindowPos3fMESA (GLfloat x, GLfloat y, GLfloat z);
3891__attribute__((visibility("default"))) void glWindowPos3fvMESA (const GLfloat *v);
3892__attribute__((visibility("default"))) void glWindowPos3iMESA (GLint x, GLint y, GLint z);
3893__attribute__((visibility("default"))) void glWindowPos3ivMESA (const GLint *v);
3894__attribute__((visibility("default"))) void glWindowPos3sMESA (GLshort x, GLshort y, GLshort z);
3895__attribute__((visibility("default"))) void glWindowPos3svMESA (const GLshort *v);
3896__attribute__((visibility("default"))) void glWindowPos4dMESA (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
3897__attribute__((visibility("default"))) void glWindowPos4dvMESA (const GLdouble *v);
3898__attribute__((visibility("default"))) void glWindowPos4fMESA (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3899__attribute__((visibility("default"))) void glWindowPos4fvMESA (const GLfloat *v);
3900__attribute__((visibility("default"))) void glWindowPos4iMESA (GLint x, GLint y, GLint z, GLint w);
3901__attribute__((visibility("default"))) void glWindowPos4ivMESA (const GLint *v);
3902__attribute__((visibility("default"))) void glWindowPos4sMESA (GLshort x, GLshort y, GLshort z, GLshort w);
3903__attribute__((visibility("default"))) void glWindowPos4svMESA (const GLshort *v);
3904
3905typedef void ( * PFNGLWINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y);
3906typedef void ( * PFNGLWINDOWPOS2DVMESAPROC) (const GLdouble *v);
3907typedef void ( * PFNGLWINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y);
3908typedef void ( * PFNGLWINDOWPOS2FVMESAPROC) (const GLfloat *v);
3909typedef void ( * PFNGLWINDOWPOS2IMESAPROC) (GLint x, GLint y);
3910typedef void ( * PFNGLWINDOWPOS2IVMESAPROC) (const GLint *v);
3911typedef void ( * PFNGLWINDOWPOS2SMESAPROC) (GLshort x, GLshort y);
3912typedef void ( * PFNGLWINDOWPOS2SVMESAPROC) (const GLshort *v);
3913typedef void ( * PFNGLWINDOWPOS3DMESAPROC) (GLdouble x, GLdouble y, GLdouble z);
3914typedef void ( * PFNGLWINDOWPOS3DVMESAPROC) (const GLdouble *v);
3915typedef void ( * PFNGLWINDOWPOS3FMESAPROC) (GLfloat x, GLfloat y, GLfloat z);
3916typedef void ( * PFNGLWINDOWPOS3FVMESAPROC) (const GLfloat *v);
3917typedef void ( * PFNGLWINDOWPOS3IMESAPROC) (GLint x, GLint y, GLint z);
3918typedef void ( * PFNGLWINDOWPOS3IVMESAPROC) (const GLint *v);
3919typedef void ( * PFNGLWINDOWPOS3SMESAPROC) (GLshort x, GLshort y, GLshort z);
3920typedef void ( * PFNGLWINDOWPOS3SVMESAPROC) (const GLshort *v);
3921typedef void ( * PFNGLWINDOWPOS4DMESAPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble w);
3922typedef void ( * PFNGLWINDOWPOS4DVMESAPROC) (const GLdouble *v);
3923typedef void ( * PFNGLWINDOWPOS4FMESAPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w);
3924typedef void ( * PFNGLWINDOWPOS4FVMESAPROC) (const GLfloat *v);
3925typedef void ( * PFNGLWINDOWPOS4IMESAPROC) (GLint x, GLint y, GLint z, GLint w);
3926typedef void ( * PFNGLWINDOWPOS4IVMESAPROC) (const GLint *v);
3927typedef void ( * PFNGLWINDOWPOS4SMESAPROC) (GLshort x, GLshort y, GLshort z, GLshort w);
3928typedef void ( * PFNGLWINDOWPOS4SVMESAPROC) (const GLshort *v);
3929# 8595 "../../include/GL/glext.h"
3930__attribute__((visibility("default"))) void glMultiModeDrawArraysIBM (const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
3931__attribute__((visibility("default"))) void glMultiModeDrawElementsIBM (const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei primcount, GLint modestride);
3932
3933typedef void ( * PFNGLMULTIMODEDRAWARRAYSIBMPROC) (const GLenum *mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);
3934typedef void ( * PFNGLMULTIMODEDRAWELEMENTSIBMPROC) (const GLenum *mode, const GLsizei *count, GLenum type, const GLvoid* const *indices, GLsizei primcount, GLint modestride);
3935
3936
3937
3938
3939
3940__attribute__((visibility("default"))) void glColorPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3941__attribute__((visibility("default"))) void glSecondaryColorPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3942__attribute__((visibility("default"))) void glEdgeFlagPointerListIBM (GLint stride, const GLboolean* *pointer, GLint ptrstride);
3943__attribute__((visibility("default"))) void glFogCoordPointerListIBM (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3944__attribute__((visibility("default"))) void glIndexPointerListIBM (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3945__attribute__((visibility("default"))) void glNormalPointerListIBM (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3946__attribute__((visibility("default"))) void glTexCoordPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3947__attribute__((visibility("default"))) void glVertexPointerListIBM (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3948
3949typedef void ( * PFNGLCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3950typedef void ( * PFNGLSECONDARYCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3951typedef void ( * PFNGLEDGEFLAGPOINTERLISTIBMPROC) (GLint stride, const GLboolean* *pointer, GLint ptrstride);
3952typedef void ( * PFNGLFOGCOORDPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3953typedef void ( * PFNGLINDEXPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3954typedef void ( * PFNGLNORMALPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3955typedef void ( * PFNGLTEXCOORDPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3956typedef void ( * PFNGLVERTEXPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid* *pointer, GLint ptrstride);
3957# 8651 "../../include/GL/glext.h"
3958__attribute__((visibility("default"))) void glTbufferMask3DFX (GLuint mask);
3959
3960typedef void ( * PFNGLTBUFFERMASK3DFXPROC) (GLuint mask);
3961
3962
3963
3964
3965
3966__attribute__((visibility("default"))) void glSampleMaskEXT (GLclampf value, GLboolean invert);
3967__attribute__((visibility("default"))) void glSamplePatternEXT (GLenum pattern);
3968
3969typedef void ( * PFNGLSAMPLEMASKEXTPROC) (GLclampf value, GLboolean invert);
3970typedef void ( * PFNGLSAMPLEPATTERNEXTPROC) (GLenum pattern);
3971# 8685 "../../include/GL/glext.h"
3972__attribute__((visibility("default"))) void glTextureColorMaskSGIS (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
3973
3974typedef void ( * PFNGLTEXTURECOLORMASKSGISPROC) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
3975
3976
3977
3978
3979
3980__attribute__((visibility("default"))) void glIglooInterfaceSGIX (GLenum pname, const GLvoid *params);
3981
3982typedef void ( * PFNGLIGLOOINTERFACESGIXPROC) (GLenum pname, const GLvoid *params);
3983# 8709 "../../include/GL/glext.h"
3984__attribute__((visibility("default"))) void glDeleteFencesNV (GLsizei n, const GLuint *fences);
3985__attribute__((visibility("default"))) void glGenFencesNV (GLsizei n, GLuint *fences);
3986__attribute__((visibility("default"))) GLboolean glIsFenceNV (GLuint fence);
3987__attribute__((visibility("default"))) GLboolean glTestFenceNV (GLuint fence);
3988__attribute__((visibility("default"))) void glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
3989__attribute__((visibility("default"))) void glFinishFenceNV (GLuint fence);
3990__attribute__((visibility("default"))) void glSetFenceNV (GLuint fence, GLenum condition);
3991
3992typedef void ( * PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
3993typedef void ( * PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
3994typedef GLboolean ( * PFNGLISFENCENVPROC) (GLuint fence);
3995typedef GLboolean ( * PFNGLTESTFENCENVPROC) (GLuint fence);
3996typedef void ( * PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
3997typedef void ( * PFNGLFINISHFENCENVPROC) (GLuint fence);
3998typedef void ( * PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
3999
4000
4001
4002
4003
4004__attribute__((visibility("default"))) void glMapControlPointsNV (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points);
4005__attribute__((visibility("default"))) void glMapParameterivNV (GLenum target, GLenum pname, const GLint *params);
4006__attribute__((visibility("default"))) void glMapParameterfvNV (GLenum target, GLenum pname, const GLfloat *params);
4007__attribute__((visibility("default"))) void glGetMapControlPointsNV (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid *points);
4008__attribute__((visibility("default"))) void glGetMapParameterivNV (GLenum target, GLenum pname, GLint *params);
4009__attribute__((visibility("default"))) void glGetMapParameterfvNV (GLenum target, GLenum pname, GLfloat *params);
4010__attribute__((visibility("default"))) void glGetMapAttribParameterivNV (GLenum target, GLuint index, GLenum pname, GLint *params);
4011__attribute__((visibility("default"))) void glGetMapAttribParameterfvNV (GLenum target, GLuint index, GLenum pname, GLfloat *params);
4012__attribute__((visibility("default"))) void glEvalMapsNV (GLenum target, GLenum mode);
4013
4014typedef void ( * PFNGLMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const GLvoid *points);
4015typedef void ( * PFNGLMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, const GLint *params);
4016typedef void ( * PFNGLMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, const GLfloat *params);
4017typedef void ( * PFNGLGETMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, GLvoid *points);
4018typedef void ( * PFNGLGETMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, GLint *params);
4019typedef void ( * PFNGLGETMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, GLfloat *params);
4020typedef void ( * PFNGLGETMAPATTRIBPARAMETERIVNVPROC) (GLenum target, GLuint index, GLenum pname, GLint *params);
4021typedef void ( * PFNGLGETMAPATTRIBPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params);
4022typedef void ( * PFNGLEVALMAPSNVPROC) (GLenum target, GLenum mode);
4023# 8757 "../../include/GL/glext.h"
4024__attribute__((visibility("default"))) void glCombinerStageParameterfvNV (GLenum stage, GLenum pname, const GLfloat *params);
4025__attribute__((visibility("default"))) void glGetCombinerStageParameterfvNV (GLenum stage, GLenum pname, GLfloat *params);
4026
4027typedef void ( * PFNGLCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, const GLfloat *params);
4028typedef void ( * PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, GLfloat *params);
4029# 8787 "../../include/GL/glext.h"
4030__attribute__((visibility("default"))) GLboolean glAreProgramsResidentNV (GLsizei n, const GLuint *programs, GLboolean *residences);
4031__attribute__((visibility("default"))) void glBindProgramNV (GLenum target, GLuint id);
4032__attribute__((visibility("default"))) void glDeleteProgramsNV (GLsizei n, const GLuint *programs);
4033__attribute__((visibility("default"))) void glExecuteProgramNV (GLenum target, GLuint id, const GLfloat *params);
4034__attribute__((visibility("default"))) void glGenProgramsNV (GLsizei n, GLuint *programs);
4035__attribute__((visibility("default"))) void glGetProgramParameterdvNV (GLenum target, GLuint index, GLenum pname, GLdouble *params);
4036__attribute__((visibility("default"))) void glGetProgramParameterfvNV (GLenum target, GLuint index, GLenum pname, GLfloat *params);
4037__attribute__((visibility("default"))) void glGetProgramivNV (GLuint id, GLenum pname, GLint *params);
4038__attribute__((visibility("default"))) void glGetProgramStringNV (GLuint id, GLenum pname, GLubyte *program);
4039__attribute__((visibility("default"))) void glGetTrackMatrixivNV (GLenum target, GLuint address, GLenum pname, GLint *params);
4040__attribute__((visibility("default"))) void glGetVertexAttribdvNV (GLuint index, GLenum pname, GLdouble *params);
4041__attribute__((visibility("default"))) void glGetVertexAttribfvNV (GLuint index, GLenum pname, GLfloat *params);
4042__attribute__((visibility("default"))) void glGetVertexAttribivNV (GLuint index, GLenum pname, GLint *params);
4043__attribute__((visibility("default"))) void glGetVertexAttribPointervNV (GLuint index, GLenum pname, GLvoid* *pointer);
4044__attribute__((visibility("default"))) GLboolean glIsProgramNV (GLuint id);
4045__attribute__((visibility("default"))) void glLoadProgramNV (GLenum target, GLuint id, GLsizei len, const GLubyte *program);
4046__attribute__((visibility("default"))) void glProgramParameter4dNV (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4047__attribute__((visibility("default"))) void glProgramParameter4dvNV (GLenum target, GLuint index, const GLdouble *v);
4048__attribute__((visibility("default"))) void glProgramParameter4fNV (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4049__attribute__((visibility("default"))) void glProgramParameter4fvNV (GLenum target, GLuint index, const GLfloat *v);
4050__attribute__((visibility("default"))) void glProgramParameters4dvNV (GLenum target, GLuint index, GLsizei count, const GLdouble *v);
4051__attribute__((visibility("default"))) void glProgramParameters4fvNV (GLenum target, GLuint index, GLsizei count, const GLfloat *v);
4052__attribute__((visibility("default"))) void glRequestResidentProgramsNV (GLsizei n, const GLuint *programs);
4053__attribute__((visibility("default"))) void glTrackMatrixNV (GLenum target, GLuint address, GLenum matrix, GLenum transform);
4054__attribute__((visibility("default"))) void glVertexAttribPointerNV (GLuint index, GLint fsize, GLenum type, GLsizei stride, const GLvoid *pointer);
4055__attribute__((visibility("default"))) void glVertexAttrib1dNV (GLuint index, GLdouble x);
4056__attribute__((visibility("default"))) void glVertexAttrib1dvNV (GLuint index, const GLdouble *v);
4057__attribute__((visibility("default"))) void glVertexAttrib1fNV (GLuint index, GLfloat x);
4058__attribute__((visibility("default"))) void glVertexAttrib1fvNV (GLuint index, const GLfloat *v);
4059__attribute__((visibility("default"))) void glVertexAttrib1sNV (GLuint index, GLshort x);
4060__attribute__((visibility("default"))) void glVertexAttrib1svNV (GLuint index, const GLshort *v);
4061__attribute__((visibility("default"))) void glVertexAttrib2dNV (GLuint index, GLdouble x, GLdouble y);
4062__attribute__((visibility("default"))) void glVertexAttrib2dvNV (GLuint index, const GLdouble *v);
4063__attribute__((visibility("default"))) void glVertexAttrib2fNV (GLuint index, GLfloat x, GLfloat y);
4064__attribute__((visibility("default"))) void glVertexAttrib2fvNV (GLuint index, const GLfloat *v);
4065__attribute__((visibility("default"))) void glVertexAttrib2sNV (GLuint index, GLshort x, GLshort y);
4066__attribute__((visibility("default"))) void glVertexAttrib2svNV (GLuint index, const GLshort *v);
4067__attribute__((visibility("default"))) void glVertexAttrib3dNV (GLuint index, GLdouble x, GLdouble y, GLdouble z);
4068__attribute__((visibility("default"))) void glVertexAttrib3dvNV (GLuint index, const GLdouble *v);
4069__attribute__((visibility("default"))) void glVertexAttrib3fNV (GLuint index, GLfloat x, GLfloat y, GLfloat z);
4070__attribute__((visibility("default"))) void glVertexAttrib3fvNV (GLuint index, const GLfloat *v);
4071__attribute__((visibility("default"))) void glVertexAttrib3sNV (GLuint index, GLshort x, GLshort y, GLshort z);
4072__attribute__((visibility("default"))) void glVertexAttrib3svNV (GLuint index, const GLshort *v);
4073__attribute__((visibility("default"))) void glVertexAttrib4dNV (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4074__attribute__((visibility("default"))) void glVertexAttrib4dvNV (GLuint index, const GLdouble *v);
4075__attribute__((visibility("default"))) void glVertexAttrib4fNV (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4076__attribute__((visibility("default"))) void glVertexAttrib4fvNV (GLuint index, const GLfloat *v);
4077__attribute__((visibility("default"))) void glVertexAttrib4sNV (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
4078__attribute__((visibility("default"))) void glVertexAttrib4svNV (GLuint index, const GLshort *v);
4079__attribute__((visibility("default"))) void glVertexAttrib4ubNV (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
4080__attribute__((visibility("default"))) void glVertexAttrib4ubvNV (GLuint index, const GLubyte *v);
4081__attribute__((visibility("default"))) void glVertexAttribs1dvNV (GLuint index, GLsizei count, const GLdouble *v);
4082__attribute__((visibility("default"))) void glVertexAttribs1fvNV (GLuint index, GLsizei count, const GLfloat *v);
4083__attribute__((visibility("default"))) void glVertexAttribs1svNV (GLuint index, GLsizei count, const GLshort *v);
4084__attribute__((visibility("default"))) void glVertexAttribs2dvNV (GLuint index, GLsizei count, const GLdouble *v);
4085__attribute__((visibility("default"))) void glVertexAttribs2fvNV (GLuint index, GLsizei count, const GLfloat *v);
4086__attribute__((visibility("default"))) void glVertexAttribs2svNV (GLuint index, GLsizei count, const GLshort *v);
4087__attribute__((visibility("default"))) void glVertexAttribs3dvNV (GLuint index, GLsizei count, const GLdouble *v);
4088__attribute__((visibility("default"))) void glVertexAttribs3fvNV (GLuint index, GLsizei count, const GLfloat *v);
4089__attribute__((visibility("default"))) void glVertexAttribs3svNV (GLuint index, GLsizei count, const GLshort *v);
4090__attribute__((visibility("default"))) void glVertexAttribs4dvNV (GLuint index, GLsizei count, const GLdouble *v);
4091__attribute__((visibility("default"))) void glVertexAttribs4fvNV (GLuint index, GLsizei count, const GLfloat *v);
4092__attribute__((visibility("default"))) void glVertexAttribs4svNV (GLuint index, GLsizei count, const GLshort *v);
4093__attribute__((visibility("default"))) void glVertexAttribs4ubvNV (GLuint index, GLsizei count, const GLubyte *v);
4094
4095typedef GLboolean ( * PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n, const GLuint *programs, GLboolean *residences);
4096typedef void ( * PFNGLBINDPROGRAMNVPROC) (GLenum target, GLuint id);
4097typedef void ( * PFNGLDELETEPROGRAMSNVPROC) (GLsizei n, const GLuint *programs);
4098typedef void ( * PFNGLEXECUTEPROGRAMNVPROC) (GLenum target, GLuint id, const GLfloat *params);
4099typedef void ( * PFNGLGENPROGRAMSNVPROC) (GLsizei n, GLuint *programs);
4100typedef void ( * PFNGLGETPROGRAMPARAMETERDVNVPROC) (GLenum target, GLuint index, GLenum pname, GLdouble *params);
4101typedef void ( * PFNGLGETPROGRAMPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat *params);
4102typedef void ( * PFNGLGETPROGRAMIVNVPROC) (GLuint id, GLenum pname, GLint *params);
4103typedef void ( * PFNGLGETPROGRAMSTRINGNVPROC) (GLuint id, GLenum pname, GLubyte *program);
4104typedef void ( * PFNGLGETTRACKMATRIXIVNVPROC) (GLenum target, GLuint address, GLenum pname, GLint *params);
4105typedef void ( * PFNGLGETVERTEXATTRIBDVNVPROC) (GLuint index, GLenum pname, GLdouble *params);
4106typedef void ( * PFNGLGETVERTEXATTRIBFVNVPROC) (GLuint index, GLenum pname, GLfloat *params);
4107typedef void ( * PFNGLGETVERTEXATTRIBIVNVPROC) (GLuint index, GLenum pname, GLint *params);
4108typedef void ( * PFNGLGETVERTEXATTRIBPOINTERVNVPROC) (GLuint index, GLenum pname, GLvoid* *pointer);
4109typedef GLboolean ( * PFNGLISPROGRAMNVPROC) (GLuint id);
4110typedef void ( * PFNGLLOADPROGRAMNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte *program);
4111typedef void ( * PFNGLPROGRAMPARAMETER4DNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4112typedef void ( * PFNGLPROGRAMPARAMETER4DVNVPROC) (GLenum target, GLuint index, const GLdouble *v);
4113typedef void ( * PFNGLPROGRAMPARAMETER4FNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4114typedef void ( * PFNGLPROGRAMPARAMETER4FVNVPROC) (GLenum target, GLuint index, const GLfloat *v);
4115typedef void ( * PFNGLPROGRAMPARAMETERS4DVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLdouble *v);
4116typedef void ( * PFNGLPROGRAMPARAMETERS4FVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat *v);
4117typedef void ( * PFNGLREQUESTRESIDENTPROGRAMSNVPROC) (GLsizei n, const GLuint *programs);
4118typedef void ( * PFNGLTRACKMATRIXNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform);
4119typedef void ( * PFNGLVERTEXATTRIBPOINTERNVPROC) (GLuint index, GLint fsize, GLenum type, GLsizei stride, const GLvoid *pointer);
4120typedef void ( * PFNGLVERTEXATTRIB1DNVPROC) (GLuint index, GLdouble x);
4121typedef void ( * PFNGLVERTEXATTRIB1DVNVPROC) (GLuint index, const GLdouble *v);
4122typedef void ( * PFNGLVERTEXATTRIB1FNVPROC) (GLuint index, GLfloat x);
4123typedef void ( * PFNGLVERTEXATTRIB1FVNVPROC) (GLuint index, const GLfloat *v);
4124typedef void ( * PFNGLVERTEXATTRIB1SNVPROC) (GLuint index, GLshort x);
4125typedef void ( * PFNGLVERTEXATTRIB1SVNVPROC) (GLuint index, const GLshort *v);
4126typedef void ( * PFNGLVERTEXATTRIB2DNVPROC) (GLuint index, GLdouble x, GLdouble y);
4127typedef void ( * PFNGLVERTEXATTRIB2DVNVPROC) (GLuint index, const GLdouble *v);
4128typedef void ( * PFNGLVERTEXATTRIB2FNVPROC) (GLuint index, GLfloat x, GLfloat y);
4129typedef void ( * PFNGLVERTEXATTRIB2FVNVPROC) (GLuint index, const GLfloat *v);
4130typedef void ( * PFNGLVERTEXATTRIB2SNVPROC) (GLuint index, GLshort x, GLshort y);
4131typedef void ( * PFNGLVERTEXATTRIB2SVNVPROC) (GLuint index, const GLshort *v);
4132typedef void ( * PFNGLVERTEXATTRIB3DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
4133typedef void ( * PFNGLVERTEXATTRIB3DVNVPROC) (GLuint index, const GLdouble *v);
4134typedef void ( * PFNGLVERTEXATTRIB3FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
4135typedef void ( * PFNGLVERTEXATTRIB3FVNVPROC) (GLuint index, const GLfloat *v);
4136typedef void ( * PFNGLVERTEXATTRIB3SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z);
4137typedef void ( * PFNGLVERTEXATTRIB3SVNVPROC) (GLuint index, const GLshort *v);
4138typedef void ( * PFNGLVERTEXATTRIB4DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4139typedef void ( * PFNGLVERTEXATTRIB4DVNVPROC) (GLuint index, const GLdouble *v);
4140typedef void ( * PFNGLVERTEXATTRIB4FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4141typedef void ( * PFNGLVERTEXATTRIB4FVNVPROC) (GLuint index, const GLfloat *v);
4142typedef void ( * PFNGLVERTEXATTRIB4SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
4143typedef void ( * PFNGLVERTEXATTRIB4SVNVPROC) (GLuint index, const GLshort *v);
4144typedef void ( * PFNGLVERTEXATTRIB4UBNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
4145typedef void ( * PFNGLVERTEXATTRIB4UBVNVPROC) (GLuint index, const GLubyte *v);
4146typedef void ( * PFNGLVERTEXATTRIBS1DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
4147typedef void ( * PFNGLVERTEXATTRIBS1FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
4148typedef void ( * PFNGLVERTEXATTRIBS1SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
4149typedef void ( * PFNGLVERTEXATTRIBS2DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
4150typedef void ( * PFNGLVERTEXATTRIBS2FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
4151typedef void ( * PFNGLVERTEXATTRIBS2SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
4152typedef void ( * PFNGLVERTEXATTRIBS3DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
4153typedef void ( * PFNGLVERTEXATTRIBS3FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
4154typedef void ( * PFNGLVERTEXATTRIBS3SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
4155typedef void ( * PFNGLVERTEXATTRIBS4DVNVPROC) (GLuint index, GLsizei count, const GLdouble *v);
4156typedef void ( * PFNGLVERTEXATTRIBS4FVNVPROC) (GLuint index, GLsizei count, const GLfloat *v);
4157typedef void ( * PFNGLVERTEXATTRIBS4SVNVPROC) (GLuint index, GLsizei count, const GLshort *v);
4158typedef void ( * PFNGLVERTEXATTRIBS4UBVNVPROC) (GLuint index, GLsizei count, const GLubyte *v);
4159# 8945 "../../include/GL/glext.h"
4160__attribute__((visibility("default"))) void glTexBumpParameterivATI (GLenum pname, const GLint *param);
4161__attribute__((visibility("default"))) void glTexBumpParameterfvATI (GLenum pname, const GLfloat *param);
4162__attribute__((visibility("default"))) void glGetTexBumpParameterivATI (GLenum pname, GLint *param);
4163__attribute__((visibility("default"))) void glGetTexBumpParameterfvATI (GLenum pname, GLfloat *param);
4164
4165typedef void ( * PFNGLTEXBUMPPARAMETERIVATIPROC) (GLenum pname, const GLint *param);
4166typedef void ( * PFNGLTEXBUMPPARAMETERFVATIPROC) (GLenum pname, const GLfloat *param);
4167typedef void ( * PFNGLGETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param);
4168typedef void ( * PFNGLGETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param);
4169
4170
4171
4172
4173
4174__attribute__((visibility("default"))) GLuint glGenFragmentShadersATI (GLuint range);
4175__attribute__((visibility("default"))) void glBindFragmentShaderATI (GLuint id);
4176__attribute__((visibility("default"))) void glDeleteFragmentShaderATI (GLuint id);
4177__attribute__((visibility("default"))) void glBeginFragmentShaderATI (void);
4178__attribute__((visibility("default"))) void glEndFragmentShaderATI (void);
4179__attribute__((visibility("default"))) void glPassTexCoordATI (GLuint dst, GLuint coord, GLenum swizzle);
4180__attribute__((visibility("default"))) void glSampleMapATI (GLuint dst, GLuint interp, GLenum swizzle);
4181__attribute__((visibility("default"))) void glColorFragmentOp1ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
4182__attribute__((visibility("default"))) void glColorFragmentOp2ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
4183__attribute__((visibility("default"))) void glColorFragmentOp3ATI (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
4184__attribute__((visibility("default"))) void glAlphaFragmentOp1ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
4185__attribute__((visibility("default"))) void glAlphaFragmentOp2ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
4186__attribute__((visibility("default"))) void glAlphaFragmentOp3ATI (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
4187__attribute__((visibility("default"))) void glSetFragmentShaderConstantATI (GLuint dst, const GLfloat *value);
4188
4189typedef GLuint ( * PFNGLGENFRAGMENTSHADERSATIPROC) (GLuint range);
4190typedef void ( * PFNGLBINDFRAGMENTSHADERATIPROC) (GLuint id);
4191typedef void ( * PFNGLDELETEFRAGMENTSHADERATIPROC) (GLuint id);
4192typedef void ( * PFNGLBEGINFRAGMENTSHADERATIPROC) (void);
4193typedef void ( * PFNGLENDFRAGMENTSHADERATIPROC) (void);
4194typedef void ( * PFNGLPASSTEXCOORDATIPROC) (GLuint dst, GLuint coord, GLenum swizzle);
4195typedef void ( * PFNGLSAMPLEMAPATIPROC) (GLuint dst, GLuint interp, GLenum swizzle);
4196typedef void ( * PFNGLCOLORFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
4197typedef void ( * PFNGLCOLORFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
4198typedef void ( * PFNGLCOLORFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
4199typedef void ( * PFNGLALPHAFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);
4200typedef void ( * PFNGLALPHAFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);
4201typedef void ( * PFNGLALPHAFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);
4202typedef void ( * PFNGLSETFRAGMENTSHADERCONSTANTATIPROC) (GLuint dst, const GLfloat *value);
4203
4204
4205
4206
4207
4208__attribute__((visibility("default"))) void glPNTrianglesiATI (GLenum pname, GLint param);
4209__attribute__((visibility("default"))) void glPNTrianglesfATI (GLenum pname, GLfloat param);
4210
4211typedef void ( * PFNGLPNTRIANGLESIATIPROC) (GLenum pname, GLint param);
4212typedef void ( * PFNGLPNTRIANGLESFATIPROC) (GLenum pname, GLfloat param);
4213
4214
4215
4216
4217
4218__attribute__((visibility("default"))) GLuint glNewObjectBufferATI (GLsizei size, const GLvoid *pointer, GLenum usage);
4219__attribute__((visibility("default"))) GLboolean glIsObjectBufferATI (GLuint buffer);
4220__attribute__((visibility("default"))) void glUpdateObjectBufferATI (GLuint buffer, GLuint offset, GLsizei size, const GLvoid *pointer, GLenum preserve);
4221__attribute__((visibility("default"))) void glGetObjectBufferfvATI (GLuint buffer, GLenum pname, GLfloat *params);
4222__attribute__((visibility("default"))) void glGetObjectBufferivATI (GLuint buffer, GLenum pname, GLint *params);
4223__attribute__((visibility("default"))) void glFreeObjectBufferATI (GLuint buffer);
4224__attribute__((visibility("default"))) void glArrayObjectATI (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
4225__attribute__((visibility("default"))) void glGetArrayObjectfvATI (GLenum array, GLenum pname, GLfloat *params);
4226__attribute__((visibility("default"))) void glGetArrayObjectivATI (GLenum array, GLenum pname, GLint *params);
4227__attribute__((visibility("default"))) void glVariantArrayObjectATI (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
4228__attribute__((visibility("default"))) void glGetVariantArrayObjectfvATI (GLuint id, GLenum pname, GLfloat *params);
4229__attribute__((visibility("default"))) void glGetVariantArrayObjectivATI (GLuint id, GLenum pname, GLint *params);
4230
4231typedef GLuint ( * PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, const GLvoid *pointer, GLenum usage);
4232typedef GLboolean ( * PFNGLISOBJECTBUFFERATIPROC) (GLuint buffer);
4233typedef void ( * PFNGLUPDATEOBJECTBUFFERATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const GLvoid *pointer, GLenum preserve);
4234typedef void ( * PFNGLGETOBJECTBUFFERFVATIPROC) (GLuint buffer, GLenum pname, GLfloat *params);
4235typedef void ( * PFNGLGETOBJECTBUFFERIVATIPROC) (GLuint buffer, GLenum pname, GLint *params);
4236typedef void ( * PFNGLFREEOBJECTBUFFERATIPROC) (GLuint buffer);
4237typedef void ( * PFNGLARRAYOBJECTATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
4238typedef void ( * PFNGLGETARRAYOBJECTFVATIPROC) (GLenum array, GLenum pname, GLfloat *params);
4239typedef void ( * PFNGLGETARRAYOBJECTIVATIPROC) (GLenum array, GLenum pname, GLint *params);
4240typedef void ( * PFNGLVARIANTARRAYOBJECTATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);
4241typedef void ( * PFNGLGETVARIANTARRAYOBJECTFVATIPROC) (GLuint id, GLenum pname, GLfloat *params);
4242typedef void ( * PFNGLGETVARIANTARRAYOBJECTIVATIPROC) (GLuint id, GLenum pname, GLint *params);
4243
4244
4245
4246
4247
4248__attribute__((visibility("default"))) void glBeginVertexShaderEXT (void);
4249__attribute__((visibility("default"))) void glEndVertexShaderEXT (void);
4250__attribute__((visibility("default"))) void glBindVertexShaderEXT (GLuint id);
4251__attribute__((visibility("default"))) GLuint glGenVertexShadersEXT (GLuint range);
4252__attribute__((visibility("default"))) void glDeleteVertexShaderEXT (GLuint id);
4253__attribute__((visibility("default"))) void glShaderOp1EXT (GLenum op, GLuint res, GLuint arg1);
4254__attribute__((visibility("default"))) void glShaderOp2EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2);
4255__attribute__((visibility("default"))) void glShaderOp3EXT (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3);
4256__attribute__((visibility("default"))) void glSwizzleEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
4257__attribute__((visibility("default"))) void glWriteMaskEXT (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
4258__attribute__((visibility("default"))) void glInsertComponentEXT (GLuint res, GLuint src, GLuint num);
4259__attribute__((visibility("default"))) void glExtractComponentEXT (GLuint res, GLuint src, GLuint num);
4260__attribute__((visibility("default"))) GLuint glGenSymbolsEXT (GLenum datatype, GLenum storagetype, GLenum range, GLuint components);
4261__attribute__((visibility("default"))) void glSetInvariantEXT (GLuint id, GLenum type, const GLvoid *addr);
4262__attribute__((visibility("default"))) void glSetLocalConstantEXT (GLuint id, GLenum type, const GLvoid *addr);
4263__attribute__((visibility("default"))) void glVariantbvEXT (GLuint id, const GLbyte *addr);
4264__attribute__((visibility("default"))) void glVariantsvEXT (GLuint id, const GLshort *addr);
4265__attribute__((visibility("default"))) void glVariantivEXT (GLuint id, const GLint *addr);
4266__attribute__((visibility("default"))) void glVariantfvEXT (GLuint id, const GLfloat *addr);
4267__attribute__((visibility("default"))) void glVariantdvEXT (GLuint id, const GLdouble *addr);
4268__attribute__((visibility("default"))) void glVariantubvEXT (GLuint id, const GLubyte *addr);
4269__attribute__((visibility("default"))) void glVariantusvEXT (GLuint id, const GLushort *addr);
4270__attribute__((visibility("default"))) void glVariantuivEXT (GLuint id, const GLuint *addr);
4271__attribute__((visibility("default"))) void glVariantPointerEXT (GLuint id, GLenum type, GLuint stride, const GLvoid *addr);
4272__attribute__((visibility("default"))) void glEnableVariantClientStateEXT (GLuint id);
4273__attribute__((visibility("default"))) void glDisableVariantClientStateEXT (GLuint id);
4274__attribute__((visibility("default"))) GLuint glBindLightParameterEXT (GLenum light, GLenum value);
4275__attribute__((visibility("default"))) GLuint glBindMaterialParameterEXT (GLenum face, GLenum value);
4276__attribute__((visibility("default"))) GLuint glBindTexGenParameterEXT (GLenum unit, GLenum coord, GLenum value);
4277__attribute__((visibility("default"))) GLuint glBindTextureUnitParameterEXT (GLenum unit, GLenum value);
4278__attribute__((visibility("default"))) GLuint glBindParameterEXT (GLenum value);
4279__attribute__((visibility("default"))) GLboolean glIsVariantEnabledEXT (GLuint id, GLenum cap);
4280__attribute__((visibility("default"))) void glGetVariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data);
4281__attribute__((visibility("default"))) void glGetVariantIntegervEXT (GLuint id, GLenum value, GLint *data);
4282__attribute__((visibility("default"))) void glGetVariantFloatvEXT (GLuint id, GLenum value, GLfloat *data);
4283__attribute__((visibility("default"))) void glGetVariantPointervEXT (GLuint id, GLenum value, GLvoid* *data);
4284__attribute__((visibility("default"))) void glGetInvariantBooleanvEXT (GLuint id, GLenum value, GLboolean *data);
4285__attribute__((visibility("default"))) void glGetInvariantIntegervEXT (GLuint id, GLenum value, GLint *data);
4286__attribute__((visibility("default"))) void glGetInvariantFloatvEXT (GLuint id, GLenum value, GLfloat *data);
4287__attribute__((visibility("default"))) void glGetLocalConstantBooleanvEXT (GLuint id, GLenum value, GLboolean *data);
4288__attribute__((visibility("default"))) void glGetLocalConstantIntegervEXT (GLuint id, GLenum value, GLint *data);
4289__attribute__((visibility("default"))) void glGetLocalConstantFloatvEXT (GLuint id, GLenum value, GLfloat *data);
4290
4291typedef void ( * PFNGLBEGINVERTEXSHADEREXTPROC) (void);
4292typedef void ( * PFNGLENDVERTEXSHADEREXTPROC) (void);
4293typedef void ( * PFNGLBINDVERTEXSHADEREXTPROC) (GLuint id);
4294typedef GLuint ( * PFNGLGENVERTEXSHADERSEXTPROC) (GLuint range);
4295typedef void ( * PFNGLDELETEVERTEXSHADEREXTPROC) (GLuint id);
4296typedef void ( * PFNGLSHADEROP1EXTPROC) (GLenum op, GLuint res, GLuint arg1);
4297typedef void ( * PFNGLSHADEROP2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2);
4298typedef void ( * PFNGLSHADEROP3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3);
4299typedef void ( * PFNGLSWIZZLEEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
4300typedef void ( * PFNGLWRITEMASKEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);
4301typedef void ( * PFNGLINSERTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);
4302typedef void ( * PFNGLEXTRACTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);
4303typedef GLuint ( * PFNGLGENSYMBOLSEXTPROC) (GLenum datatype, GLenum storagetype, GLenum range, GLuint components);
4304typedef void ( * PFNGLSETINVARIANTEXTPROC) (GLuint id, GLenum type, const GLvoid *addr);
4305typedef void ( * PFNGLSETLOCALCONSTANTEXTPROC) (GLuint id, GLenum type, const GLvoid *addr);
4306typedef void ( * PFNGLVARIANTBVEXTPROC) (GLuint id, const GLbyte *addr);
4307typedef void ( * PFNGLVARIANTSVEXTPROC) (GLuint id, const GLshort *addr);
4308typedef void ( * PFNGLVARIANTIVEXTPROC) (GLuint id, const GLint *addr);
4309typedef void ( * PFNGLVARIANTFVEXTPROC) (GLuint id, const GLfloat *addr);
4310typedef void ( * PFNGLVARIANTDVEXTPROC) (GLuint id, const GLdouble *addr);
4311typedef void ( * PFNGLVARIANTUBVEXTPROC) (GLuint id, const GLubyte *addr);
4312typedef void ( * PFNGLVARIANTUSVEXTPROC) (GLuint id, const GLushort *addr);
4313typedef void ( * PFNGLVARIANTUIVEXTPROC) (GLuint id, const GLuint *addr);
4314typedef void ( * PFNGLVARIANTPOINTEREXTPROC) (GLuint id, GLenum type, GLuint stride, const GLvoid *addr);
4315typedef void ( * PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);
4316typedef void ( * PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);
4317typedef GLuint ( * PFNGLBINDLIGHTPARAMETEREXTPROC) (GLenum light, GLenum value);
4318typedef GLuint ( * PFNGLBINDMATERIALPARAMETEREXTPROC) (GLenum face, GLenum value);
4319typedef GLuint ( * PFNGLBINDTEXGENPARAMETEREXTPROC) (GLenum unit, GLenum coord, GLenum value);
4320typedef GLuint ( * PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) (GLenum unit, GLenum value);
4321typedef GLuint ( * PFNGLBINDPARAMETEREXTPROC) (GLenum value);
4322typedef GLboolean ( * PFNGLISVARIANTENABLEDEXTPROC) (GLuint id, GLenum cap);
4323typedef void ( * PFNGLGETVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
4324typedef void ( * PFNGLGETVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
4325typedef void ( * PFNGLGETVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
4326typedef void ( * PFNGLGETVARIANTPOINTERVEXTPROC) (GLuint id, GLenum value, GLvoid* *data);
4327typedef void ( * PFNGLGETINVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
4328typedef void ( * PFNGLGETINVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
4329typedef void ( * PFNGLGETINVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
4330typedef void ( * PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);
4331typedef void ( * PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);
4332typedef void ( * PFNGLGETLOCALCONSTANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);
4333
4334
4335
4336
4337
4338__attribute__((visibility("default"))) void glVertexStream1sATI (GLenum stream, GLshort x);
4339__attribute__((visibility("default"))) void glVertexStream1svATI (GLenum stream, const GLshort *coords);
4340__attribute__((visibility("default"))) void glVertexStream1iATI (GLenum stream, GLint x);
4341__attribute__((visibility("default"))) void glVertexStream1ivATI (GLenum stream, const GLint *coords);
4342__attribute__((visibility("default"))) void glVertexStream1fATI (GLenum stream, GLfloat x);
4343__attribute__((visibility("default"))) void glVertexStream1fvATI (GLenum stream, const GLfloat *coords);
4344__attribute__((visibility("default"))) void glVertexStream1dATI (GLenum stream, GLdouble x);
4345__attribute__((visibility("default"))) void glVertexStream1dvATI (GLenum stream, const GLdouble *coords);
4346__attribute__((visibility("default"))) void glVertexStream2sATI (GLenum stream, GLshort x, GLshort y);
4347__attribute__((visibility("default"))) void glVertexStream2svATI (GLenum stream, const GLshort *coords);
4348__attribute__((visibility("default"))) void glVertexStream2iATI (GLenum stream, GLint x, GLint y);
4349__attribute__((visibility("default"))) void glVertexStream2ivATI (GLenum stream, const GLint *coords);
4350__attribute__((visibility("default"))) void glVertexStream2fATI (GLenum stream, GLfloat x, GLfloat y);
4351__attribute__((visibility("default"))) void glVertexStream2fvATI (GLenum stream, const GLfloat *coords);
4352__attribute__((visibility("default"))) void glVertexStream2dATI (GLenum stream, GLdouble x, GLdouble y);
4353__attribute__((visibility("default"))) void glVertexStream2dvATI (GLenum stream, const GLdouble *coords);
4354__attribute__((visibility("default"))) void glVertexStream3sATI (GLenum stream, GLshort x, GLshort y, GLshort z);
4355__attribute__((visibility("default"))) void glVertexStream3svATI (GLenum stream, const GLshort *coords);
4356__attribute__((visibility("default"))) void glVertexStream3iATI (GLenum stream, GLint x, GLint y, GLint z);
4357__attribute__((visibility("default"))) void glVertexStream3ivATI (GLenum stream, const GLint *coords);
4358__attribute__((visibility("default"))) void glVertexStream3fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z);
4359__attribute__((visibility("default"))) void glVertexStream3fvATI (GLenum stream, const GLfloat *coords);
4360__attribute__((visibility("default"))) void glVertexStream3dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z);
4361__attribute__((visibility("default"))) void glVertexStream3dvATI (GLenum stream, const GLdouble *coords);
4362__attribute__((visibility("default"))) void glVertexStream4sATI (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w);
4363__attribute__((visibility("default"))) void glVertexStream4svATI (GLenum stream, const GLshort *coords);
4364__attribute__((visibility("default"))) void glVertexStream4iATI (GLenum stream, GLint x, GLint y, GLint z, GLint w);
4365__attribute__((visibility("default"))) void glVertexStream4ivATI (GLenum stream, const GLint *coords);
4366__attribute__((visibility("default"))) void glVertexStream4fATI (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4367__attribute__((visibility("default"))) void glVertexStream4fvATI (GLenum stream, const GLfloat *coords);
4368__attribute__((visibility("default"))) void glVertexStream4dATI (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4369__attribute__((visibility("default"))) void glVertexStream4dvATI (GLenum stream, const GLdouble *coords);
4370__attribute__((visibility("default"))) void glNormalStream3bATI (GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz);
4371__attribute__((visibility("default"))) void glNormalStream3bvATI (GLenum stream, const GLbyte *coords);
4372__attribute__((visibility("default"))) void glNormalStream3sATI (GLenum stream, GLshort nx, GLshort ny, GLshort nz);
4373__attribute__((visibility("default"))) void glNormalStream3svATI (GLenum stream, const GLshort *coords);
4374__attribute__((visibility("default"))) void glNormalStream3iATI (GLenum stream, GLint nx, GLint ny, GLint nz);
4375__attribute__((visibility("default"))) void glNormalStream3ivATI (GLenum stream, const GLint *coords);
4376__attribute__((visibility("default"))) void glNormalStream3fATI (GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz);
4377__attribute__((visibility("default"))) void glNormalStream3fvATI (GLenum stream, const GLfloat *coords);
4378__attribute__((visibility("default"))) void glNormalStream3dATI (GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz);
4379__attribute__((visibility("default"))) void glNormalStream3dvATI (GLenum stream, const GLdouble *coords);
4380__attribute__((visibility("default"))) void glClientActiveVertexStreamATI (GLenum stream);
4381__attribute__((visibility("default"))) void glVertexBlendEnviATI (GLenum pname, GLint param);
4382__attribute__((visibility("default"))) void glVertexBlendEnvfATI (GLenum pname, GLfloat param);
4383
4384typedef void ( * PFNGLVERTEXSTREAM1SATIPROC) (GLenum stream, GLshort x);
4385typedef void ( * PFNGLVERTEXSTREAM1SVATIPROC) (GLenum stream, const GLshort *coords);
4386typedef void ( * PFNGLVERTEXSTREAM1IATIPROC) (GLenum stream, GLint x);
4387typedef void ( * PFNGLVERTEXSTREAM1IVATIPROC) (GLenum stream, const GLint *coords);
4388typedef void ( * PFNGLVERTEXSTREAM1FATIPROC) (GLenum stream, GLfloat x);
4389typedef void ( * PFNGLVERTEXSTREAM1FVATIPROC) (GLenum stream, const GLfloat *coords);
4390typedef void ( * PFNGLVERTEXSTREAM1DATIPROC) (GLenum stream, GLdouble x);
4391typedef void ( * PFNGLVERTEXSTREAM1DVATIPROC) (GLenum stream, const GLdouble *coords);
4392typedef void ( * PFNGLVERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y);
4393typedef void ( * PFNGLVERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *coords);
4394typedef void ( * PFNGLVERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y);
4395typedef void ( * PFNGLVERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *coords);
4396typedef void ( * PFNGLVERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y);
4397typedef void ( * PFNGLVERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *coords);
4398typedef void ( * PFNGLVERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y);
4399typedef void ( * PFNGLVERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *coords);
4400typedef void ( * PFNGLVERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z);
4401typedef void ( * PFNGLVERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords);
4402typedef void ( * PFNGLVERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z);
4403typedef void ( * PFNGLVERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *coords);
4404typedef void ( * PFNGLVERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z);
4405typedef void ( * PFNGLVERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords);
4406typedef void ( * PFNGLVERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z);
4407typedef void ( * PFNGLVERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords);
4408typedef void ( * PFNGLVERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w);
4409typedef void ( * PFNGLVERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *coords);
4410typedef void ( * PFNGLVERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w);
4411typedef void ( * PFNGLVERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *coords);
4412typedef void ( * PFNGLVERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4413typedef void ( * PFNGLVERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *coords);
4414typedef void ( * PFNGLVERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4415typedef void ( * PFNGLVERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *coords);
4416typedef void ( * PFNGLNORMALSTREAM3BATIPROC) (GLenum stream, GLbyte nx, GLbyte ny, GLbyte nz);
4417typedef void ( * PFNGLNORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *coords);
4418typedef void ( * PFNGLNORMALSTREAM3SATIPROC) (GLenum stream, GLshort nx, GLshort ny, GLshort nz);
4419typedef void ( * PFNGLNORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *coords);
4420typedef void ( * PFNGLNORMALSTREAM3IATIPROC) (GLenum stream, GLint nx, GLint ny, GLint nz);
4421typedef void ( * PFNGLNORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *coords);
4422typedef void ( * PFNGLNORMALSTREAM3FATIPROC) (GLenum stream, GLfloat nx, GLfloat ny, GLfloat nz);
4423typedef void ( * PFNGLNORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *coords);
4424typedef void ( * PFNGLNORMALSTREAM3DATIPROC) (GLenum stream, GLdouble nx, GLdouble ny, GLdouble nz);
4425typedef void ( * PFNGLNORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *coords);
4426typedef void ( * PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream);
4427typedef void ( * PFNGLVERTEXBLENDENVIATIPROC) (GLenum pname, GLint param);
4428typedef void ( * PFNGLVERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param);
4429
4430
4431
4432
4433
4434__attribute__((visibility("default"))) void glElementPointerATI (GLenum type, const GLvoid *pointer);
4435__attribute__((visibility("default"))) void glDrawElementArrayATI (GLenum mode, GLsizei count);
4436__attribute__((visibility("default"))) void glDrawRangeElementArrayATI (GLenum mode, GLuint start, GLuint end, GLsizei count);
4437
4438typedef void ( * PFNGLELEMENTPOINTERATIPROC) (GLenum type, const GLvoid *pointer);
4439typedef void ( * PFNGLDRAWELEMENTARRAYATIPROC) (GLenum mode, GLsizei count);
4440typedef void ( * PFNGLDRAWRANGEELEMENTARRAYATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count);
4441
4442
4443
4444
4445
4446__attribute__((visibility("default"))) void glDrawMeshArraysSUN (GLenum mode, GLint first, GLsizei count, GLsizei width);
4447
4448typedef void ( * PFNGLDRAWMESHARRAYSSUNPROC) (GLenum mode, GLint first, GLsizei count, GLsizei width);
4449# 9251 "../../include/GL/glext.h"
4450__attribute__((visibility("default"))) void glGenOcclusionQueriesNV (GLsizei n, GLuint *ids);
4451__attribute__((visibility("default"))) void glDeleteOcclusionQueriesNV (GLsizei n, const GLuint *ids);
4452__attribute__((visibility("default"))) GLboolean glIsOcclusionQueryNV (GLuint id);
4453__attribute__((visibility("default"))) void glBeginOcclusionQueryNV (GLuint id);
4454__attribute__((visibility("default"))) void glEndOcclusionQueryNV (void);
4455__attribute__((visibility("default"))) void glGetOcclusionQueryivNV (GLuint id, GLenum pname, GLint *params);
4456__attribute__((visibility("default"))) void glGetOcclusionQueryuivNV (GLuint id, GLenum pname, GLuint *params);
4457
4458typedef void ( * PFNGLGENOCCLUSIONQUERIESNVPROC) (GLsizei n, GLuint *ids);
4459typedef void ( * PFNGLDELETEOCCLUSIONQUERIESNVPROC) (GLsizei n, const GLuint *ids);
4460typedef GLboolean ( * PFNGLISOCCLUSIONQUERYNVPROC) (GLuint id);
4461typedef void ( * PFNGLBEGINOCCLUSIONQUERYNVPROC) (GLuint id);
4462typedef void ( * PFNGLENDOCCLUSIONQUERYNVPROC) (void);
4463typedef void ( * PFNGLGETOCCLUSIONQUERYIVNVPROC) (GLuint id, GLenum pname, GLint *params);
4464typedef void ( * PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pname, GLuint *params);
4465
4466
4467
4468
4469
4470__attribute__((visibility("default"))) void glPointParameteriNV (GLenum pname, GLint param);
4471__attribute__((visibility("default"))) void glPointParameterivNV (GLenum pname, const GLint *params);
4472
4473typedef void ( * PFNGLPOINTPARAMETERINVPROC) (GLenum pname, GLint param);
4474typedef void ( * PFNGLPOINTPARAMETERIVNVPROC) (GLenum pname, const GLint *params);
4475# 9293 "../../include/GL/glext.h"
4476__attribute__((visibility("default"))) void glActiveStencilFaceEXT (GLenum face);
4477
4478typedef void ( * PFNGLACTIVESTENCILFACEEXTPROC) (GLenum face);
4479# 9309 "../../include/GL/glext.h"
4480__attribute__((visibility("default"))) void glElementPointerAPPLE (GLenum type, const GLvoid *pointer);
4481__attribute__((visibility("default"))) void glDrawElementArrayAPPLE (GLenum mode, GLint first, GLsizei count);
4482__attribute__((visibility("default"))) void glDrawRangeElementArrayAPPLE (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count);
4483__attribute__((visibility("default"))) void glMultiDrawElementArrayAPPLE (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
4484__attribute__((visibility("default"))) void glMultiDrawRangeElementArrayAPPLE (GLenum mode, GLuint start, GLuint end, const GLint *first, const GLsizei *count, GLsizei primcount);
4485
4486typedef void ( * PFNGLELEMENTPOINTERAPPLEPROC) (GLenum type, const GLvoid *pointer);
4487typedef void ( * PFNGLDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, GLint first, GLsizei count);
4488typedef void ( * PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count);
4489typedef void ( * PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
4490typedef void ( * PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, const GLint *first, const GLsizei *count, GLsizei primcount);
4491
4492
4493
4494
4495
4496__attribute__((visibility("default"))) void glGenFencesAPPLE (GLsizei n, GLuint *fences);
4497__attribute__((visibility("default"))) void glDeleteFencesAPPLE (GLsizei n, const GLuint *fences);
4498__attribute__((visibility("default"))) void glSetFenceAPPLE (GLuint fence);
4499__attribute__((visibility("default"))) GLboolean glIsFenceAPPLE (GLuint fence);
4500__attribute__((visibility("default"))) GLboolean glTestFenceAPPLE (GLuint fence);
4501__attribute__((visibility("default"))) void glFinishFenceAPPLE (GLuint fence);
4502__attribute__((visibility("default"))) GLboolean glTestObjectAPPLE (GLenum object, GLuint name);
4503__attribute__((visibility("default"))) void glFinishObjectAPPLE (GLenum object, GLint name);
4504
4505typedef void ( * PFNGLGENFENCESAPPLEPROC) (GLsizei n, GLuint *fences);
4506typedef void ( * PFNGLDELETEFENCESAPPLEPROC) (GLsizei n, const GLuint *fences);
4507typedef void ( * PFNGLSETFENCEAPPLEPROC) (GLuint fence);
4508typedef GLboolean ( * PFNGLISFENCEAPPLEPROC) (GLuint fence);
4509typedef GLboolean ( * PFNGLTESTFENCEAPPLEPROC) (GLuint fence);
4510typedef void ( * PFNGLFINISHFENCEAPPLEPROC) (GLuint fence);
4511typedef GLboolean ( * PFNGLTESTOBJECTAPPLEPROC) (GLenum object, GLuint name);
4512typedef void ( * PFNGLFINISHOBJECTAPPLEPROC) (GLenum object, GLint name);
4513
4514
4515
4516
4517
4518__attribute__((visibility("default"))) void glBindVertexArrayAPPLE (GLuint array);
4519__attribute__((visibility("default"))) void glDeleteVertexArraysAPPLE (GLsizei n, const GLuint *arrays);
4520__attribute__((visibility("default"))) void glGenVertexArraysAPPLE (GLsizei n, GLuint *arrays);
4521__attribute__((visibility("default"))) GLboolean glIsVertexArrayAPPLE (GLuint array);
4522
4523typedef void ( * PFNGLBINDVERTEXARRAYAPPLEPROC) (GLuint array);
4524typedef void ( * PFNGLDELETEVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint *arrays);
4525typedef void ( * PFNGLGENVERTEXARRAYSAPPLEPROC) (GLsizei n, GLuint *arrays);
4526typedef GLboolean ( * PFNGLISVERTEXARRAYAPPLEPROC) (GLuint array);
4527
4528
4529
4530
4531
4532__attribute__((visibility("default"))) void glVertexArrayRangeAPPLE (GLsizei length, GLvoid *pointer);
4533__attribute__((visibility("default"))) void glFlushVertexArrayRangeAPPLE (GLsizei length, GLvoid *pointer);
4534__attribute__((visibility("default"))) void glVertexArrayParameteriAPPLE (GLenum pname, GLint param);
4535
4536typedef void ( * PFNGLVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, GLvoid *pointer);
4537typedef void ( * PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, GLvoid *pointer);
4538typedef void ( * PFNGLVERTEXARRAYPARAMETERIAPPLEPROC) (GLenum pname, GLint param);
4539# 9381 "../../include/GL/glext.h"
4540__attribute__((visibility("default"))) void glDrawBuffersATI (GLsizei n, const GLenum *bufs);
4541
4542typedef void ( * PFNGLDRAWBUFFERSATIPROC) (GLsizei n, const GLenum *bufs);
4543# 9409 "../../include/GL/glext.h"
4544__attribute__((visibility("default"))) void glProgramNamedParameter4fNV (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4545__attribute__((visibility("default"))) void glProgramNamedParameter4dNV (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4546__attribute__((visibility("default"))) void glProgramNamedParameter4fvNV (GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
4547__attribute__((visibility("default"))) void glProgramNamedParameter4dvNV (GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
4548__attribute__((visibility("default"))) void glGetProgramNamedParameterfvNV (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
4549__attribute__((visibility("default"))) void glGetProgramNamedParameterdvNV (GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
4550
4551typedef void ( * PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
4552typedef void ( * PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
4553typedef void ( * PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLfloat *v);
4554typedef void ( * PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, const GLdouble *v);
4555typedef void ( * PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLfloat *params);
4556typedef void ( * PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) (GLuint id, GLsizei len, const GLubyte *name, GLdouble *params);
4557
4558
4559
4560
4561
4562__attribute__((visibility("default"))) void glVertex2hNV (GLhalfNV x, GLhalfNV y);
4563__attribute__((visibility("default"))) void glVertex2hvNV (const GLhalfNV *v);
4564__attribute__((visibility("default"))) void glVertex3hNV (GLhalfNV x, GLhalfNV y, GLhalfNV z);
4565__attribute__((visibility("default"))) void glVertex3hvNV (const GLhalfNV *v);
4566__attribute__((visibility("default"))) void glVertex4hNV (GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
4567__attribute__((visibility("default"))) void glVertex4hvNV (const GLhalfNV *v);
4568__attribute__((visibility("default"))) void glNormal3hNV (GLhalfNV nx, GLhalfNV ny, GLhalfNV nz);
4569__attribute__((visibility("default"))) void glNormal3hvNV (const GLhalfNV *v);
4570__attribute__((visibility("default"))) void glColor3hNV (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
4571__attribute__((visibility("default"))) void glColor3hvNV (const GLhalfNV *v);
4572__attribute__((visibility("default"))) void glColor4hNV (GLhalfNV red, GLhalfNV green, GLhalfNV blue, GLhalfNV alpha);
4573__attribute__((visibility("default"))) void glColor4hvNV (const GLhalfNV *v);
4574__attribute__((visibility("default"))) void glTexCoord1hNV (GLhalfNV s);
4575__attribute__((visibility("default"))) void glTexCoord1hvNV (const GLhalfNV *v);
4576__attribute__((visibility("default"))) void glTexCoord2hNV (GLhalfNV s, GLhalfNV t);
4577__attribute__((visibility("default"))) void glTexCoord2hvNV (const GLhalfNV *v);
4578__attribute__((visibility("default"))) void glTexCoord3hNV (GLhalfNV s, GLhalfNV t, GLhalfNV r);
4579__attribute__((visibility("default"))) void glTexCoord3hvNV (const GLhalfNV *v);
4580__attribute__((visibility("default"))) void glTexCoord4hNV (GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
4581__attribute__((visibility("default"))) void glTexCoord4hvNV (const GLhalfNV *v);
4582__attribute__((visibility("default"))) void glMultiTexCoord1hNV (GLenum target, GLhalfNV s);
4583__attribute__((visibility("default"))) void glMultiTexCoord1hvNV (GLenum target, const GLhalfNV *v);
4584__attribute__((visibility("default"))) void glMultiTexCoord2hNV (GLenum target, GLhalfNV s, GLhalfNV t);
4585__attribute__((visibility("default"))) void glMultiTexCoord2hvNV (GLenum target, const GLhalfNV *v);
4586__attribute__((visibility("default"))) void glMultiTexCoord3hNV (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r);
4587__attribute__((visibility("default"))) void glMultiTexCoord3hvNV (GLenum target, const GLhalfNV *v);
4588__attribute__((visibility("default"))) void glMultiTexCoord4hNV (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
4589__attribute__((visibility("default"))) void glMultiTexCoord4hvNV (GLenum target, const GLhalfNV *v);
4590__attribute__((visibility("default"))) void glFogCoordhNV (GLhalfNV fog);
4591__attribute__((visibility("default"))) void glFogCoordhvNV (const GLhalfNV *fog);
4592__attribute__((visibility("default"))) void glSecondaryColor3hNV (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
4593__attribute__((visibility("default"))) void glSecondaryColor3hvNV (const GLhalfNV *v);
4594__attribute__((visibility("default"))) void glVertexWeighthNV (GLhalfNV weight);
4595__attribute__((visibility("default"))) void glVertexWeighthvNV (const GLhalfNV *weight);
4596__attribute__((visibility("default"))) void glVertexAttrib1hNV (GLuint index, GLhalfNV x);
4597__attribute__((visibility("default"))) void glVertexAttrib1hvNV (GLuint index, const GLhalfNV *v);
4598__attribute__((visibility("default"))) void glVertexAttrib2hNV (GLuint index, GLhalfNV x, GLhalfNV y);
4599__attribute__((visibility("default"))) void glVertexAttrib2hvNV (GLuint index, const GLhalfNV *v);
4600__attribute__((visibility("default"))) void glVertexAttrib3hNV (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z);
4601__attribute__((visibility("default"))) void glVertexAttrib3hvNV (GLuint index, const GLhalfNV *v);
4602__attribute__((visibility("default"))) void glVertexAttrib4hNV (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
4603__attribute__((visibility("default"))) void glVertexAttrib4hvNV (GLuint index, const GLhalfNV *v);
4604__attribute__((visibility("default"))) void glVertexAttribs1hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
4605__attribute__((visibility("default"))) void glVertexAttribs2hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
4606__attribute__((visibility("default"))) void glVertexAttribs3hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
4607__attribute__((visibility("default"))) void glVertexAttribs4hvNV (GLuint index, GLsizei n, const GLhalfNV *v);
4608
4609typedef void ( * PFNGLVERTEX2HNVPROC) (GLhalfNV x, GLhalfNV y);
4610typedef void ( * PFNGLVERTEX2HVNVPROC) (const GLhalfNV *v);
4611typedef void ( * PFNGLVERTEX3HNVPROC) (GLhalfNV x, GLhalfNV y, GLhalfNV z);
4612typedef void ( * PFNGLVERTEX3HVNVPROC) (const GLhalfNV *v);
4613typedef void ( * PFNGLVERTEX4HNVPROC) (GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
4614typedef void ( * PFNGLVERTEX4HVNVPROC) (const GLhalfNV *v);
4615typedef void ( * PFNGLNORMAL3HNVPROC) (GLhalfNV nx, GLhalfNV ny, GLhalfNV nz);
4616typedef void ( * PFNGLNORMAL3HVNVPROC) (const GLhalfNV *v);
4617typedef void ( * PFNGLCOLOR3HNVPROC) (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
4618typedef void ( * PFNGLCOLOR3HVNVPROC) (const GLhalfNV *v);
4619typedef void ( * PFNGLCOLOR4HNVPROC) (GLhalfNV red, GLhalfNV green, GLhalfNV blue, GLhalfNV alpha);
4620typedef void ( * PFNGLCOLOR4HVNVPROC) (const GLhalfNV *v);
4621typedef void ( * PFNGLTEXCOORD1HNVPROC) (GLhalfNV s);
4622typedef void ( * PFNGLTEXCOORD1HVNVPROC) (const GLhalfNV *v);
4623typedef void ( * PFNGLTEXCOORD2HNVPROC) (GLhalfNV s, GLhalfNV t);
4624typedef void ( * PFNGLTEXCOORD2HVNVPROC) (const GLhalfNV *v);
4625typedef void ( * PFNGLTEXCOORD3HNVPROC) (GLhalfNV s, GLhalfNV t, GLhalfNV r);
4626typedef void ( * PFNGLTEXCOORD3HVNVPROC) (const GLhalfNV *v);
4627typedef void ( * PFNGLTEXCOORD4HNVPROC) (GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
4628typedef void ( * PFNGLTEXCOORD4HVNVPROC) (const GLhalfNV *v);
4629typedef void ( * PFNGLMULTITEXCOORD1HNVPROC) (GLenum target, GLhalfNV s);
4630typedef void ( * PFNGLMULTITEXCOORD1HVNVPROC) (GLenum target, const GLhalfNV *v);
4631typedef void ( * PFNGLMULTITEXCOORD2HNVPROC) (GLenum target, GLhalfNV s, GLhalfNV t);
4632typedef void ( * PFNGLMULTITEXCOORD2HVNVPROC) (GLenum target, const GLhalfNV *v);
4633typedef void ( * PFNGLMULTITEXCOORD3HNVPROC) (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r);
4634typedef void ( * PFNGLMULTITEXCOORD3HVNVPROC) (GLenum target, const GLhalfNV *v);
4635typedef void ( * PFNGLMULTITEXCOORD4HNVPROC) (GLenum target, GLhalfNV s, GLhalfNV t, GLhalfNV r, GLhalfNV q);
4636typedef void ( * PFNGLMULTITEXCOORD4HVNVPROC) (GLenum target, const GLhalfNV *v);
4637typedef void ( * PFNGLFOGCOORDHNVPROC) (GLhalfNV fog);
4638typedef void ( * PFNGLFOGCOORDHVNVPROC) (const GLhalfNV *fog);
4639typedef void ( * PFNGLSECONDARYCOLOR3HNVPROC) (GLhalfNV red, GLhalfNV green, GLhalfNV blue);
4640typedef void ( * PFNGLSECONDARYCOLOR3HVNVPROC) (const GLhalfNV *v);
4641typedef void ( * PFNGLVERTEXWEIGHTHNVPROC) (GLhalfNV weight);
4642typedef void ( * PFNGLVERTEXWEIGHTHVNVPROC) (const GLhalfNV *weight);
4643typedef void ( * PFNGLVERTEXATTRIB1HNVPROC) (GLuint index, GLhalfNV x);
4644typedef void ( * PFNGLVERTEXATTRIB1HVNVPROC) (GLuint index, const GLhalfNV *v);
4645typedef void ( * PFNGLVERTEXATTRIB2HNVPROC) (GLuint index, GLhalfNV x, GLhalfNV y);
4646typedef void ( * PFNGLVERTEXATTRIB2HVNVPROC) (GLuint index, const GLhalfNV *v);
4647typedef void ( * PFNGLVERTEXATTRIB3HNVPROC) (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z);
4648typedef void ( * PFNGLVERTEXATTRIB3HVNVPROC) (GLuint index, const GLhalfNV *v);
4649typedef void ( * PFNGLVERTEXATTRIB4HNVPROC) (GLuint index, GLhalfNV x, GLhalfNV y, GLhalfNV z, GLhalfNV w);
4650typedef void ( * PFNGLVERTEXATTRIB4HVNVPROC) (GLuint index, const GLhalfNV *v);
4651typedef void ( * PFNGLVERTEXATTRIBS1HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
4652typedef void ( * PFNGLVERTEXATTRIBS2HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
4653typedef void ( * PFNGLVERTEXATTRIBS3HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
4654typedef void ( * PFNGLVERTEXATTRIBS4HVNVPROC) (GLuint index, GLsizei n, const GLhalfNV *v);
4655
4656
4657
4658
4659
4660__attribute__((visibility("default"))) void glPixelDataRangeNV (GLenum target, GLsizei length, GLvoid *pointer);
4661__attribute__((visibility("default"))) void glFlushPixelDataRangeNV (GLenum target);
4662
4663typedef void ( * PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, GLvoid *pointer);
4664typedef void ( * PFNGLFLUSHPIXELDATARANGENVPROC) (GLenum target);
4665
4666
4667
4668
4669
4670__attribute__((visibility("default"))) void glPrimitiveRestartNV (void);
4671__attribute__((visibility("default"))) void glPrimitiveRestartIndexNV (GLuint index);
4672
4673typedef void ( * PFNGLPRIMITIVERESTARTNVPROC) (void);
4674typedef void ( * PFNGLPRIMITIVERESTARTINDEXNVPROC) (GLuint index);
4675# 9553 "../../include/GL/glext.h"
4676__attribute__((visibility("default"))) GLvoid* glMapObjectBufferATI (GLuint buffer);
4677__attribute__((visibility("default"))) void glUnmapObjectBufferATI (GLuint buffer);
4678
4679typedef GLvoid* ( * PFNGLMAPOBJECTBUFFERATIPROC) (GLuint buffer);
4680typedef void ( * PFNGLUNMAPOBJECTBUFFERATIPROC) (GLuint buffer);
4681
4682
4683
4684
4685
4686__attribute__((visibility("default"))) void glStencilOpSeparateATI (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
4687__attribute__((visibility("default"))) void glStencilFuncSeparateATI (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
4688
4689typedef void ( * PFNGLSTENCILOPSEPARATEATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
4690typedef void ( * PFNGLSTENCILFUNCSEPARATEATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
4691
4692
4693
4694
4695
4696__attribute__((visibility("default"))) void glVertexAttribArrayObjectATI (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);
4697__attribute__((visibility("default"))) void glGetVertexAttribArrayObjectfvATI (GLuint index, GLenum pname, GLfloat *params);
4698__attribute__((visibility("default"))) void glGetVertexAttribArrayObjectivATI (GLuint index, GLenum pname, GLint *params);
4699
4700typedef void ( * PFNGLVERTEXATTRIBARRAYOBJECTATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);
4701typedef void ( * PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index, GLenum pname, GLfloat *params);
4702typedef void ( * PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint *params);
4703# 9589 "../../include/GL/glext.h"
4704__attribute__((visibility("default"))) void glDepthBoundsEXT (GLclampd zmin, GLclampd zmax);
4705
4706typedef void ( * PFNGLDEPTHBOUNDSEXTPROC) (GLclampd zmin, GLclampd zmax);
4707# 9601 "../../include/GL/glext.h"
4708__attribute__((visibility("default"))) void glBlendEquationSeparateEXT (GLenum modeRGB, GLenum modeAlpha);
4709
4710typedef void ( * PFNGLBLENDEQUATIONSEPARATEEXTPROC) (GLenum modeRGB, GLenum modeAlpha);
4711# 9637 "../../include/GL/glext.h"
4712__attribute__((visibility("default"))) GLboolean glIsRenderbufferEXT (GLuint renderbuffer);
4713__attribute__((visibility("default"))) void glBindRenderbufferEXT (GLenum target, GLuint renderbuffer);
4714__attribute__((visibility("default"))) void glDeleteRenderbuffersEXT (GLsizei n, const GLuint *renderbuffers);
4715__attribute__((visibility("default"))) void glGenRenderbuffersEXT (GLsizei n, GLuint *renderbuffers);
4716__attribute__((visibility("default"))) void glRenderbufferStorageEXT (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
4717__attribute__((visibility("default"))) void glGetRenderbufferParameterivEXT (GLenum target, GLenum pname, GLint *params);
4718__attribute__((visibility("default"))) GLboolean glIsFramebufferEXT (GLuint framebuffer);
4719__attribute__((visibility("default"))) void glBindFramebufferEXT (GLenum target, GLuint framebuffer);
4720__attribute__((visibility("default"))) void glDeleteFramebuffersEXT (GLsizei n, const GLuint *framebuffers);
4721__attribute__((visibility("default"))) void glGenFramebuffersEXT (GLsizei n, GLuint *framebuffers);
4722__attribute__((visibility("default"))) GLenum glCheckFramebufferStatusEXT (GLenum target);
4723__attribute__((visibility("default"))) void glFramebufferTexture1DEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
4724__attribute__((visibility("default"))) void glFramebufferTexture2DEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
4725__attribute__((visibility("default"))) void glFramebufferTexture3DEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
4726__attribute__((visibility("default"))) void glFramebufferRenderbufferEXT (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
4727__attribute__((visibility("default"))) void glGetFramebufferAttachmentParameterivEXT (GLenum target, GLenum attachment, GLenum pname, GLint *params);
4728__attribute__((visibility("default"))) void glGenerateMipmapEXT (GLenum target);
4729
4730typedef GLboolean ( * PFNGLISRENDERBUFFEREXTPROC) (GLuint renderbuffer);
4731typedef void ( * PFNGLBINDRENDERBUFFEREXTPROC) (GLenum target, GLuint renderbuffer);
4732typedef void ( * PFNGLDELETERENDERBUFFERSEXTPROC) (GLsizei n, const GLuint *renderbuffers);
4733typedef void ( * PFNGLGENRENDERBUFFERSEXTPROC) (GLsizei n, GLuint *renderbuffers);
4734typedef void ( * PFNGLRENDERBUFFERSTORAGEEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
4735typedef void ( * PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
4736typedef GLboolean ( * PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer);
4737typedef void ( * PFNGLBINDFRAMEBUFFEREXTPROC) (GLenum target, GLuint framebuffer);
4738typedef void ( * PFNGLDELETEFRAMEBUFFERSEXTPROC) (GLsizei n, const GLuint *framebuffers);
4739typedef void ( * PFNGLGENFRAMEBUFFERSEXTPROC) (GLsizei n, GLuint *framebuffers);
4740typedef GLenum ( * PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC) (GLenum target);
4741typedef void ( * PFNGLFRAMEBUFFERTEXTURE1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
4742typedef void ( * PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
4743typedef void ( * PFNGLFRAMEBUFFERTEXTURE3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
4744typedef void ( * PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
4745typedef void ( * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
4746typedef void ( * PFNGLGENERATEMIPMAPEXTPROC) (GLenum target);
4747
4748
4749
4750
4751
4752__attribute__((visibility("default"))) void glStringMarkerGREMEDY (GLsizei len, const GLvoid *string);
4753
4754typedef void ( * PFNGLSTRINGMARKERGREMEDYPROC) (GLsizei len, const GLvoid *string);
4755# 9689 "../../include/GL/glext.h"
4756__attribute__((visibility("default"))) void glStencilClearTagEXT (GLsizei stencilTagBits, GLuint stencilClearTag);
4757
4758typedef void ( * PFNGLSTENCILCLEARTAGEXTPROC) (GLsizei stencilTagBits, GLuint stencilClearTag);
4759# 9701 "../../include/GL/glext.h"
4760__attribute__((visibility("default"))) void glBlitFramebufferEXT (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
4761
4762typedef void ( * PFNGLBLITFRAMEBUFFEREXTPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
4763
4764
4765
4766
4767
4768__attribute__((visibility("default"))) void glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
4769
4770typedef void ( * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
4771# 9721 "../../include/GL/glext.h"
4772__attribute__((visibility("default"))) void glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64EXT *params);
4773__attribute__((visibility("default"))) void glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64EXT *params);
4774
4775typedef void ( * PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64EXT *params);
4776typedef void ( * PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64EXT *params);
4777
4778
4779
4780
4781
4782__attribute__((visibility("default"))) void glProgramEnvParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
4783__attribute__((visibility("default"))) void glProgramLocalParameters4fvEXT (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
4784
4785typedef void ( * PFNGLPROGRAMENVPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
4786typedef void ( * PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat *params);
4787
4788
4789
4790
4791
4792__attribute__((visibility("default"))) void glBufferParameteriAPPLE (GLenum target, GLenum pname, GLint param);
4793__attribute__((visibility("default"))) void glFlushMappedBufferRangeAPPLE (GLenum target, GLintptr offset, GLsizeiptr size);
4794
4795typedef void ( * PFNGLBUFFERPARAMETERIAPPLEPROC) (GLenum target, GLenum pname, GLint param);
4796typedef void ( * PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC) (GLenum target, GLintptr offset, GLsizeiptr size);
4797
4798
4799
4800
4801
4802__attribute__((visibility("default"))) void glProgramLocalParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
4803__attribute__((visibility("default"))) void glProgramLocalParameterI4ivNV (GLenum target, GLuint index, const GLint *params);
4804__attribute__((visibility("default"))) void glProgramLocalParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params);
4805__attribute__((visibility("default"))) void glProgramLocalParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
4806__attribute__((visibility("default"))) void glProgramLocalParameterI4uivNV (GLenum target, GLuint index, const GLuint *params);
4807__attribute__((visibility("default"))) void glProgramLocalParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params);
4808__attribute__((visibility("default"))) void glProgramEnvParameterI4iNV (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
4809__attribute__((visibility("default"))) void glProgramEnvParameterI4ivNV (GLenum target, GLuint index, const GLint *params);
4810__attribute__((visibility("default"))) void glProgramEnvParametersI4ivNV (GLenum target, GLuint index, GLsizei count, const GLint *params);
4811__attribute__((visibility("default"))) void glProgramEnvParameterI4uiNV (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
4812__attribute__((visibility("default"))) void glProgramEnvParameterI4uivNV (GLenum target, GLuint index, const GLuint *params);
4813__attribute__((visibility("default"))) void glProgramEnvParametersI4uivNV (GLenum target, GLuint index, GLsizei count, const GLuint *params);
4814__attribute__((visibility("default"))) void glGetProgramLocalParameterIivNV (GLenum target, GLuint index, GLint *params);
4815__attribute__((visibility("default"))) void glGetProgramLocalParameterIuivNV (GLenum target, GLuint index, GLuint *params);
4816__attribute__((visibility("default"))) void glGetProgramEnvParameterIivNV (GLenum target, GLuint index, GLint *params);
4817__attribute__((visibility("default"))) void glGetProgramEnvParameterIuivNV (GLenum target, GLuint index, GLuint *params);
4818
4819typedef void ( * PFNGLPROGRAMLOCALPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
4820typedef void ( * PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params);
4821typedef void ( * PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params);
4822typedef void ( * PFNGLPROGRAMLOCALPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
4823typedef void ( * PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params);
4824typedef void ( * PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params);
4825typedef void ( * PFNGLPROGRAMENVPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
4826typedef void ( * PFNGLPROGRAMENVPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params);
4827typedef void ( * PFNGLPROGRAMENVPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params);
4828typedef void ( * PFNGLPROGRAMENVPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
4829typedef void ( * PFNGLPROGRAMENVPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params);
4830typedef void ( * PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params);
4831typedef void ( * PFNGLGETPROGRAMLOCALPARAMETERIIVNVPROC) (GLenum target, GLuint index, GLint *params);
4832typedef void ( * PFNGLGETPROGRAMLOCALPARAMETERIUIVNVPROC) (GLenum target, GLuint index, GLuint *params);
4833typedef void ( * PFNGLGETPROGRAMENVPARAMETERIIVNVPROC) (GLenum target, GLuint index, GLint *params);
4834typedef void ( * PFNGLGETPROGRAMENVPARAMETERIUIVNVPROC) (GLenum target, GLuint index, GLuint *params);
4835
4836
4837
4838
4839
4840__attribute__((visibility("default"))) void glProgramVertexLimitNV (GLenum target, GLint limit);
4841__attribute__((visibility("default"))) void glFramebufferTextureEXT (GLenum target, GLenum attachment, GLuint texture, GLint level);
4842__attribute__((visibility("default"))) void glFramebufferTextureLayerEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
4843__attribute__((visibility("default"))) void glFramebufferTextureFaceEXT (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
4844
4845typedef void ( * PFNGLPROGRAMVERTEXLIMITNVPROC) (GLenum target, GLint limit);
4846typedef void ( * PFNGLFRAMEBUFFERTEXTUREEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);
4847typedef void ( * PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
4848typedef void ( * PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);
4849
4850
4851
4852
4853
4854__attribute__((visibility("default"))) void glProgramParameteriEXT (GLuint program, GLenum pname, GLint value);
4855
4856typedef void ( * PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);
4857
4858
4859
4860
4861
4862__attribute__((visibility("default"))) void glVertexAttribI1iEXT (GLuint index, GLint x);
4863__attribute__((visibility("default"))) void glVertexAttribI2iEXT (GLuint index, GLint x, GLint y);
4864__attribute__((visibility("default"))) void glVertexAttribI3iEXT (GLuint index, GLint x, GLint y, GLint z);
4865__attribute__((visibility("default"))) void glVertexAttribI4iEXT (GLuint index, GLint x, GLint y, GLint z, GLint w);
4866__attribute__((visibility("default"))) void glVertexAttribI1uiEXT (GLuint index, GLuint x);
4867__attribute__((visibility("default"))) void glVertexAttribI2uiEXT (GLuint index, GLuint x, GLuint y);
4868__attribute__((visibility("default"))) void glVertexAttribI3uiEXT (GLuint index, GLuint x, GLuint y, GLuint z);
4869__attribute__((visibility("default"))) void glVertexAttribI4uiEXT (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
4870__attribute__((visibility("default"))) void glVertexAttribI1ivEXT (GLuint index, const GLint *v);
4871__attribute__((visibility("default"))) void glVertexAttribI2ivEXT (GLuint index, const GLint *v);
4872__attribute__((visibility("default"))) void glVertexAttribI3ivEXT (GLuint index, const GLint *v);
4873__attribute__((visibility("default"))) void glVertexAttribI4ivEXT (GLuint index, const GLint *v);
4874__attribute__((visibility("default"))) void glVertexAttribI1uivEXT (GLuint index, const GLuint *v);
4875__attribute__((visibility("default"))) void glVertexAttribI2uivEXT (GLuint index, const GLuint *v);
4876__attribute__((visibility("default"))) void glVertexAttribI3uivEXT (GLuint index, const GLuint *v);
4877__attribute__((visibility("default"))) void glVertexAttribI4uivEXT (GLuint index, const GLuint *v);
4878__attribute__((visibility("default"))) void glVertexAttribI4bvEXT (GLuint index, const GLbyte *v);
4879__attribute__((visibility("default"))) void glVertexAttribI4svEXT (GLuint index, const GLshort *v);
4880__attribute__((visibility("default"))) void glVertexAttribI4ubvEXT (GLuint index, const GLubyte *v);
4881__attribute__((visibility("default"))) void glVertexAttribI4usvEXT (GLuint index, const GLushort *v);
4882__attribute__((visibility("default"))) void glVertexAttribIPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
4883__attribute__((visibility("default"))) void glGetVertexAttribIivEXT (GLuint index, GLenum pname, GLint *params);
4884__attribute__((visibility("default"))) void glGetVertexAttribIuivEXT (GLuint index, GLenum pname, GLuint *params);
4885
4886typedef void ( * PFNGLVERTEXATTRIBI1IEXTPROC) (GLuint index, GLint x);
4887typedef void ( * PFNGLVERTEXATTRIBI2IEXTPROC) (GLuint index, GLint x, GLint y);
4888typedef void ( * PFNGLVERTEXATTRIBI3IEXTPROC) (GLuint index, GLint x, GLint y, GLint z);
4889typedef void ( * PFNGLVERTEXATTRIBI4IEXTPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);
4890typedef void ( * PFNGLVERTEXATTRIBI1UIEXTPROC) (GLuint index, GLuint x);
4891typedef void ( * PFNGLVERTEXATTRIBI2UIEXTPROC) (GLuint index, GLuint x, GLuint y);
4892typedef void ( * PFNGLVERTEXATTRIBI3UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z);
4893typedef void ( * PFNGLVERTEXATTRIBI4UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
4894typedef void ( * PFNGLVERTEXATTRIBI1IVEXTPROC) (GLuint index, const GLint *v);
4895typedef void ( * PFNGLVERTEXATTRIBI2IVEXTPROC) (GLuint index, const GLint *v);
4896typedef void ( * PFNGLVERTEXATTRIBI3IVEXTPROC) (GLuint index, const GLint *v);
4897typedef void ( * PFNGLVERTEXATTRIBI4IVEXTPROC) (GLuint index, const GLint *v);
4898typedef void ( * PFNGLVERTEXATTRIBI1UIVEXTPROC) (GLuint index, const GLuint *v);
4899typedef void ( * PFNGLVERTEXATTRIBI2UIVEXTPROC) (GLuint index, const GLuint *v);
4900typedef void ( * PFNGLVERTEXATTRIBI3UIVEXTPROC) (GLuint index, const GLuint *v);
4901typedef void ( * PFNGLVERTEXATTRIBI4UIVEXTPROC) (GLuint index, const GLuint *v);
4902typedef void ( * PFNGLVERTEXATTRIBI4BVEXTPROC) (GLuint index, const GLbyte *v);
4903typedef void ( * PFNGLVERTEXATTRIBI4SVEXTPROC) (GLuint index, const GLshort *v);
4904typedef void ( * PFNGLVERTEXATTRIBI4UBVEXTPROC) (GLuint index, const GLubyte *v);
4905typedef void ( * PFNGLVERTEXATTRIBI4USVEXTPROC) (GLuint index, const GLushort *v);
4906typedef void ( * PFNGLVERTEXATTRIBIPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
4907typedef void ( * PFNGLGETVERTEXATTRIBIIVEXTPROC) (GLuint index, GLenum pname, GLint *params);
4908typedef void ( * PFNGLGETVERTEXATTRIBIUIVEXTPROC) (GLuint index, GLenum pname, GLuint *params);
4909
4910
4911
4912
4913
4914__attribute__((visibility("default"))) void glGetUniformuivEXT (GLuint program, GLint location, GLuint *params);
4915__attribute__((visibility("default"))) void glBindFragDataLocationEXT (GLuint program, GLuint color, const GLchar *name);
4916__attribute__((visibility("default"))) GLint glGetFragDataLocationEXT (GLuint program, const GLchar *name);
4917__attribute__((visibility("default"))) void glUniform1uiEXT (GLint location, GLuint v0);
4918__attribute__((visibility("default"))) void glUniform2uiEXT (GLint location, GLuint v0, GLuint v1);
4919__attribute__((visibility("default"))) void glUniform3uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2);
4920__attribute__((visibility("default"))) void glUniform4uiEXT (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
4921__attribute__((visibility("default"))) void glUniform1uivEXT (GLint location, GLsizei count, const GLuint *value);
4922__attribute__((visibility("default"))) void glUniform2uivEXT (GLint location, GLsizei count, const GLuint *value);
4923__attribute__((visibility("default"))) void glUniform3uivEXT (GLint location, GLsizei count, const GLuint *value);
4924__attribute__((visibility("default"))) void glUniform4uivEXT (GLint location, GLsizei count, const GLuint *value);
4925
4926typedef void ( * PFNGLGETUNIFORMUIVEXTPROC) (GLuint program, GLint location, GLuint *params);
4927typedef void ( * PFNGLBINDFRAGDATALOCATIONEXTPROC) (GLuint program, GLuint color, const GLchar *name);
4928typedef GLint ( * PFNGLGETFRAGDATALOCATIONEXTPROC) (GLuint program, const GLchar *name);
4929typedef void ( * PFNGLUNIFORM1UIEXTPROC) (GLint location, GLuint v0);
4930typedef void ( * PFNGLUNIFORM2UIEXTPROC) (GLint location, GLuint v0, GLuint v1);
4931typedef void ( * PFNGLUNIFORM3UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);
4932typedef void ( * PFNGLUNIFORM4UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
4933typedef void ( * PFNGLUNIFORM1UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
4934typedef void ( * PFNGLUNIFORM2UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
4935typedef void ( * PFNGLUNIFORM3UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
4936typedef void ( * PFNGLUNIFORM4UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);
4937
4938
4939
4940
4941
4942__attribute__((visibility("default"))) void glDrawArraysInstancedEXT (GLenum mode, GLint start, GLsizei count, GLsizei primcount);
4943__attribute__((visibility("default"))) void glDrawElementsInstancedEXT (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
4944
4945typedef void ( * PFNGLDRAWARRAYSINSTANCEDEXTPROC) (GLenum mode, GLint start, GLsizei count, GLsizei primcount);
4946typedef void ( * PFNGLDRAWELEMENTSINSTANCEDEXTPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
4947# 9909 "../../include/GL/glext.h"
4948__attribute__((visibility("default"))) void glTexBufferEXT (GLenum target, GLenum internalformat, GLuint buffer);
4949
4950typedef void ( * PFNGLTEXBUFFEREXTPROC) (GLenum target, GLenum internalformat, GLuint buffer);
4951# 9929 "../../include/GL/glext.h"
4952__attribute__((visibility("default"))) void glDepthRangedNV (GLdouble zNear, GLdouble zFar);
4953__attribute__((visibility("default"))) void glClearDepthdNV (GLdouble depth);
4954__attribute__((visibility("default"))) void glDepthBoundsdNV (GLdouble zmin, GLdouble zmax);
4955
4956typedef void ( * PFNGLDEPTHRANGEDNVPROC) (GLdouble zNear, GLdouble zFar);
4957typedef void ( * PFNGLCLEARDEPTHDNVPROC) (GLdouble depth);
4958typedef void ( * PFNGLDEPTHBOUNDSDNVPROC) (GLdouble zmin, GLdouble zmax);
4959# 9945 "../../include/GL/glext.h"
4960__attribute__((visibility("default"))) void glRenderbufferStorageMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
4961
4962typedef void ( * PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
4963# 9961 "../../include/GL/glext.h"
4964__attribute__((visibility("default"))) void glProgramBufferParametersfvNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params);
4965__attribute__((visibility("default"))) void glProgramBufferParametersIivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params);
4966__attribute__((visibility("default"))) void glProgramBufferParametersIuivNV (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params);
4967
4968typedef void ( * PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params);
4969typedef void ( * PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params);
4970typedef void ( * PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params);
4971
4972
4973
4974
4975
4976__attribute__((visibility("default"))) void glColorMaskIndexedEXT (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
4977__attribute__((visibility("default"))) void glGetBooleanIndexedvEXT (GLenum target, GLuint index, GLboolean *data);
4978__attribute__((visibility("default"))) void glGetIntegerIndexedvEXT (GLenum target, GLuint index, GLint *data);
4979__attribute__((visibility("default"))) void glEnableIndexedEXT (GLenum target, GLuint index);
4980__attribute__((visibility("default"))) void glDisableIndexedEXT (GLenum target, GLuint index);
4981__attribute__((visibility("default"))) GLboolean glIsEnabledIndexedEXT (GLenum target, GLuint index);
4982
4983typedef void ( * PFNGLCOLORMASKINDEXEDEXTPROC) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
4984typedef void ( * PFNGLGETBOOLEANINDEXEDVEXTPROC) (GLenum target, GLuint index, GLboolean *data);
4985typedef void ( * PFNGLGETINTEGERINDEXEDVEXTPROC) (GLenum target, GLuint index, GLint *data);
4986typedef void ( * PFNGLENABLEINDEXEDEXTPROC) (GLenum target, GLuint index);
4987typedef void ( * PFNGLDISABLEINDEXEDEXTPROC) (GLenum target, GLuint index);
4988typedef GLboolean ( * PFNGLISENABLEDINDEXEDEXTPROC) (GLenum target, GLuint index);
4989
4990
4991
4992
4993
4994__attribute__((visibility("default"))) void glBeginTransformFeedbackNV (GLenum primitiveMode);
4995__attribute__((visibility("default"))) void glEndTransformFeedbackNV (void);
4996__attribute__((visibility("default"))) void glTransformFeedbackAttribsNV (GLuint count, const GLint *attribs, GLenum bufferMode);
4997__attribute__((visibility("default"))) void glBindBufferRangeNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
4998__attribute__((visibility("default"))) void glBindBufferOffsetNV (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
4999__attribute__((visibility("default"))) void glBindBufferBaseNV (GLenum target, GLuint index, GLuint buffer);
5000__attribute__((visibility("default"))) void glTransformFeedbackVaryingsNV (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode);
5001__attribute__((visibility("default"))) void glActiveVaryingNV (GLuint program, const GLchar *name);
5002__attribute__((visibility("default"))) GLint glGetVaryingLocationNV (GLuint program, const GLchar *name);
5003__attribute__((visibility("default"))) void glGetActiveVaryingNV (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
5004__attribute__((visibility("default"))) void glGetTransformFeedbackVaryingNV (GLuint program, GLuint index, GLint *location);
5005__attribute__((visibility("default"))) void glTransformFeedbackStreamAttribsNV (GLsizei count, const GLint *attribs, GLsizei nbuffers, const GLint *bufstreams, GLenum bufferMode);
5006
5007typedef void ( * PFNGLBEGINTRANSFORMFEEDBACKNVPROC) (GLenum primitiveMode);
5008typedef void ( * PFNGLENDTRANSFORMFEEDBACKNVPROC) (void);
5009typedef void ( * PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC) (GLuint count, const GLint *attribs, GLenum bufferMode);
5010typedef void ( * PFNGLBINDBUFFERRANGENVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
5011typedef void ( * PFNGLBINDBUFFEROFFSETNVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
5012typedef void ( * PFNGLBINDBUFFERBASENVPROC) (GLenum target, GLuint index, GLuint buffer);
5013typedef void ( * PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC) (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode);
5014typedef void ( * PFNGLACTIVEVARYINGNVPROC) (GLuint program, const GLchar *name);
5015typedef GLint ( * PFNGLGETVARYINGLOCATIONNVPROC) (GLuint program, const GLchar *name);
5016typedef void ( * PFNGLGETACTIVEVARYINGNVPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
5017typedef void ( * PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC) (GLuint program, GLuint index, GLint *location);
5018typedef void ( * PFNGLTRANSFORMFEEDBACKSTREAMATTRIBSNVPROC) (GLsizei count, const GLint *attribs, GLsizei nbuffers, const GLint *bufstreams, GLenum bufferMode);
5019
5020
5021
5022
5023
5024__attribute__((visibility("default"))) void glUniformBufferEXT (GLuint program, GLint location, GLuint buffer);
5025__attribute__((visibility("default"))) GLint glGetUniformBufferSizeEXT (GLuint program, GLint location);
5026__attribute__((visibility("default"))) GLintptr glGetUniformOffsetEXT (GLuint program, GLint location);
5027
5028typedef void ( * PFNGLUNIFORMBUFFEREXTPROC) (GLuint program, GLint location, GLuint buffer);
5029typedef GLint ( * PFNGLGETUNIFORMBUFFERSIZEEXTPROC) (GLuint program, GLint location);
5030typedef GLintptr ( * PFNGLGETUNIFORMOFFSETEXTPROC) (GLuint program, GLint location);
5031
5032
5033
5034
5035
5036__attribute__((visibility("default"))) void glTexParameterIivEXT (GLenum target, GLenum pname, const GLint *params);
5037__attribute__((visibility("default"))) void glTexParameterIuivEXT (GLenum target, GLenum pname, const GLuint *params);
5038__attribute__((visibility("default"))) void glGetTexParameterIivEXT (GLenum target, GLenum pname, GLint *params);
5039__attribute__((visibility("default"))) void glGetTexParameterIuivEXT (GLenum target, GLenum pname, GLuint *params);
5040__attribute__((visibility("default"))) void glClearColorIiEXT (GLint red, GLint green, GLint blue, GLint alpha);
5041__attribute__((visibility("default"))) void glClearColorIuiEXT (GLuint red, GLuint green, GLuint blue, GLuint alpha);
5042
5043typedef void ( * PFNGLTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);
5044typedef void ( * PFNGLTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, const GLuint *params);
5045typedef void ( * PFNGLGETTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
5046typedef void ( * PFNGLGETTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, GLuint *params);
5047typedef void ( * PFNGLCLEARCOLORIIEXTPROC) (GLint red, GLint green, GLint blue, GLint alpha);
5048typedef void ( * PFNGLCLEARCOLORIUIEXTPROC) (GLuint red, GLuint green, GLuint blue, GLuint alpha);
5049
5050
5051
5052
5053
5054__attribute__((visibility("default"))) void glFrameTerminatorGREMEDY (void);
5055
5056typedef void ( * PFNGLFRAMETERMINATORGREMEDYPROC) (void);
5057
5058
5059
5060
5061
5062__attribute__((visibility("default"))) void glBeginConditionalRenderNV (GLuint id, GLenum mode);
5063__attribute__((visibility("default"))) void glEndConditionalRenderNV (void);
5064
5065typedef void ( * PFNGLBEGINCONDITIONALRENDERNVPROC) (GLuint id, GLenum mode);
5066typedef void ( * PFNGLENDCONDITIONALRENDERNVPROC) (void);
5067
5068
5069
5070
5071
5072__attribute__((visibility("default"))) void glPresentFrameKeyedNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1);
5073__attribute__((visibility("default"))) void glPresentFrameDualFillNV (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3);
5074__attribute__((visibility("default"))) void glGetVideoivNV (GLuint video_slot, GLenum pname, GLint *params);
5075__attribute__((visibility("default"))) void glGetVideouivNV (GLuint video_slot, GLenum pname, GLuint *params);
5076__attribute__((visibility("default"))) void glGetVideoi64vNV (GLuint video_slot, GLenum pname, GLint64EXT *params);
5077__attribute__((visibility("default"))) void glGetVideoui64vNV (GLuint video_slot, GLenum pname, GLuint64EXT *params);
5078
5079typedef void ( * PFNGLPRESENTFRAMEKEYEDNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1);
5080typedef void ( * PFNGLPRESENTFRAMEDUALFILLNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3);
5081typedef void ( * PFNGLGETVIDEOIVNVPROC) (GLuint video_slot, GLenum pname, GLint *params);
5082typedef void ( * PFNGLGETVIDEOUIVNVPROC) (GLuint video_slot, GLenum pname, GLuint *params);
5083typedef void ( * PFNGLGETVIDEOI64VNVPROC) (GLuint video_slot, GLenum pname, GLint64EXT *params);
5084typedef void ( * PFNGLGETVIDEOUI64VNVPROC) (GLuint video_slot, GLenum pname, GLuint64EXT *params);
5085
5086
5087
5088
5089
5090__attribute__((visibility("default"))) void glBeginTransformFeedbackEXT (GLenum primitiveMode);
5091__attribute__((visibility("default"))) void glEndTransformFeedbackEXT (void);
5092__attribute__((visibility("default"))) void glBindBufferRangeEXT (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
5093__attribute__((visibility("default"))) void glBindBufferOffsetEXT (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
5094__attribute__((visibility("default"))) void glBindBufferBaseEXT (GLenum target, GLuint index, GLuint buffer);
5095__attribute__((visibility("default"))) void glTransformFeedbackVaryingsEXT (GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode);
5096__attribute__((visibility("default"))) void glGetTransformFeedbackVaryingEXT (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
5097
5098typedef void ( * PFNGLBEGINTRANSFORMFEEDBACKEXTPROC) (GLenum primitiveMode);
5099typedef void ( * PFNGLENDTRANSFORMFEEDBACKEXTPROC) (void);
5100typedef void ( * PFNGLBINDBUFFERRANGEEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
5101typedef void ( * PFNGLBINDBUFFEROFFSETEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);
5102typedef void ( * PFNGLBINDBUFFERBASEEXTPROC) (GLenum target, GLuint index, GLuint buffer);
5103typedef void ( * PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC) (GLuint program, GLsizei count, const GLchar* *varyings, GLenum bufferMode);
5104typedef void ( * PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
5105
5106
5107
5108
5109
5110__attribute__((visibility("default"))) void glClientAttribDefaultEXT (GLbitfield mask);
5111__attribute__((visibility("default"))) void glPushClientAttribDefaultEXT (GLbitfield mask);
5112__attribute__((visibility("default"))) void glMatrixLoadfEXT (GLenum mode, const GLfloat *m);
5113__attribute__((visibility("default"))) void glMatrixLoaddEXT (GLenum mode, const GLdouble *m);
5114__attribute__((visibility("default"))) void glMatrixMultfEXT (GLenum mode, const GLfloat *m);
5115__attribute__((visibility("default"))) void glMatrixMultdEXT (GLenum mode, const GLdouble *m);
5116__attribute__((visibility("default"))) void glMatrixLoadIdentityEXT (GLenum mode);
5117__attribute__((visibility("default"))) void glMatrixRotatefEXT (GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
5118__attribute__((visibility("default"))) void glMatrixRotatedEXT (GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
5119__attribute__((visibility("default"))) void glMatrixScalefEXT (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
5120__attribute__((visibility("default"))) void glMatrixScaledEXT (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
5121__attribute__((visibility("default"))) void glMatrixTranslatefEXT (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
5122__attribute__((visibility("default"))) void glMatrixTranslatedEXT (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
5123__attribute__((visibility("default"))) void glMatrixFrustumEXT (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
5124__attribute__((visibility("default"))) void glMatrixOrthoEXT (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
5125__attribute__((visibility("default"))) void glMatrixPopEXT (GLenum mode);
5126__attribute__((visibility("default"))) void glMatrixPushEXT (GLenum mode);
5127__attribute__((visibility("default"))) void glMatrixLoadTransposefEXT (GLenum mode, const GLfloat *m);
5128__attribute__((visibility("default"))) void glMatrixLoadTransposedEXT (GLenum mode, const GLdouble *m);
5129__attribute__((visibility("default"))) void glMatrixMultTransposefEXT (GLenum mode, const GLfloat *m);
5130__attribute__((visibility("default"))) void glMatrixMultTransposedEXT (GLenum mode, const GLdouble *m);
5131__attribute__((visibility("default"))) void glTextureParameterfEXT (GLuint texture, GLenum target, GLenum pname, GLfloat param);
5132__attribute__((visibility("default"))) void glTextureParameterfvEXT (GLuint texture, GLenum target, GLenum pname, const GLfloat *params);
5133__attribute__((visibility("default"))) void glTextureParameteriEXT (GLuint texture, GLenum target, GLenum pname, GLint param);
5134__attribute__((visibility("default"))) void glTextureParameterivEXT (GLuint texture, GLenum target, GLenum pname, const GLint *params);
5135__attribute__((visibility("default"))) void glTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5136__attribute__((visibility("default"))) void glTextureImage2DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5137__attribute__((visibility("default"))) void glTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
5138__attribute__((visibility("default"))) void glTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
5139__attribute__((visibility("default"))) void glCopyTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
5140__attribute__((visibility("default"))) void glCopyTextureImage2DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
5141__attribute__((visibility("default"))) void glCopyTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
5142__attribute__((visibility("default"))) void glCopyTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5143__attribute__((visibility("default"))) void glGetTextureImageEXT (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
5144__attribute__((visibility("default"))) void glGetTextureParameterfvEXT (GLuint texture, GLenum target, GLenum pname, GLfloat *params);
5145__attribute__((visibility("default"))) void glGetTextureParameterivEXT (GLuint texture, GLenum target, GLenum pname, GLint *params);
5146__attribute__((visibility("default"))) void glGetTextureLevelParameterfvEXT (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat *params);
5147__attribute__((visibility("default"))) void glGetTextureLevelParameterivEXT (GLuint texture, GLenum target, GLint level, GLenum pname, GLint *params);
5148__attribute__((visibility("default"))) void glTextureImage3DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5149__attribute__((visibility("default"))) void glTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
5150__attribute__((visibility("default"))) void glCopyTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5151__attribute__((visibility("default"))) void glMultiTexParameterfEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
5152__attribute__((visibility("default"))) void glMultiTexParameterfvEXT (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
5153__attribute__((visibility("default"))) void glMultiTexParameteriEXT (GLenum texunit, GLenum target, GLenum pname, GLint param);
5154__attribute__((visibility("default"))) void glMultiTexParameterivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
5155__attribute__((visibility("default"))) void glMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5156__attribute__((visibility("default"))) void glMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5157__attribute__((visibility("default"))) void glMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
5158__attribute__((visibility("default"))) void glMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
5159__attribute__((visibility("default"))) void glCopyMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
5160__attribute__((visibility("default"))) void glCopyMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
5161__attribute__((visibility("default"))) void glCopyMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
5162__attribute__((visibility("default"))) void glCopyMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5163__attribute__((visibility("default"))) void glGetMultiTexImageEXT (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
5164__attribute__((visibility("default"))) void glGetMultiTexParameterfvEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
5165__attribute__((visibility("default"))) void glGetMultiTexParameterivEXT (GLenum texunit, GLenum target, GLenum pname, GLint *params);
5166__attribute__((visibility("default"))) void glGetMultiTexLevelParameterfvEXT (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat *params);
5167__attribute__((visibility("default"))) void glGetMultiTexLevelParameterivEXT (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint *params);
5168__attribute__((visibility("default"))) void glMultiTexImage3DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5169__attribute__((visibility("default"))) void glMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
5170__attribute__((visibility("default"))) void glCopyMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5171__attribute__((visibility("default"))) void glBindMultiTextureEXT (GLenum texunit, GLenum target, GLuint texture);
5172__attribute__((visibility("default"))) void glEnableClientStateIndexedEXT (GLenum array, GLuint index);
5173__attribute__((visibility("default"))) void glDisableClientStateIndexedEXT (GLenum array, GLuint index);
5174__attribute__((visibility("default"))) void glMultiTexCoordPointerEXT (GLenum texunit, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
5175__attribute__((visibility("default"))) void glMultiTexEnvfEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
5176__attribute__((visibility("default"))) void glMultiTexEnvfvEXT (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
5177__attribute__((visibility("default"))) void glMultiTexEnviEXT (GLenum texunit, GLenum target, GLenum pname, GLint param);
5178__attribute__((visibility("default"))) void glMultiTexEnvivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
5179__attribute__((visibility("default"))) void glMultiTexGendEXT (GLenum texunit, GLenum coord, GLenum pname, GLdouble param);
5180__attribute__((visibility("default"))) void glMultiTexGendvEXT (GLenum texunit, GLenum coord, GLenum pname, const GLdouble *params);
5181__attribute__((visibility("default"))) void glMultiTexGenfEXT (GLenum texunit, GLenum coord, GLenum pname, GLfloat param);
5182__attribute__((visibility("default"))) void glMultiTexGenfvEXT (GLenum texunit, GLenum coord, GLenum pname, const GLfloat *params);
5183__attribute__((visibility("default"))) void glMultiTexGeniEXT (GLenum texunit, GLenum coord, GLenum pname, GLint param);
5184__attribute__((visibility("default"))) void glMultiTexGenivEXT (GLenum texunit, GLenum coord, GLenum pname, const GLint *params);
5185__attribute__((visibility("default"))) void glGetMultiTexEnvfvEXT (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
5186__attribute__((visibility("default"))) void glGetMultiTexEnvivEXT (GLenum texunit, GLenum target, GLenum pname, GLint *params);
5187__attribute__((visibility("default"))) void glGetMultiTexGendvEXT (GLenum texunit, GLenum coord, GLenum pname, GLdouble *params);
5188__attribute__((visibility("default"))) void glGetMultiTexGenfvEXT (GLenum texunit, GLenum coord, GLenum pname, GLfloat *params);
5189__attribute__((visibility("default"))) void glGetMultiTexGenivEXT (GLenum texunit, GLenum coord, GLenum pname, GLint *params);
5190__attribute__((visibility("default"))) void glGetFloatIndexedvEXT (GLenum target, GLuint index, GLfloat *data);
5191__attribute__((visibility("default"))) void glGetDoubleIndexedvEXT (GLenum target, GLuint index, GLdouble *data);
5192__attribute__((visibility("default"))) void glGetPointerIndexedvEXT (GLenum target, GLuint index, GLvoid* *data);
5193__attribute__((visibility("default"))) void glCompressedTextureImage3DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *bits);
5194__attribute__((visibility("default"))) void glCompressedTextureImage2DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *bits);
5195__attribute__((visibility("default"))) void glCompressedTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
5196__attribute__((visibility("default"))) void glCompressedTextureSubImage3DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
5197__attribute__((visibility("default"))) void glCompressedTextureSubImage2DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *bits);
5198__attribute__((visibility("default"))) void glCompressedTextureSubImage1DEXT (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
5199__attribute__((visibility("default"))) void glGetCompressedTextureImageEXT (GLuint texture, GLenum target, GLint lod, GLvoid *img);
5200__attribute__((visibility("default"))) void glCompressedMultiTexImage3DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *bits);
5201__attribute__((visibility("default"))) void glCompressedMultiTexImage2DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *bits);
5202__attribute__((visibility("default"))) void glCompressedMultiTexImage1DEXT (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
5203__attribute__((visibility("default"))) void glCompressedMultiTexSubImage3DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
5204__attribute__((visibility("default"))) void glCompressedMultiTexSubImage2DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *bits);
5205__attribute__((visibility("default"))) void glCompressedMultiTexSubImage1DEXT (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
5206__attribute__((visibility("default"))) void glGetCompressedMultiTexImageEXT (GLenum texunit, GLenum target, GLint lod, GLvoid *img);
5207__attribute__((visibility("default"))) void glNamedProgramStringEXT (GLuint program, GLenum target, GLenum format, GLsizei len, const GLvoid *string);
5208__attribute__((visibility("default"))) void glNamedProgramLocalParameter4dEXT (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
5209__attribute__((visibility("default"))) void glNamedProgramLocalParameter4dvEXT (GLuint program, GLenum target, GLuint index, const GLdouble *params);
5210__attribute__((visibility("default"))) void glNamedProgramLocalParameter4fEXT (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
5211__attribute__((visibility("default"))) void glNamedProgramLocalParameter4fvEXT (GLuint program, GLenum target, GLuint index, const GLfloat *params);
5212__attribute__((visibility("default"))) void glGetNamedProgramLocalParameterdvEXT (GLuint program, GLenum target, GLuint index, GLdouble *params);
5213__attribute__((visibility("default"))) void glGetNamedProgramLocalParameterfvEXT (GLuint program, GLenum target, GLuint index, GLfloat *params);
5214__attribute__((visibility("default"))) void glGetNamedProgramivEXT (GLuint program, GLenum target, GLenum pname, GLint *params);
5215__attribute__((visibility("default"))) void glGetNamedProgramStringEXT (GLuint program, GLenum target, GLenum pname, GLvoid *string);
5216__attribute__((visibility("default"))) void glNamedProgramLocalParameters4fvEXT (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat *params);
5217__attribute__((visibility("default"))) void glNamedProgramLocalParameterI4iEXT (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
5218__attribute__((visibility("default"))) void glNamedProgramLocalParameterI4ivEXT (GLuint program, GLenum target, GLuint index, const GLint *params);
5219__attribute__((visibility("default"))) void glNamedProgramLocalParametersI4ivEXT (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint *params);
5220__attribute__((visibility("default"))) void glNamedProgramLocalParameterI4uiEXT (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
5221__attribute__((visibility("default"))) void glNamedProgramLocalParameterI4uivEXT (GLuint program, GLenum target, GLuint index, const GLuint *params);
5222__attribute__((visibility("default"))) void glNamedProgramLocalParametersI4uivEXT (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint *params);
5223__attribute__((visibility("default"))) void glGetNamedProgramLocalParameterIivEXT (GLuint program, GLenum target, GLuint index, GLint *params);
5224__attribute__((visibility("default"))) void glGetNamedProgramLocalParameterIuivEXT (GLuint program, GLenum target, GLuint index, GLuint *params);
5225__attribute__((visibility("default"))) void glTextureParameterIivEXT (GLuint texture, GLenum target, GLenum pname, const GLint *params);
5226__attribute__((visibility("default"))) void glTextureParameterIuivEXT (GLuint texture, GLenum target, GLenum pname, const GLuint *params);
5227__attribute__((visibility("default"))) void glGetTextureParameterIivEXT (GLuint texture, GLenum target, GLenum pname, GLint *params);
5228__attribute__((visibility("default"))) void glGetTextureParameterIuivEXT (GLuint texture, GLenum target, GLenum pname, GLuint *params);
5229__attribute__((visibility("default"))) void glMultiTexParameterIivEXT (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
5230__attribute__((visibility("default"))) void glMultiTexParameterIuivEXT (GLenum texunit, GLenum target, GLenum pname, const GLuint *params);
5231__attribute__((visibility("default"))) void glGetMultiTexParameterIivEXT (GLenum texunit, GLenum target, GLenum pname, GLint *params);
5232__attribute__((visibility("default"))) void glGetMultiTexParameterIuivEXT (GLenum texunit, GLenum target, GLenum pname, GLuint *params);
5233__attribute__((visibility("default"))) void glProgramUniform1fEXT (GLuint program, GLint location, GLfloat v0);
5234__attribute__((visibility("default"))) void glProgramUniform2fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1);
5235__attribute__((visibility("default"))) void glProgramUniform3fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
5236__attribute__((visibility("default"))) void glProgramUniform4fEXT (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
5237__attribute__((visibility("default"))) void glProgramUniform1iEXT (GLuint program, GLint location, GLint v0);
5238__attribute__((visibility("default"))) void glProgramUniform2iEXT (GLuint program, GLint location, GLint v0, GLint v1);
5239__attribute__((visibility("default"))) void glProgramUniform3iEXT (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
5240__attribute__((visibility("default"))) void glProgramUniform4iEXT (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
5241__attribute__((visibility("default"))) void glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5242__attribute__((visibility("default"))) void glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5243__attribute__((visibility("default"))) void glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5244__attribute__((visibility("default"))) void glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5245__attribute__((visibility("default"))) void glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
5246__attribute__((visibility("default"))) void glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
5247__attribute__((visibility("default"))) void glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
5248__attribute__((visibility("default"))) void glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
5249__attribute__((visibility("default"))) void glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5250__attribute__((visibility("default"))) void glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5251__attribute__((visibility("default"))) void glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5252__attribute__((visibility("default"))) void glProgramUniformMatrix2x3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5253__attribute__((visibility("default"))) void glProgramUniformMatrix3x2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5254__attribute__((visibility("default"))) void glProgramUniformMatrix2x4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5255__attribute__((visibility("default"))) void glProgramUniformMatrix4x2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5256__attribute__((visibility("default"))) void glProgramUniformMatrix3x4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5257__attribute__((visibility("default"))) void glProgramUniformMatrix4x3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5258__attribute__((visibility("default"))) void glProgramUniform1uiEXT (GLuint program, GLint location, GLuint v0);
5259__attribute__((visibility("default"))) void glProgramUniform2uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1);
5260__attribute__((visibility("default"))) void glProgramUniform3uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
5261__attribute__((visibility("default"))) void glProgramUniform4uiEXT (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
5262__attribute__((visibility("default"))) void glProgramUniform1uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
5263__attribute__((visibility("default"))) void glProgramUniform2uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
5264__attribute__((visibility("default"))) void glProgramUniform3uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
5265__attribute__((visibility("default"))) void glProgramUniform4uivEXT (GLuint program, GLint location, GLsizei count, const GLuint *value);
5266__attribute__((visibility("default"))) void glNamedBufferDataEXT (GLuint buffer, GLsizeiptr size, const GLvoid *data, GLenum usage);
5267__attribute__((visibility("default"))) void glNamedBufferSubDataEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, const GLvoid *data);
5268__attribute__((visibility("default"))) GLvoid* glMapNamedBufferEXT (GLuint buffer, GLenum access);
5269__attribute__((visibility("default"))) GLboolean glUnmapNamedBufferEXT (GLuint buffer);
5270__attribute__((visibility("default"))) GLvoid* glMapNamedBufferRangeEXT (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
5271__attribute__((visibility("default"))) void glFlushMappedNamedBufferRangeEXT (GLuint buffer, GLintptr offset, GLsizeiptr length);
5272__attribute__((visibility("default"))) void glNamedCopyBufferSubDataEXT (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
5273__attribute__((visibility("default"))) void glGetNamedBufferParameterivEXT (GLuint buffer, GLenum pname, GLint *params);
5274__attribute__((visibility("default"))) void glGetNamedBufferPointervEXT (GLuint buffer, GLenum pname, GLvoid* *params);
5275__attribute__((visibility("default"))) void glGetNamedBufferSubDataEXT (GLuint buffer, GLintptr offset, GLsizeiptr size, GLvoid *data);
5276__attribute__((visibility("default"))) void glTextureBufferEXT (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
5277__attribute__((visibility("default"))) void glMultiTexBufferEXT (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer);
5278__attribute__((visibility("default"))) void glNamedRenderbufferStorageEXT (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
5279__attribute__((visibility("default"))) void glGetNamedRenderbufferParameterivEXT (GLuint renderbuffer, GLenum pname, GLint *params);
5280__attribute__((visibility("default"))) GLenum glCheckNamedFramebufferStatusEXT (GLuint framebuffer, GLenum target);
5281__attribute__((visibility("default"))) void glNamedFramebufferTexture1DEXT (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
5282__attribute__((visibility("default"))) void glNamedFramebufferTexture2DEXT (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
5283__attribute__((visibility("default"))) void glNamedFramebufferTexture3DEXT (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
5284__attribute__((visibility("default"))) void glNamedFramebufferRenderbufferEXT (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
5285__attribute__((visibility("default"))) void glGetNamedFramebufferAttachmentParameterivEXT (GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
5286__attribute__((visibility("default"))) void glGenerateTextureMipmapEXT (GLuint texture, GLenum target);
5287__attribute__((visibility("default"))) void glGenerateMultiTexMipmapEXT (GLenum texunit, GLenum target);
5288__attribute__((visibility("default"))) void glFramebufferDrawBufferEXT (GLuint framebuffer, GLenum mode);
5289__attribute__((visibility("default"))) void glFramebufferDrawBuffersEXT (GLuint framebuffer, GLsizei n, const GLenum *bufs);
5290__attribute__((visibility("default"))) void glFramebufferReadBufferEXT (GLuint framebuffer, GLenum mode);
5291__attribute__((visibility("default"))) void glGetFramebufferParameterivEXT (GLuint framebuffer, GLenum pname, GLint *params);
5292__attribute__((visibility("default"))) void glNamedRenderbufferStorageMultisampleEXT (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
5293__attribute__((visibility("default"))) void glNamedRenderbufferStorageMultisampleCoverageEXT (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
5294__attribute__((visibility("default"))) void glNamedFramebufferTextureEXT (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
5295__attribute__((visibility("default"))) void glNamedFramebufferTextureLayerEXT (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
5296__attribute__((visibility("default"))) void glNamedFramebufferTextureFaceEXT (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face);
5297__attribute__((visibility("default"))) void glTextureRenderbufferEXT (GLuint texture, GLenum target, GLuint renderbuffer);
5298__attribute__((visibility("default"))) void glMultiTexRenderbufferEXT (GLenum texunit, GLenum target, GLuint renderbuffer);
5299__attribute__((visibility("default"))) void glProgramUniform1dEXT (GLuint program, GLint location, GLdouble x);
5300__attribute__((visibility("default"))) void glProgramUniform2dEXT (GLuint program, GLint location, GLdouble x, GLdouble y);
5301__attribute__((visibility("default"))) void glProgramUniform3dEXT (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z);
5302__attribute__((visibility("default"))) void glProgramUniform4dEXT (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
5303__attribute__((visibility("default"))) void glProgramUniform1dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5304__attribute__((visibility("default"))) void glProgramUniform2dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5305__attribute__((visibility("default"))) void glProgramUniform3dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5306__attribute__((visibility("default"))) void glProgramUniform4dvEXT (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5307__attribute__((visibility("default"))) void glProgramUniformMatrix2dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5308__attribute__((visibility("default"))) void glProgramUniformMatrix3dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5309__attribute__((visibility("default"))) void glProgramUniformMatrix4dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5310__attribute__((visibility("default"))) void glProgramUniformMatrix2x3dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5311__attribute__((visibility("default"))) void glProgramUniformMatrix2x4dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5312__attribute__((visibility("default"))) void glProgramUniformMatrix3x2dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5313__attribute__((visibility("default"))) void glProgramUniformMatrix3x4dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5314__attribute__((visibility("default"))) void glProgramUniformMatrix4x2dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5315__attribute__((visibility("default"))) void glProgramUniformMatrix4x3dvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5316
5317typedef void ( * PFNGLCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);
5318typedef void ( * PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);
5319typedef void ( * PFNGLMATRIXLOADFEXTPROC) (GLenum mode, const GLfloat *m);
5320typedef void ( * PFNGLMATRIXLOADDEXTPROC) (GLenum mode, const GLdouble *m);
5321typedef void ( * PFNGLMATRIXMULTFEXTPROC) (GLenum mode, const GLfloat *m);
5322typedef void ( * PFNGLMATRIXMULTDEXTPROC) (GLenum mode, const GLdouble *m);
5323typedef void ( * PFNGLMATRIXLOADIDENTITYEXTPROC) (GLenum mode);
5324typedef void ( * PFNGLMATRIXROTATEFEXTPROC) (GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
5325typedef void ( * PFNGLMATRIXROTATEDEXTPROC) (GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
5326typedef void ( * PFNGLMATRIXSCALEFEXTPROC) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
5327typedef void ( * PFNGLMATRIXSCALEDEXTPROC) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
5328typedef void ( * PFNGLMATRIXTRANSLATEFEXTPROC) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
5329typedef void ( * PFNGLMATRIXTRANSLATEDEXTPROC) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
5330typedef void ( * PFNGLMATRIXFRUSTUMEXTPROC) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
5331typedef void ( * PFNGLMATRIXORTHOEXTPROC) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
5332typedef void ( * PFNGLMATRIXPOPEXTPROC) (GLenum mode);
5333typedef void ( * PFNGLMATRIXPUSHEXTPROC) (GLenum mode);
5334typedef void ( * PFNGLMATRIXLOADTRANSPOSEFEXTPROC) (GLenum mode, const GLfloat *m);
5335typedef void ( * PFNGLMATRIXLOADTRANSPOSEDEXTPROC) (GLenum mode, const GLdouble *m);
5336typedef void ( * PFNGLMATRIXMULTTRANSPOSEFEXTPROC) (GLenum mode, const GLfloat *m);
5337typedef void ( * PFNGLMATRIXMULTTRANSPOSEDEXTPROC) (GLenum mode, const GLdouble *m);
5338typedef void ( * PFNGLTEXTUREPARAMETERFEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat param);
5339typedef void ( * PFNGLTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLfloat *params);
5340typedef void ( * PFNGLTEXTUREPARAMETERIEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint param);
5341typedef void ( * PFNGLTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint *params);
5342typedef void ( * PFNGLTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5343typedef void ( * PFNGLTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5344typedef void ( * PFNGLTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
5345typedef void ( * PFNGLTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
5346typedef void ( * PFNGLCOPYTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
5347typedef void ( * PFNGLCOPYTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
5348typedef void ( * PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
5349typedef void ( * PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5350typedef void ( * PFNGLGETTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
5351typedef void ( * PFNGLGETTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat *params);
5352typedef void ( * PFNGLGETTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint *params);
5353typedef void ( * PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat *params);
5354typedef void ( * PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLint *params);
5355typedef void ( * PFNGLTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5356typedef void ( * PFNGLTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
5357typedef void ( * PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5358typedef void ( * PFNGLMULTITEXPARAMETERFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
5359typedef void ( * PFNGLMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
5360typedef void ( * PFNGLMULTITEXPARAMETERIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
5361typedef void ( * PFNGLMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
5362typedef void ( * PFNGLMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5363typedef void ( * PFNGLMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5364typedef void ( * PFNGLMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
5365typedef void ( * PFNGLMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
5366typedef void ( * PFNGLCOPYMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
5367typedef void ( * PFNGLCOPYMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
5368typedef void ( * PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
5369typedef void ( * PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5370typedef void ( * PFNGLGETMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
5371typedef void ( * PFNGLGETMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
5372typedef void ( * PFNGLGETMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
5373typedef void ( * PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat *params);
5374typedef void ( * PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint *params);
5375typedef void ( * PFNGLMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
5376typedef void ( * PFNGLMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);
5377typedef void ( * PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
5378typedef void ( * PFNGLBINDMULTITEXTUREEXTPROC) (GLenum texunit, GLenum target, GLuint texture);
5379typedef void ( * PFNGLENABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);
5380typedef void ( * PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);
5381typedef void ( * PFNGLMULTITEXCOORDPOINTEREXTPROC) (GLenum texunit, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
5382typedef void ( * PFNGLMULTITEXENVFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);
5383typedef void ( * PFNGLMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat *params);
5384typedef void ( * PFNGLMULTITEXENVIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);
5385typedef void ( * PFNGLMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
5386typedef void ( * PFNGLMULTITEXGENDEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble param);
5387typedef void ( * PFNGLMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLdouble *params);
5388typedef void ( * PFNGLMULTITEXGENFEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat param);
5389typedef void ( * PFNGLMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLfloat *params);
5390typedef void ( * PFNGLMULTITEXGENIEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint param);
5391typedef void ( * PFNGLMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLint *params);
5392typedef void ( * PFNGLGETMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat *params);
5393typedef void ( * PFNGLGETMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
5394typedef void ( * PFNGLGETMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble *params);
5395typedef void ( * PFNGLGETMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat *params);
5396typedef void ( * PFNGLGETMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint *params);
5397typedef void ( * PFNGLGETFLOATINDEXEDVEXTPROC) (GLenum target, GLuint index, GLfloat *data);
5398typedef void ( * PFNGLGETDOUBLEINDEXEDVEXTPROC) (GLenum target, GLuint index, GLdouble *data);
5399typedef void ( * PFNGLGETPOINTERINDEXEDVEXTPROC) (GLenum target, GLuint index, GLvoid* *data);
5400typedef void ( * PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *bits);
5401typedef void ( * PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *bits);
5402typedef void ( * PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
5403typedef void ( * PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
5404typedef void ( * PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *bits);
5405typedef void ( * PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
5406typedef void ( * PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint lod, GLvoid *img);
5407typedef void ( * PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *bits);
5408typedef void ( * PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *bits);
5409typedef void ( * PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *bits);
5410typedef void ( * PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *bits);
5411typedef void ( * PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *bits);
5412typedef void ( * PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *bits);
5413typedef void ( * PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint lod, GLvoid *img);
5414typedef void ( * PFNGLNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum format, GLsizei len, const GLvoid *string);
5415typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
5416typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLdouble *params);
5417typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
5418typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLfloat *params);
5419typedef void ( * PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble *params);
5420typedef void ( * PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat *params);
5421typedef void ( * PFNGLGETNAMEDPROGRAMIVEXTPROC) (GLuint program, GLenum target, GLenum pname, GLint *params);
5422typedef void ( * PFNGLGETNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum pname, GLvoid *string);
5423typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat *params);
5424typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC) (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);
5425typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLint *params);
5426typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint *params);
5427typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
5428typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLuint *params);
5429typedef void ( * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint *params);
5430typedef void ( * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLint *params);
5431typedef void ( * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint *params);
5432typedef void ( * PFNGLTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint *params);
5433typedef void ( * PFNGLTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLuint *params);
5434typedef void ( * PFNGLGETTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint *params);
5435typedef void ( * PFNGLGETTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLuint *params);
5436typedef void ( * PFNGLMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint *params);
5437typedef void ( * PFNGLMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLuint *params);
5438typedef void ( * PFNGLGETMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint *params);
5439typedef void ( * PFNGLGETMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLuint *params);
5440typedef void ( * PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat v0);
5441typedef void ( * PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
5442typedef void ( * PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
5443typedef void ( * PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
5444typedef void ( * PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint v0);
5445typedef void ( * PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1);
5446typedef void ( * PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
5447typedef void ( * PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
5448typedef void ( * PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5449typedef void ( * PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5450typedef void ( * PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5451typedef void ( * PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
5452typedef void ( * PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
5453typedef void ( * PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
5454typedef void ( * PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
5455typedef void ( * PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
5456typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5457typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5458typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5459typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5460typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5461typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5462typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5463typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5464typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
5465typedef void ( * PFNGLPROGRAMUNIFORM1UIEXTPROC) (GLuint program, GLint location, GLuint v0);
5466typedef void ( * PFNGLPROGRAMUNIFORM2UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);
5467typedef void ( * PFNGLPROGRAMUNIFORM3UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
5468typedef void ( * PFNGLPROGRAMUNIFORM4UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
5469typedef void ( * PFNGLPROGRAMUNIFORM1UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
5470typedef void ( * PFNGLPROGRAMUNIFORM2UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
5471typedef void ( * PFNGLPROGRAMUNIFORM3UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
5472typedef void ( * PFNGLPROGRAMUNIFORM4UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint *value);
5473typedef void ( * PFNGLNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLsizeiptr size, const GLvoid *data, GLenum usage);
5474typedef void ( * PFNGLNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const GLvoid *data);
5475typedef GLvoid* ( * PFNGLMAPNAMEDBUFFEREXTPROC) (GLuint buffer, GLenum access);
5476typedef GLboolean ( * PFNGLUNMAPNAMEDBUFFEREXTPROC) (GLuint buffer);
5477typedef GLvoid* ( * PFNGLMAPNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);
5478typedef void ( * PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);
5479typedef void ( * PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
5480typedef void ( * PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC) (GLuint buffer, GLenum pname, GLint *params);
5481typedef void ( * PFNGLGETNAMEDBUFFERPOINTERVEXTPROC) (GLuint buffer, GLenum pname, GLvoid* *params);
5482typedef void ( * PFNGLGETNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLvoid *data);
5483typedef void ( * PFNGLTEXTUREBUFFEREXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
5484typedef void ( * PFNGLMULTITEXBUFFEREXTPROC) (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer);
5485typedef void ( * PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);
5486typedef void ( * PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC) (GLuint renderbuffer, GLenum pname, GLint *params);
5487typedef GLenum ( * PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC) (GLuint framebuffer, GLenum target);
5488typedef void ( * PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
5489typedef void ( * PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
5490typedef void ( * PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
5491typedef void ( * PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
5492typedef void ( * PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint *params);
5493typedef void ( * PFNGLGENERATETEXTUREMIPMAPEXTPROC) (GLuint texture, GLenum target);
5494typedef void ( * PFNGLGENERATEMULTITEXMIPMAPEXTPROC) (GLenum texunit, GLenum target);
5495typedef void ( * PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);
5496typedef void ( * PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC) (GLuint framebuffer, GLsizei n, const GLenum *bufs);
5497typedef void ( * PFNGLFRAMEBUFFERREADBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);
5498typedef void ( * PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint *params);
5499typedef void ( * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
5500typedef void ( * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC) (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);
5501typedef void ( * PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);
5502typedef void ( * PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);
5503typedef void ( * PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face);
5504typedef void ( * PFNGLTEXTURERENDERBUFFEREXTPROC) (GLuint texture, GLenum target, GLuint renderbuffer);
5505typedef void ( * PFNGLMULTITEXRENDERBUFFEREXTPROC) (GLenum texunit, GLenum target, GLuint renderbuffer);
5506typedef void ( * PFNGLPROGRAMUNIFORM1DEXTPROC) (GLuint program, GLint location, GLdouble x);
5507typedef void ( * PFNGLPROGRAMUNIFORM2DEXTPROC) (GLuint program, GLint location, GLdouble x, GLdouble y);
5508typedef void ( * PFNGLPROGRAMUNIFORM3DEXTPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z);
5509typedef void ( * PFNGLPROGRAMUNIFORM4DEXTPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
5510typedef void ( * PFNGLPROGRAMUNIFORM1DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5511typedef void ( * PFNGLPROGRAMUNIFORM2DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5512typedef void ( * PFNGLPROGRAMUNIFORM3DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5513typedef void ( * PFNGLPROGRAMUNIFORM4DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble *value);
5514typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5515typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5516typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5517typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X3DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5518typedef void ( * PFNGLPROGRAMUNIFORMMATRIX2X4DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5519typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X2DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5520typedef void ( * PFNGLPROGRAMUNIFORMMATRIX3X4DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5521typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X2DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5522typedef void ( * PFNGLPROGRAMUNIFORMMATRIX4X3DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble *value);
5523# 10533 "../../include/GL/glext.h"
5524__attribute__((visibility("default"))) void glGetMultisamplefvNV (GLenum pname, GLuint index, GLfloat *val);
5525__attribute__((visibility("default"))) void glSampleMaskIndexedNV (GLuint index, GLbitfield mask);
5526__attribute__((visibility("default"))) void glTexRenderbufferNV (GLenum target, GLuint renderbuffer);
5527
5528typedef void ( * PFNGLGETMULTISAMPLEFVNVPROC) (GLenum pname, GLuint index, GLfloat *val);
5529typedef void ( * PFNGLSAMPLEMASKINDEXEDNVPROC) (GLuint index, GLbitfield mask);
5530typedef void ( * PFNGLTEXRENDERBUFFERNVPROC) (GLenum target, GLuint renderbuffer);
5531
5532
5533
5534
5535
5536__attribute__((visibility("default"))) void glBindTransformFeedbackNV (GLenum target, GLuint id);
5537__attribute__((visibility("default"))) void glDeleteTransformFeedbacksNV (GLsizei n, const GLuint *ids);
5538__attribute__((visibility("default"))) void glGenTransformFeedbacksNV (GLsizei n, GLuint *ids);
5539__attribute__((visibility("default"))) GLboolean glIsTransformFeedbackNV (GLuint id);
5540__attribute__((visibility("default"))) void glPauseTransformFeedbackNV (void);
5541__attribute__((visibility("default"))) void glResumeTransformFeedbackNV (void);
5542__attribute__((visibility("default"))) void glDrawTransformFeedbackNV (GLenum mode, GLuint id);
5543
5544typedef void ( * PFNGLBINDTRANSFORMFEEDBACKNVPROC) (GLenum target, GLuint id);
5545typedef void ( * PFNGLDELETETRANSFORMFEEDBACKSNVPROC) (GLsizei n, const GLuint *ids);
5546typedef void ( * PFNGLGENTRANSFORMFEEDBACKSNVPROC) (GLsizei n, GLuint *ids);
5547typedef GLboolean ( * PFNGLISTRANSFORMFEEDBACKNVPROC) (GLuint id);
5548typedef void ( * PFNGLPAUSETRANSFORMFEEDBACKNVPROC) (void);
5549typedef void ( * PFNGLRESUMETRANSFORMFEEDBACKNVPROC) (void);
5550typedef void ( * PFNGLDRAWTRANSFORMFEEDBACKNVPROC) (GLenum mode, GLuint id);
5551# 10569 "../../include/GL/glext.h"
5552__attribute__((visibility("default"))) void glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
5553__attribute__((visibility("default"))) void glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
5554__attribute__((visibility("default"))) void glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
5555__attribute__((visibility("default"))) void glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
5556__attribute__((visibility("default"))) void glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
5557__attribute__((visibility("default"))) void glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
5558__attribute__((visibility("default"))) void glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
5559__attribute__((visibility("default"))) void glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *counterList);
5560__attribute__((visibility("default"))) void glBeginPerfMonitorAMD (GLuint monitor);
5561__attribute__((visibility("default"))) void glEndPerfMonitorAMD (GLuint monitor);
5562__attribute__((visibility("default"))) void glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
5563
5564typedef void ( * PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
5565typedef void ( * PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
5566typedef void ( * PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
5567typedef void ( * PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
5568typedef void ( * PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
5569typedef void ( * PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
5570typedef void ( * PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
5571typedef void ( * PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *counterList);
5572typedef void ( * PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
5573typedef void ( * PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
5574typedef void ( * PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
5575# 10601 "../../include/GL/glext.h"
5576__attribute__((visibility("default"))) void glTessellationFactorAMD (GLfloat factor);
5577__attribute__((visibility("default"))) void glTessellationModeAMD (GLenum mode);
5578
5579typedef void ( * PFNGLTESSELLATIONFACTORAMDPROC) (GLfloat factor);
5580typedef void ( * PFNGLTESSELLATIONMODEAMDPROC) (GLenum mode);
5581
5582
5583
5584
5585
5586__attribute__((visibility("default"))) void glProvokingVertexEXT (GLenum mode);
5587
5588typedef void ( * PFNGLPROVOKINGVERTEXEXTPROC) (GLenum mode);
5589# 10623 "../../include/GL/glext.h"
5590__attribute__((visibility("default"))) void glBlendFuncIndexedAMD (GLuint buf, GLenum src, GLenum dst);
5591__attribute__((visibility("default"))) void glBlendFuncSeparateIndexedAMD (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
5592__attribute__((visibility("default"))) void glBlendEquationIndexedAMD (GLuint buf, GLenum mode);
5593__attribute__((visibility("default"))) void glBlendEquationSeparateIndexedAMD (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
5594
5595typedef void ( * PFNGLBLENDFUNCINDEXEDAMDPROC) (GLuint buf, GLenum src, GLenum dst);
5596typedef void ( * PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
5597typedef void ( * PFNGLBLENDEQUATIONINDEXEDAMDPROC) (GLuint buf, GLenum mode);
5598typedef void ( * PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
5599
5600
5601
5602
5603
5604__attribute__((visibility("default"))) void glTextureRangeAPPLE (GLenum target, GLsizei length, const GLvoid *pointer);
5605__attribute__((visibility("default"))) void glGetTexParameterPointervAPPLE (GLenum target, GLenum pname, GLvoid* *params);
5606
5607typedef void ( * PFNGLTEXTURERANGEAPPLEPROC) (GLenum target, GLsizei length, const GLvoid *pointer);
5608typedef void ( * PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC) (GLenum target, GLenum pname, GLvoid* *params);
5609# 10651 "../../include/GL/glext.h"
5610__attribute__((visibility("default"))) void glEnableVertexAttribAPPLE (GLuint index, GLenum pname);
5611__attribute__((visibility("default"))) void glDisableVertexAttribAPPLE (GLuint index, GLenum pname);
5612__attribute__((visibility("default"))) GLboolean glIsVertexAttribEnabledAPPLE (GLuint index, GLenum pname);
5613__attribute__((visibility("default"))) void glMapVertexAttrib1dAPPLE (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
5614__attribute__((visibility("default"))) void glMapVertexAttrib1fAPPLE (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
5615__attribute__((visibility("default"))) void glMapVertexAttrib2dAPPLE (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
5616__attribute__((visibility("default"))) void glMapVertexAttrib2fAPPLE (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
5617
5618typedef void ( * PFNGLENABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);
5619typedef void ( * PFNGLDISABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);
5620typedef GLboolean ( * PFNGLISVERTEXATTRIBENABLEDAPPLEPROC) (GLuint index, GLenum pname);
5621typedef void ( * PFNGLMAPVERTEXATTRIB1DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
5622typedef void ( * PFNGLMAPVERTEXATTRIB1FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
5623typedef void ( * PFNGLMAPVERTEXATTRIB2DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
5624typedef void ( * PFNGLMAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
5625# 10675 "../../include/GL/glext.h"
5626__attribute__((visibility("default"))) GLenum glObjectPurgeableAPPLE (GLenum objectType, GLuint name, GLenum option);
5627__attribute__((visibility("default"))) GLenum glObjectUnpurgeableAPPLE (GLenum objectType, GLuint name, GLenum option);
5628__attribute__((visibility("default"))) void glGetObjectParameterivAPPLE (GLenum objectType, GLuint name, GLenum pname, GLint *params);
5629
5630typedef GLenum ( * PFNGLOBJECTPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);
5631typedef GLenum ( * PFNGLOBJECTUNPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);
5632typedef void ( * PFNGLGETOBJECTPARAMETERIVAPPLEPROC) (GLenum objectType, GLuint name, GLenum pname, GLint *params);
5633# 10695 "../../include/GL/glext.h"
5634__attribute__((visibility("default"))) void glBeginVideoCaptureNV (GLuint video_capture_slot);
5635__attribute__((visibility("default"))) void glBindVideoCaptureStreamBufferNV (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset);
5636__attribute__((visibility("default"))) void glBindVideoCaptureStreamTextureNV (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture);
5637__attribute__((visibility("default"))) void glEndVideoCaptureNV (GLuint video_capture_slot);
5638__attribute__((visibility("default"))) void glGetVideoCaptureivNV (GLuint video_capture_slot, GLenum pname, GLint *params);
5639__attribute__((visibility("default"))) void glGetVideoCaptureStreamivNV (GLuint video_capture_slot, GLuint stream, GLenum pname, GLint *params);
5640__attribute__((visibility("default"))) void glGetVideoCaptureStreamfvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat *params);
5641__attribute__((visibility("default"))) void glGetVideoCaptureStreamdvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble *params);
5642__attribute__((visibility("default"))) GLenum glVideoCaptureNV (GLuint video_capture_slot, GLuint *sequence_num, GLuint64EXT *capture_time);
5643__attribute__((visibility("default"))) void glVideoCaptureStreamParameterivNV (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint *params);
5644__attribute__((visibility("default"))) void glVideoCaptureStreamParameterfvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat *params);
5645__attribute__((visibility("default"))) void glVideoCaptureStreamParameterdvNV (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble *params);
5646
5647typedef void ( * PFNGLBEGINVIDEOCAPTURENVPROC) (GLuint video_capture_slot);
5648typedef void ( * PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset);
5649typedef void ( * PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture);
5650typedef void ( * PFNGLENDVIDEOCAPTURENVPROC) (GLuint video_capture_slot);
5651typedef void ( * PFNGLGETVIDEOCAPTUREIVNVPROC) (GLuint video_capture_slot, GLenum pname, GLint *params);
5652typedef void ( * PFNGLGETVIDEOCAPTURESTREAMIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLint *params);
5653typedef void ( * PFNGLGETVIDEOCAPTURESTREAMFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat *params);
5654typedef void ( * PFNGLGETVIDEOCAPTURESTREAMDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble *params);
5655typedef GLenum ( * PFNGLVIDEOCAPTURENVPROC) (GLuint video_capture_slot, GLuint *sequence_num, GLuint64EXT *capture_time);
5656typedef void ( * PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint *params);
5657typedef void ( * PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat *params);
5658typedef void ( * PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble *params);
5659
5660
5661
5662
5663
5664__attribute__((visibility("default"))) void glCopyImageSubDataNV (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
5665
5666typedef void ( * PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
5667
5668
5669
5670
5671
5672__attribute__((visibility("default"))) void glUseShaderProgramEXT (GLenum type, GLuint program);
5673__attribute__((visibility("default"))) void glActiveProgramEXT (GLuint program);
5674__attribute__((visibility("default"))) GLuint glCreateShaderProgramEXT (GLenum type, const GLchar *string);
5675
5676typedef void ( * PFNGLUSESHADERPROGRAMEXTPROC) (GLenum type, GLuint program);
5677typedef void ( * PFNGLACTIVEPROGRAMEXTPROC) (GLuint program);
5678typedef GLuint ( * PFNGLCREATESHADERPROGRAMEXTPROC) (GLenum type, const GLchar *string);
5679# 10749 "../../include/GL/glext.h"
5680__attribute__((visibility("default"))) void glMakeBufferResidentNV (GLenum target, GLenum access);
5681__attribute__((visibility("default"))) void glMakeBufferNonResidentNV (GLenum target);
5682__attribute__((visibility("default"))) GLboolean glIsBufferResidentNV (GLenum target);
5683__attribute__((visibility("default"))) void glMakeNamedBufferResidentNV (GLuint buffer, GLenum access);
5684__attribute__((visibility("default"))) void glMakeNamedBufferNonResidentNV (GLuint buffer);
5685__attribute__((visibility("default"))) GLboolean glIsNamedBufferResidentNV (GLuint buffer);
5686__attribute__((visibility("default"))) void glGetBufferParameterui64vNV (GLenum target, GLenum pname, GLuint64EXT *params);
5687__attribute__((visibility("default"))) void glGetNamedBufferParameterui64vNV (GLuint buffer, GLenum pname, GLuint64EXT *params);
5688__attribute__((visibility("default"))) void glGetIntegerui64vNV (GLenum value, GLuint64EXT *result);
5689__attribute__((visibility("default"))) void glUniformui64NV (GLint location, GLuint64EXT value);
5690__attribute__((visibility("default"))) void glUniformui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
5691__attribute__((visibility("default"))) void glGetUniformui64vNV (GLuint program, GLint location, GLuint64EXT *params);
5692__attribute__((visibility("default"))) void glProgramUniformui64NV (GLuint program, GLint location, GLuint64EXT value);
5693__attribute__((visibility("default"))) void glProgramUniformui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5694
5695typedef void ( * PFNGLMAKEBUFFERRESIDENTNVPROC) (GLenum target, GLenum access);
5696typedef void ( * PFNGLMAKEBUFFERNONRESIDENTNVPROC) (GLenum target);
5697typedef GLboolean ( * PFNGLISBUFFERRESIDENTNVPROC) (GLenum target);
5698typedef void ( * PFNGLMAKENAMEDBUFFERRESIDENTNVPROC) (GLuint buffer, GLenum access);
5699typedef void ( * PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC) (GLuint buffer);
5700typedef GLboolean ( * PFNGLISNAMEDBUFFERRESIDENTNVPROC) (GLuint buffer);
5701typedef void ( * PFNGLGETBUFFERPARAMETERUI64VNVPROC) (GLenum target, GLenum pname, GLuint64EXT *params);
5702typedef void ( * PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC) (GLuint buffer, GLenum pname, GLuint64EXT *params);
5703typedef void ( * PFNGLGETINTEGERUI64VNVPROC) (GLenum value, GLuint64EXT *result);
5704typedef void ( * PFNGLUNIFORMUI64NVPROC) (GLint location, GLuint64EXT value);
5705typedef void ( * PFNGLUNIFORMUI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT *value);
5706typedef void ( * PFNGLGETUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLuint64EXT *params);
5707typedef void ( * PFNGLPROGRAMUNIFORMUI64NVPROC) (GLuint program, GLint location, GLuint64EXT value);
5708typedef void ( * PFNGLPROGRAMUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5709
5710
5711
5712
5713
5714__attribute__((visibility("default"))) void glBufferAddressRangeNV (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length);
5715__attribute__((visibility("default"))) void glVertexFormatNV (GLint size, GLenum type, GLsizei stride);
5716__attribute__((visibility("default"))) void glNormalFormatNV (GLenum type, GLsizei stride);
5717__attribute__((visibility("default"))) void glColorFormatNV (GLint size, GLenum type, GLsizei stride);
5718__attribute__((visibility("default"))) void glIndexFormatNV (GLenum type, GLsizei stride);
5719__attribute__((visibility("default"))) void glTexCoordFormatNV (GLint size, GLenum type, GLsizei stride);
5720__attribute__((visibility("default"))) void glEdgeFlagFormatNV (GLsizei stride);
5721__attribute__((visibility("default"))) void glSecondaryColorFormatNV (GLint size, GLenum type, GLsizei stride);
5722__attribute__((visibility("default"))) void glFogCoordFormatNV (GLenum type, GLsizei stride);
5723__attribute__((visibility("default"))) void glVertexAttribFormatNV (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride);
5724__attribute__((visibility("default"))) void glVertexAttribIFormatNV (GLuint index, GLint size, GLenum type, GLsizei stride);
5725__attribute__((visibility("default"))) void glGetIntegerui64i_vNV (GLenum value, GLuint index, GLuint64EXT *result);
5726
5727typedef void ( * PFNGLBUFFERADDRESSRANGENVPROC) (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length);
5728typedef void ( * PFNGLVERTEXFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
5729typedef void ( * PFNGLNORMALFORMATNVPROC) (GLenum type, GLsizei stride);
5730typedef void ( * PFNGLCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
5731typedef void ( * PFNGLINDEXFORMATNVPROC) (GLenum type, GLsizei stride);
5732typedef void ( * PFNGLTEXCOORDFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
5733typedef void ( * PFNGLEDGEFLAGFORMATNVPROC) (GLsizei stride);
5734typedef void ( * PFNGLSECONDARYCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
5735typedef void ( * PFNGLFOGCOORDFORMATNVPROC) (GLenum type, GLsizei stride);
5736typedef void ( * PFNGLVERTEXATTRIBFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride);
5737typedef void ( * PFNGLVERTEXATTRIBIFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride);
5738typedef void ( * PFNGLGETINTEGERUI64I_VNVPROC) (GLenum value, GLuint index, GLuint64EXT *result);
5739
5740
5741
5742
5743
5744__attribute__((visibility("default"))) void glTextureBarrierNV (void);
5745
5746typedef void ( * PFNGLTEXTUREBARRIERNVPROC) (void);
5747# 10833 "../../include/GL/glext.h"
5748__attribute__((visibility("default"))) void glBindImageTextureEXT (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format);
5749__attribute__((visibility("default"))) void glMemoryBarrierEXT (GLbitfield barriers);
5750
5751typedef void ( * PFNGLBINDIMAGETEXTUREEXTPROC) (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format);
5752typedef void ( * PFNGLMEMORYBARRIEREXTPROC) (GLbitfield barriers);
5753
5754
5755
5756
5757
5758__attribute__((visibility("default"))) void glVertexAttribL1dEXT (GLuint index, GLdouble x);
5759__attribute__((visibility("default"))) void glVertexAttribL2dEXT (GLuint index, GLdouble x, GLdouble y);
5760__attribute__((visibility("default"))) void glVertexAttribL3dEXT (GLuint index, GLdouble x, GLdouble y, GLdouble z);
5761__attribute__((visibility("default"))) void glVertexAttribL4dEXT (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
5762__attribute__((visibility("default"))) void glVertexAttribL1dvEXT (GLuint index, const GLdouble *v);
5763__attribute__((visibility("default"))) void glVertexAttribL2dvEXT (GLuint index, const GLdouble *v);
5764__attribute__((visibility("default"))) void glVertexAttribL3dvEXT (GLuint index, const GLdouble *v);
5765__attribute__((visibility("default"))) void glVertexAttribL4dvEXT (GLuint index, const GLdouble *v);
5766__attribute__((visibility("default"))) void glVertexAttribLPointerEXT (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
5767__attribute__((visibility("default"))) void glGetVertexAttribLdvEXT (GLuint index, GLenum pname, GLdouble *params);
5768__attribute__((visibility("default"))) void glVertexArrayVertexAttribLOffsetEXT (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
5769
5770typedef void ( * PFNGLVERTEXATTRIBL1DEXTPROC) (GLuint index, GLdouble x);
5771typedef void ( * PFNGLVERTEXATTRIBL2DEXTPROC) (GLuint index, GLdouble x, GLdouble y);
5772typedef void ( * PFNGLVERTEXATTRIBL3DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);
5773typedef void ( * PFNGLVERTEXATTRIBL4DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
5774typedef void ( * PFNGLVERTEXATTRIBL1DVEXTPROC) (GLuint index, const GLdouble *v);
5775typedef void ( * PFNGLVERTEXATTRIBL2DVEXTPROC) (GLuint index, const GLdouble *v);
5776typedef void ( * PFNGLVERTEXATTRIBL3DVEXTPROC) (GLuint index, const GLdouble *v);
5777typedef void ( * PFNGLVERTEXATTRIBL4DVEXTPROC) (GLuint index, const GLdouble *v);
5778typedef void ( * PFNGLVERTEXATTRIBLPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
5779typedef void ( * PFNGLGETVERTEXATTRIBLDVEXTPROC) (GLuint index, GLenum pname, GLdouble *params);
5780typedef void ( * PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);
5781
5782
5783
5784
5785
5786__attribute__((visibility("default"))) void glProgramSubroutineParametersuivNV (GLenum target, GLsizei count, const GLuint *params);
5787__attribute__((visibility("default"))) void glGetProgramSubroutineParameteruivNV (GLenum target, GLuint index, GLuint *param);
5788
5789typedef void ( * PFNGLPROGRAMSUBROUTINEPARAMETERSUIVNVPROC) (GLenum target, GLsizei count, const GLuint *params);
5790typedef void ( * PFNGLGETPROGRAMSUBROUTINEPARAMETERUIVNVPROC) (GLenum target, GLuint index, GLuint *param);
5791
5792
5793
5794
5795
5796__attribute__((visibility("default"))) void glUniform1i64NV (GLint location, GLint64EXT x);
5797__attribute__((visibility("default"))) void glUniform2i64NV (GLint location, GLint64EXT x, GLint64EXT y);
5798__attribute__((visibility("default"))) void glUniform3i64NV (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
5799__attribute__((visibility("default"))) void glUniform4i64NV (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
5800__attribute__((visibility("default"))) void glUniform1i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
5801__attribute__((visibility("default"))) void glUniform2i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
5802__attribute__((visibility("default"))) void glUniform3i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
5803__attribute__((visibility("default"))) void glUniform4i64vNV (GLint location, GLsizei count, const GLint64EXT *value);
5804__attribute__((visibility("default"))) void glUniform1ui64NV (GLint location, GLuint64EXT x);
5805__attribute__((visibility("default"))) void glUniform2ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y);
5806__attribute__((visibility("default"))) void glUniform3ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
5807__attribute__((visibility("default"))) void glUniform4ui64NV (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
5808__attribute__((visibility("default"))) void glUniform1ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
5809__attribute__((visibility("default"))) void glUniform2ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
5810__attribute__((visibility("default"))) void glUniform3ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
5811__attribute__((visibility("default"))) void glUniform4ui64vNV (GLint location, GLsizei count, const GLuint64EXT *value);
5812__attribute__((visibility("default"))) void glGetUniformi64vNV (GLuint program, GLint location, GLint64EXT *params);
5813__attribute__((visibility("default"))) void glProgramUniform1i64NV (GLuint program, GLint location, GLint64EXT x);
5814__attribute__((visibility("default"))) void glProgramUniform2i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y);
5815__attribute__((visibility("default"))) void glProgramUniform3i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
5816__attribute__((visibility("default"))) void glProgramUniform4i64NV (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
5817__attribute__((visibility("default"))) void glProgramUniform1i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5818__attribute__((visibility("default"))) void glProgramUniform2i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5819__attribute__((visibility("default"))) void glProgramUniform3i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5820__attribute__((visibility("default"))) void glProgramUniform4i64vNV (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5821__attribute__((visibility("default"))) void glProgramUniform1ui64NV (GLuint program, GLint location, GLuint64EXT x);
5822__attribute__((visibility("default"))) void glProgramUniform2ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y);
5823__attribute__((visibility("default"))) void glProgramUniform3ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
5824__attribute__((visibility("default"))) void glProgramUniform4ui64NV (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
5825__attribute__((visibility("default"))) void glProgramUniform1ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5826__attribute__((visibility("default"))) void glProgramUniform2ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5827__attribute__((visibility("default"))) void glProgramUniform3ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5828__attribute__((visibility("default"))) void glProgramUniform4ui64vNV (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5829
5830typedef void ( * PFNGLUNIFORM1I64NVPROC) (GLint location, GLint64EXT x);
5831typedef void ( * PFNGLUNIFORM2I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y);
5832typedef void ( * PFNGLUNIFORM3I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
5833typedef void ( * PFNGLUNIFORM4I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
5834typedef void ( * PFNGLUNIFORM1I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT *value);
5835typedef void ( * PFNGLUNIFORM2I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT *value);
5836typedef void ( * PFNGLUNIFORM3I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT *value);
5837typedef void ( * PFNGLUNIFORM4I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT *value);
5838typedef void ( * PFNGLUNIFORM1UI64NVPROC) (GLint location, GLuint64EXT x);
5839typedef void ( * PFNGLUNIFORM2UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y);
5840typedef void ( * PFNGLUNIFORM3UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
5841typedef void ( * PFNGLUNIFORM4UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
5842typedef void ( * PFNGLUNIFORM1UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT *value);
5843typedef void ( * PFNGLUNIFORM2UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT *value);
5844typedef void ( * PFNGLUNIFORM3UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT *value);
5845typedef void ( * PFNGLUNIFORM4UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT *value);
5846typedef void ( * PFNGLGETUNIFORMI64VNVPROC) (GLuint program, GLint location, GLint64EXT *params);
5847typedef void ( * PFNGLPROGRAMUNIFORM1I64NVPROC) (GLuint program, GLint location, GLint64EXT x);
5848typedef void ( * PFNGLPROGRAMUNIFORM2I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y);
5849typedef void ( * PFNGLPROGRAMUNIFORM3I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
5850typedef void ( * PFNGLPROGRAMUNIFORM4I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
5851typedef void ( * PFNGLPROGRAMUNIFORM1I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5852typedef void ( * PFNGLPROGRAMUNIFORM2I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5853typedef void ( * PFNGLPROGRAMUNIFORM3I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5854typedef void ( * PFNGLPROGRAMUNIFORM4I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
5855typedef void ( * PFNGLPROGRAMUNIFORM1UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x);
5856typedef void ( * PFNGLPROGRAMUNIFORM2UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y);
5857typedef void ( * PFNGLPROGRAMUNIFORM3UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
5858typedef void ( * PFNGLPROGRAMUNIFORM4UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
5859typedef void ( * PFNGLPROGRAMUNIFORM1UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5860typedef void ( * PFNGLPROGRAMUNIFORM2UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5861typedef void ( * PFNGLPROGRAMUNIFORM3UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5862typedef void ( * PFNGLPROGRAMUNIFORM4UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
5863# 10961 "../../include/GL/glext.h"
5864__attribute__((visibility("default"))) void glVertexAttribL1i64NV (GLuint index, GLint64EXT x);
5865__attribute__((visibility("default"))) void glVertexAttribL2i64NV (GLuint index, GLint64EXT x, GLint64EXT y);
5866__attribute__((visibility("default"))) void glVertexAttribL3i64NV (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z);
5867__attribute__((visibility("default"))) void glVertexAttribL4i64NV (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
5868__attribute__((visibility("default"))) void glVertexAttribL1i64vNV (GLuint index, const GLint64EXT *v);
5869__attribute__((visibility("default"))) void glVertexAttribL2i64vNV (GLuint index, const GLint64EXT *v);
5870__attribute__((visibility("default"))) void glVertexAttribL3i64vNV (GLuint index, const GLint64EXT *v);
5871__attribute__((visibility("default"))) void glVertexAttribL4i64vNV (GLuint index, const GLint64EXT *v);
5872__attribute__((visibility("default"))) void glVertexAttribL1ui64NV (GLuint index, GLuint64EXT x);
5873__attribute__((visibility("default"))) void glVertexAttribL2ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y);
5874__attribute__((visibility("default"))) void glVertexAttribL3ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
5875__attribute__((visibility("default"))) void glVertexAttribL4ui64NV (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
5876__attribute__((visibility("default"))) void glVertexAttribL1ui64vNV (GLuint index, const GLuint64EXT *v);
5877__attribute__((visibility("default"))) void glVertexAttribL2ui64vNV (GLuint index, const GLuint64EXT *v);
5878__attribute__((visibility("default"))) void glVertexAttribL3ui64vNV (GLuint index, const GLuint64EXT *v);
5879__attribute__((visibility("default"))) void glVertexAttribL4ui64vNV (GLuint index, const GLuint64EXT *v);
5880__attribute__((visibility("default"))) void glGetVertexAttribLi64vNV (GLuint index, GLenum pname, GLint64EXT *params);
5881__attribute__((visibility("default"))) void glGetVertexAttribLui64vNV (GLuint index, GLenum pname, GLuint64EXT *params);
5882__attribute__((visibility("default"))) void glVertexAttribLFormatNV (GLuint index, GLint size, GLenum type, GLsizei stride);
5883
5884typedef void ( * PFNGLVERTEXATTRIBL1I64NVPROC) (GLuint index, GLint64EXT x);
5885typedef void ( * PFNGLVERTEXATTRIBL2I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y);
5886typedef void ( * PFNGLVERTEXATTRIBL3I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z);
5887typedef void ( * PFNGLVERTEXATTRIBL4I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
5888typedef void ( * PFNGLVERTEXATTRIBL1I64VNVPROC) (GLuint index, const GLint64EXT *v);
5889typedef void ( * PFNGLVERTEXATTRIBL2I64VNVPROC) (GLuint index, const GLint64EXT *v);
5890typedef void ( * PFNGLVERTEXATTRIBL3I64VNVPROC) (GLuint index, const GLint64EXT *v);
5891typedef void ( * PFNGLVERTEXATTRIBL4I64VNVPROC) (GLuint index, const GLint64EXT *v);
5892typedef void ( * PFNGLVERTEXATTRIBL1UI64NVPROC) (GLuint index, GLuint64EXT x);
5893typedef void ( * PFNGLVERTEXATTRIBL2UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y);
5894typedef void ( * PFNGLVERTEXATTRIBL3UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
5895typedef void ( * PFNGLVERTEXATTRIBL4UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
5896typedef void ( * PFNGLVERTEXATTRIBL1UI64VNVPROC) (GLuint index, const GLuint64EXT *v);
5897typedef void ( * PFNGLVERTEXATTRIBL2UI64VNVPROC) (GLuint index, const GLuint64EXT *v);
5898typedef void ( * PFNGLVERTEXATTRIBL3UI64VNVPROC) (GLuint index, const GLuint64EXT *v);
5899typedef void ( * PFNGLVERTEXATTRIBL4UI64VNVPROC) (GLuint index, const GLuint64EXT *v);
5900typedef void ( * PFNGLGETVERTEXATTRIBLI64VNVPROC) (GLuint index, GLenum pname, GLint64EXT *params);
5901typedef void ( * PFNGLGETVERTEXATTRIBLUI64VNVPROC) (GLuint index, GLenum pname, GLuint64EXT *params);
5902typedef void ( * PFNGLVERTEXATTRIBLFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride);
5903# 11009 "../../include/GL/glext.h"
5904__attribute__((visibility("default"))) void glGenNamesAMD (GLenum identifier, GLuint num, GLuint *names);
5905__attribute__((visibility("default"))) void glDeleteNamesAMD (GLenum identifier, GLuint num, const GLuint *names);
5906__attribute__((visibility("default"))) GLboolean glIsNameAMD (GLenum identifier, GLuint name);
5907
5908typedef void ( * PFNGLGENNAMESAMDPROC) (GLenum identifier, GLuint num, GLuint *names);
5909typedef void ( * PFNGLDELETENAMESAMDPROC) (GLenum identifier, GLuint num, const GLuint *names);
5910typedef GLboolean ( * PFNGLISNAMEAMDPROC) (GLenum identifier, GLuint name);
5911
5912
5913
5914
5915
5916__attribute__((visibility("default"))) void glDebugMessageEnableAMD (GLenum category, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
5917__attribute__((visibility("default"))) void glDebugMessageInsertAMD (GLenum category, GLenum severity, GLuint id, GLsizei length, const GLchar *buf);
5918__attribute__((visibility("default"))) void glDebugMessageCallbackAMD (GLDEBUGPROCAMD callback, GLvoid *userParam);
5919__attribute__((visibility("default"))) GLuint glGetDebugMessageLogAMD (GLuint count, GLsizei bufsize, GLenum *categories, GLuint *severities, GLuint *ids, GLsizei *lengths, GLchar *message);
5920
5921typedef void ( * PFNGLDEBUGMESSAGEENABLEAMDPROC) (GLenum category, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
5922typedef void ( * PFNGLDEBUGMESSAGEINSERTAMDPROC) (GLenum category, GLenum severity, GLuint id, GLsizei length, const GLchar *buf);
5923typedef void ( * PFNGLDEBUGMESSAGECALLBACKAMDPROC) (GLDEBUGPROCAMD callback, GLvoid *userParam);
5924typedef GLuint ( * PFNGLGETDEBUGMESSAGELOGAMDPROC) (GLuint count, GLsizei bufsize, GLenum *categories, GLuint *severities, GLuint *ids, GLsizei *lengths, GLchar *message);
5925
5926
5927
5928
5929
5930__attribute__((visibility("default"))) void glVDPAUInitNV (const GLvoid *vdpDevice, const GLvoid *getProcAddress);
5931__attribute__((visibility("default"))) void glVDPAUFiniNV (void);
5932__attribute__((visibility("default"))) GLvdpauSurfaceNV glVDPAURegisterVideoSurfaceNV (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
5933__attribute__((visibility("default"))) GLvdpauSurfaceNV glVDPAURegisterOutputSurfaceNV (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
5934__attribute__((visibility("default"))) void glVDPAUIsSurfaceNV (GLvdpauSurfaceNV surface);
5935__attribute__((visibility("default"))) void glVDPAUUnregisterSurfaceNV (GLvdpauSurfaceNV surface);
5936__attribute__((visibility("default"))) void glVDPAUGetSurfaceivNV (GLvdpauSurfaceNV surface, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
5937__attribute__((visibility("default"))) void glVDPAUSurfaceAccessNV (GLvdpauSurfaceNV surface, GLenum access);
5938__attribute__((visibility("default"))) void glVDPAUMapSurfacesNV (GLsizei numSurfaces, const GLvdpauSurfaceNV *surfaces);
5939__attribute__((visibility("default"))) void glVDPAUUnmapSurfacesNV (GLsizei numSurface, const GLvdpauSurfaceNV *surfaces);
5940
5941typedef void ( * PFNGLVDPAUINITNVPROC) (const GLvoid *vdpDevice, const GLvoid *getProcAddress);
5942typedef void ( * PFNGLVDPAUFININVPROC) (void);
5943typedef GLvdpauSurfaceNV ( * PFNGLVDPAUREGISTERVIDEOSURFACENVPROC) (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
5944typedef GLvdpauSurfaceNV ( * PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC) (GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);
5945typedef void ( * PFNGLVDPAUISSURFACENVPROC) (GLvdpauSurfaceNV surface);
5946typedef void ( * PFNGLVDPAUUNREGISTERSURFACENVPROC) (GLvdpauSurfaceNV surface);
5947typedef void ( * PFNGLVDPAUGETSURFACEIVNVPROC) (GLvdpauSurfaceNV surface, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
5948typedef void ( * PFNGLVDPAUSURFACEACCESSNVPROC) (GLvdpauSurfaceNV surface, GLenum access);
5949typedef void ( * PFNGLVDPAUMAPSURFACESNVPROC) (GLsizei numSurfaces, const GLvdpauSurfaceNV *surfaces);
5950typedef void ( * PFNGLVDPAUUNMAPSURFACESNVPROC) (GLsizei numSurface, const GLvdpauSurfaceNV *surfaces);
5951# 11073 "../../include/GL/glext.h"
5952__attribute__((visibility("default"))) void glTexImage2DMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
5953__attribute__((visibility("default"))) void glTexImage3DMultisampleCoverageNV (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
5954__attribute__((visibility("default"))) void glTextureImage2DMultisampleNV (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
5955__attribute__((visibility("default"))) void glTextureImage3DMultisampleNV (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
5956__attribute__((visibility("default"))) void glTextureImage2DMultisampleCoverageNV (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
5957__attribute__((visibility("default"))) void glTextureImage3DMultisampleCoverageNV (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
5958
5959typedef void ( * PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
5960typedef void ( * PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
5961typedef void ( * PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
5962typedef void ( * PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
5963typedef void ( * PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);
5964typedef void ( * PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);
5965# 11095 "../../include/GL/glext.h"
5966__attribute__((visibility("default"))) void glSetMultisamplefvAMD (GLenum pname, GLuint index, const GLfloat *val);
5967
5968typedef void ( * PFNGLSETMULTISAMPLEFVAMDPROC) (GLenum pname, GLuint index, const GLfloat *val);
5969
5970
5971
5972
5973
5974__attribute__((visibility("default"))) GLsync glImportSyncEXT (GLenum external_sync_type, GLintptr external_sync, GLbitfield flags);
5975
5976typedef GLsync ( * PFNGLIMPORTSYNCEXTPROC) (GLenum external_sync_type, GLintptr external_sync, GLbitfield flags);
5977
5978
5979
5980
5981
5982__attribute__((visibility("default"))) void glMultiDrawArraysIndirectAMD (GLenum mode, const GLvoid *indirect, GLsizei primcount, GLsizei stride);
5983__attribute__((visibility("default"))) void glMultiDrawElementsIndirectAMD (GLenum mode, GLenum type, const GLvoid *indirect, GLsizei primcount, GLsizei stride);
5984
5985typedef void ( * PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC) (GLenum mode, const GLvoid *indirect, GLsizei primcount, GLsizei stride);
5986typedef void ( * PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC) (GLenum mode, GLenum type, const GLvoid *indirect, GLsizei primcount, GLsizei stride);
5987# 2092 "../../include/GL/gl.h" 2
5988# 2106 "../../include/GL/gl.h"
5989__attribute__((visibility("default"))) GLhandleARB glCreateDebugObjectMESA (void);
5990__attribute__((visibility("default"))) void glClearDebugLogMESA (GLhandleARB obj, GLenum logType, GLenum shaderType);
5991__attribute__((visibility("default"))) void glGetDebugLogMESA (GLhandleARB obj, GLenum logType, GLenum shaderType, GLsizei maxLength,
5992 GLsizei *length, GLcharARB *debugLog);
5993__attribute__((visibility("default"))) GLsizei glGetDebugLogLengthMESA (GLhandleARB obj, GLenum logType, GLenum shaderType);
5994# 2145 "../../include/GL/gl.h"
5995typedef void (*GLprogramcallbackMESA)(GLenum target, GLvoid *data);
5996
5997__attribute__((visibility("default"))) void glProgramCallbackMESA(GLenum target, GLprogramcallbackMESA callback, GLvoid *data);
5998
5999__attribute__((visibility("default"))) void glGetProgramRegisterfvMESA(GLenum target, GLsizei len, const GLubyte *name, GLfloat *v);
6000# 2192 "../../include/GL/gl.h"
6001__attribute__((visibility("default"))) void glBlendEquationSeparateATI( GLenum modeRGB, GLenum modeA );
6002typedef void ( * PFNGLBLENDEQUATIONSEPARATEATIPROC) (GLenum modeRGB, GLenum modeA);
6003
6004
6005
6006
6007
6008
6009typedef void* GLeglImageOES;
6010
6011
6012
6013
6014
6015__attribute__((visibility("default"))) void glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
6016__attribute__((visibility("default"))) void glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
6017
6018typedef void ( * PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
6019typedef void ( * PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
6020# 54 "../../src/mesa/main/glheader.h" 2
6021
6022
6023
6024
6025
6026
6027typedef int GLfixed;
6028typedef int GLclampx;
6029# 33 "swrast/s_triangle.c" 2
6030# 1 "../../src/mesa/main/context.h" 1
6031# 52 "../../src/mesa/main/context.h"
6032# 1 "../../src/mesa/main/imports.h" 1
6033# 39 "../../src/mesa/main/imports.h"
6034# 1 "../../src/mesa/main/compiler.h" 1
6035# 37 "../../src/mesa/main/compiler.h"
6036# 1 "/usr/include/assert.h" 1 3 4
6037# 66 "/usr/include/assert.h" 3 4
6038
6039
6040
6041extern void __assert_fail (__const char *__assertion, __const char *__file,
6042 unsigned int __line, __const char *__function)
6043 __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
6044
6045
6046extern void __assert_perror_fail (int __errnum, __const char *__file,
6047 unsigned int __line,
6048 __const char *__function)
6049 __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
6050
6051
6052
6053
6054extern void __assert (const char *__assertion, const char *__file, int __line)
6055 __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
6056
6057
6058
6059# 38 "../../src/mesa/main/compiler.h" 2
6060# 1 "/usr/include/ctype.h" 1 3 4
6061# 28 "/usr/include/ctype.h" 3 4
6062# 1 "/usr/include/bits/types.h" 1 3 4
6063# 28 "/usr/include/bits/types.h" 3 4
6064# 1 "/usr/include/bits/wordsize.h" 1 3 4
6065# 29 "/usr/include/bits/types.h" 2 3 4
6066
6067
6068typedef unsigned char __u_char;
6069typedef unsigned short int __u_short;
6070typedef unsigned int __u_int;
6071typedef unsigned long int __u_long;
6072
6073
6074typedef signed char __int8_t;
6075typedef unsigned char __uint8_t;
6076typedef signed short int __int16_t;
6077typedef unsigned short int __uint16_t;
6078typedef signed int __int32_t;
6079typedef unsigned int __uint32_t;
6080
6081
6082
6083
6084__extension__ typedef signed long long int __int64_t;
6085__extension__ typedef unsigned long long int __uint64_t;
6086
6087
6088
6089
6090
6091
6092
6093__extension__ typedef long long int __quad_t;
6094__extension__ typedef unsigned long long int __u_quad_t;
6095# 131 "/usr/include/bits/types.h" 3 4
6096# 1 "/usr/include/bits/typesizes.h" 1 3 4
6097# 132 "/usr/include/bits/types.h" 2 3 4
6098
6099
6100__extension__ typedef __u_quad_t __dev_t;
6101__extension__ typedef unsigned int __uid_t;
6102__extension__ typedef unsigned int __gid_t;
6103__extension__ typedef unsigned long int __ino_t;
6104__extension__ typedef __u_quad_t __ino64_t;
6105__extension__ typedef unsigned int __mode_t;
6106__extension__ typedef unsigned int __nlink_t;
6107__extension__ typedef long int __off_t;
6108__extension__ typedef __quad_t __off64_t;
6109__extension__ typedef int __pid_t;
6110__extension__ typedef struct { int __val[2]; } __fsid_t;
6111__extension__ typedef long int __clock_t;
6112__extension__ typedef unsigned long int __rlim_t;
6113__extension__ typedef __u_quad_t __rlim64_t;
6114__extension__ typedef unsigned int __id_t;
6115__extension__ typedef long int __time_t;
6116__extension__ typedef unsigned int __useconds_t;
6117__extension__ typedef long int __suseconds_t;
6118
6119__extension__ typedef int __daddr_t;
6120__extension__ typedef long int __swblk_t;
6121__extension__ typedef int __key_t;
6122
6123
6124__extension__ typedef int __clockid_t;
6125
6126
6127__extension__ typedef void * __timer_t;
6128
6129
6130__extension__ typedef long int __blksize_t;
6131
6132
6133
6134
6135__extension__ typedef long int __blkcnt_t;
6136__extension__ typedef __quad_t __blkcnt64_t;
6137
6138
6139__extension__ typedef unsigned long int __fsblkcnt_t;
6140__extension__ typedef __u_quad_t __fsblkcnt64_t;
6141
6142
6143__extension__ typedef unsigned long int __fsfilcnt_t;
6144__extension__ typedef __u_quad_t __fsfilcnt64_t;
6145
6146__extension__ typedef int __ssize_t;
6147
6148
6149
6150typedef __off64_t __loff_t;
6151typedef __quad_t *__qaddr_t;
6152typedef char *__caddr_t;
6153
6154
6155__extension__ typedef int __intptr_t;
6156
6157
6158__extension__ typedef unsigned int __socklen_t;
6159# 29 "/usr/include/ctype.h" 2 3 4
6160
6161
6162# 41 "/usr/include/ctype.h" 3 4
6163# 1 "/usr/include/endian.h" 1 3 4
6164# 37 "/usr/include/endian.h" 3 4
6165# 1 "/usr/include/bits/endian.h" 1 3 4
6166# 38 "/usr/include/endian.h" 2 3 4
6167# 61 "/usr/include/endian.h" 3 4
6168# 1 "/usr/include/bits/byteswap.h" 1 3 4
6169# 62 "/usr/include/endian.h" 2 3 4
6170# 42 "/usr/include/ctype.h" 2 3 4
6171
6172
6173
6174
6175
6176
6177enum
6178{
6179 _ISupper = (1 << (0)),
6180 _ISlower = (1 << (1)),
6181 _ISalpha = (1 << (2)),
6182 _ISdigit = (1 << (3)),
6183 _ISxdigit = (1 << (4)),
6184 _ISspace = (1 << (5)),
6185 _ISprint = (1 << (6)),
6186 _ISgraph = (1 << (7)),
6187 _ISblank = (1 << (8)),
6188 _IScntrl = (1 << (9)),
6189 _ISpunct = (1 << (10)),
6190 _ISalnum = (1 << (11))
6191};
6192# 81 "/usr/include/ctype.h" 3 4
6193extern __const unsigned short int **__ctype_b_loc (void)
6194 __attribute__ ((__nothrow__)) __attribute__ ((__const));
6195extern __const __int32_t **__ctype_tolower_loc (void)
6196 __attribute__ ((__nothrow__)) __attribute__ ((__const));
6197extern __const __int32_t **__ctype_toupper_loc (void)
6198 __attribute__ ((__nothrow__)) __attribute__ ((__const));
6199# 96 "/usr/include/ctype.h" 3 4
6200
6201
6202
6203
6204
6205
6206extern int isalnum (int) __attribute__ ((__nothrow__));
6207extern int isalpha (int) __attribute__ ((__nothrow__));
6208extern int iscntrl (int) __attribute__ ((__nothrow__));
6209extern int isdigit (int) __attribute__ ((__nothrow__));
6210extern int islower (int) __attribute__ ((__nothrow__));
6211extern int isgraph (int) __attribute__ ((__nothrow__));
6212extern int isprint (int) __attribute__ ((__nothrow__));
6213extern int ispunct (int) __attribute__ ((__nothrow__));
6214extern int isspace (int) __attribute__ ((__nothrow__));
6215extern int isupper (int) __attribute__ ((__nothrow__));
6216extern int isxdigit (int) __attribute__ ((__nothrow__));
6217
6218
6219
6220extern int tolower (int __c) __attribute__ ((__nothrow__));
6221
6222
6223extern int toupper (int __c) __attribute__ ((__nothrow__));
6224
6225
6226
6227
6228
6229
6230
6231
6232extern int isblank (int) __attribute__ ((__nothrow__));
6233
6234
6235
6236
6237
6238
6239extern int isctype (int __c, int __mask) __attribute__ ((__nothrow__));
6240
6241
6242
6243
6244
6245
6246extern int isascii (int __c) __attribute__ ((__nothrow__));
6247
6248
6249
6250extern int toascii (int __c) __attribute__ ((__nothrow__));
6251
6252
6253
6254extern int _toupper (int) __attribute__ ((__nothrow__));
6255extern int _tolower (int) __attribute__ ((__nothrow__));
6256# 190 "/usr/include/ctype.h" 3 4
6257extern __inline __attribute__ ((__gnu_inline__)) int
6258__attribute__ ((__nothrow__)) tolower (int __c)
6259{
6260 return __c >= -128 && __c < 256 ? (*__ctype_tolower_loc ())[__c] : __c;
6261}
6262
6263extern __inline __attribute__ ((__gnu_inline__)) int
6264__attribute__ ((__nothrow__)) toupper (int __c)
6265{
6266 return __c >= -128 && __c < 256 ? (*__ctype_toupper_loc ())[__c] : __c;
6267}
6268# 233 "/usr/include/ctype.h" 3 4
6269# 1 "/usr/include/xlocale.h" 1 3 4
6270# 28 "/usr/include/xlocale.h" 3 4
6271typedef struct __locale_struct
6272{
6273
6274 struct __locale_data *__locales[13];
6275
6276
6277 const unsigned short int *__ctype_b;
6278 const int *__ctype_tolower;
6279 const int *__ctype_toupper;
6280
6281
6282 const char *__names[13];
6283} *__locale_t;
6284
6285
6286typedef __locale_t locale_t;
6287# 234 "/usr/include/ctype.h" 2 3 4
6288# 247 "/usr/include/ctype.h" 3 4
6289extern int isalnum_l (int, __locale_t) __attribute__ ((__nothrow__));
6290extern int isalpha_l (int, __locale_t) __attribute__ ((__nothrow__));
6291extern int iscntrl_l (int, __locale_t) __attribute__ ((__nothrow__));
6292extern int isdigit_l (int, __locale_t) __attribute__ ((__nothrow__));
6293extern int islower_l (int, __locale_t) __attribute__ ((__nothrow__));
6294extern int isgraph_l (int, __locale_t) __attribute__ ((__nothrow__));
6295extern int isprint_l (int, __locale_t) __attribute__ ((__nothrow__));
6296extern int ispunct_l (int, __locale_t) __attribute__ ((__nothrow__));
6297extern int isspace_l (int, __locale_t) __attribute__ ((__nothrow__));
6298extern int isupper_l (int, __locale_t) __attribute__ ((__nothrow__));
6299extern int isxdigit_l (int, __locale_t) __attribute__ ((__nothrow__));
6300
6301extern int isblank_l (int, __locale_t) __attribute__ ((__nothrow__));
6302
6303
6304
6305extern int __tolower_l (int __c, __locale_t __l) __attribute__ ((__nothrow__));
6306extern int tolower_l (int __c, __locale_t __l) __attribute__ ((__nothrow__));
6307
6308
6309extern int __toupper_l (int __c, __locale_t __l) __attribute__ ((__nothrow__));
6310extern int toupper_l (int __c, __locale_t __l) __attribute__ ((__nothrow__));
6311# 323 "/usr/include/ctype.h" 3 4
6312
6313# 39 "../../src/mesa/main/compiler.h" 2
6314
6315
6316
6317# 1 "/usr/include/math.h" 1 3 4
6318# 30 "/usr/include/math.h" 3 4
6319
6320
6321
6322
6323# 1 "/usr/include/bits/huge_val.h" 1 3 4
6324# 35 "/usr/include/math.h" 2 3 4
6325
6326# 1 "/usr/include/bits/huge_valf.h" 1 3 4
6327# 37 "/usr/include/math.h" 2 3 4
6328# 1 "/usr/include/bits/huge_vall.h" 1 3 4
6329# 38 "/usr/include/math.h" 2 3 4
6330
6331
6332# 1 "/usr/include/bits/inf.h" 1 3 4
6333# 41 "/usr/include/math.h" 2 3 4
6334
6335
6336# 1 "/usr/include/bits/nan.h" 1 3 4
6337# 44 "/usr/include/math.h" 2 3 4
6338
6339
6340
6341# 1 "/usr/include/bits/mathdef.h" 1 3 4
6342# 27 "/usr/include/bits/mathdef.h" 3 4
6343typedef float float_t;
6344
6345typedef double double_t;
6346# 48 "/usr/include/math.h" 2 3 4
6347# 71 "/usr/include/math.h" 3 4
6348# 1 "/usr/include/bits/mathcalls.h" 1 3 4
6349# 53 "/usr/include/bits/mathcalls.h" 3 4
6350
6351
6352extern double acos (double __x) __attribute__ ((__nothrow__)); extern double __acos (double __x) __attribute__ ((__nothrow__));
6353
6354extern double asin (double __x) __attribute__ ((__nothrow__)); extern double __asin (double __x) __attribute__ ((__nothrow__));
6355
6356extern double atan (double __x) __attribute__ ((__nothrow__)); extern double __atan (double __x) __attribute__ ((__nothrow__));
6357
6358extern double atan2 (double __y, double __x) __attribute__ ((__nothrow__)); extern double __atan2 (double __y, double __x) __attribute__ ((__nothrow__));
6359
6360
6361extern double cos (double __x) __attribute__ ((__nothrow__)); extern double __cos (double __x) __attribute__ ((__nothrow__));
6362
6363extern double sin (double __x) __attribute__ ((__nothrow__)); extern double __sin (double __x) __attribute__ ((__nothrow__));
6364
6365extern double tan (double __x) __attribute__ ((__nothrow__)); extern double __tan (double __x) __attribute__ ((__nothrow__));
6366
6367
6368
6369
6370extern double cosh (double __x) __attribute__ ((__nothrow__)); extern double __cosh (double __x) __attribute__ ((__nothrow__));
6371
6372extern double sinh (double __x) __attribute__ ((__nothrow__)); extern double __sinh (double __x) __attribute__ ((__nothrow__));
6373
6374extern double tanh (double __x) __attribute__ ((__nothrow__)); extern double __tanh (double __x) __attribute__ ((__nothrow__));
6375
6376
6377
6378
6379extern void sincos (double __x, double *__sinx, double *__cosx) __attribute__ ((__nothrow__)); extern void __sincos (double __x, double *__sinx, double *__cosx) __attribute__ ((__nothrow__))
6380 ;
6381
6382
6383
6384
6385
6386extern double acosh (double __x) __attribute__ ((__nothrow__)); extern double __acosh (double __x) __attribute__ ((__nothrow__));
6387
6388extern double asinh (double __x) __attribute__ ((__nothrow__)); extern double __asinh (double __x) __attribute__ ((__nothrow__));
6389
6390extern double atanh (double __x) __attribute__ ((__nothrow__)); extern double __atanh (double __x) __attribute__ ((__nothrow__));
6391
6392
6393
6394
6395
6396
6397
6398extern double exp (double __x) __attribute__ ((__nothrow__)); extern double __exp (double __x) __attribute__ ((__nothrow__));
6399
6400
6401extern double frexp (double __x, int *__exponent) __attribute__ ((__nothrow__)); extern double __frexp (double __x, int *__exponent) __attribute__ ((__nothrow__));
6402
6403
6404extern double ldexp (double __x, int __exponent) __attribute__ ((__nothrow__)); extern double __ldexp (double __x, int __exponent) __attribute__ ((__nothrow__));
6405
6406
6407extern double log (double __x) __attribute__ ((__nothrow__)); extern double __log (double __x) __attribute__ ((__nothrow__));
6408
6409
6410extern double log10 (double __x) __attribute__ ((__nothrow__)); extern double __log10 (double __x) __attribute__ ((__nothrow__));
6411
6412
6413extern double modf (double __x, double *__iptr) __attribute__ ((__nothrow__)); extern double __modf (double __x, double *__iptr) __attribute__ ((__nothrow__));
6414
6415
6416
6417
6418extern double exp10 (double __x) __attribute__ ((__nothrow__)); extern double __exp10 (double __x) __attribute__ ((__nothrow__));
6419
6420extern double pow10 (double __x) __attribute__ ((__nothrow__)); extern double __pow10 (double __x) __attribute__ ((__nothrow__));
6421
6422
6423
6424
6425
6426extern double expm1 (double __x) __attribute__ ((__nothrow__)); extern double __expm1 (double __x) __attribute__ ((__nothrow__));
6427
6428
6429extern double log1p (double __x) __attribute__ ((__nothrow__)); extern double __log1p (double __x) __attribute__ ((__nothrow__));
6430
6431
6432extern double logb (double __x) __attribute__ ((__nothrow__)); extern double __logb (double __x) __attribute__ ((__nothrow__));
6433
6434
6435
6436
6437
6438
6439extern double exp2 (double __x) __attribute__ ((__nothrow__)); extern double __exp2 (double __x) __attribute__ ((__nothrow__));
6440
6441
6442extern double log2 (double __x) __attribute__ ((__nothrow__)); extern double __log2 (double __x) __attribute__ ((__nothrow__));
6443
6444
6445
6446
6447
6448
6449
6450
6451extern double pow (double __x, double __y) __attribute__ ((__nothrow__)); extern double __pow (double __x, double __y) __attribute__ ((__nothrow__));
6452
6453
6454extern double sqrt (double __x) __attribute__ ((__nothrow__)); extern double __sqrt (double __x) __attribute__ ((__nothrow__));
6455
6456
6457
6458
6459
6460extern double hypot (double __x, double __y) __attribute__ ((__nothrow__)); extern double __hypot (double __x, double __y) __attribute__ ((__nothrow__));
6461
6462
6463
6464
6465
6466
6467extern double cbrt (double __x) __attribute__ ((__nothrow__)); extern double __cbrt (double __x) __attribute__ ((__nothrow__));
6468
6469
6470
6471
6472
6473
6474
6475
6476extern double ceil (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __ceil (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6477
6478
6479extern double fabs (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __fabs (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6480
6481
6482extern double floor (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __floor (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6483
6484
6485extern double fmod (double __x, double __y) __attribute__ ((__nothrow__)); extern double __fmod (double __x, double __y) __attribute__ ((__nothrow__));
6486
6487
6488
6489
6490extern int __isinf (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6491
6492
6493extern int __finite (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6494
6495
6496
6497
6498
6499extern int isinf (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6500
6501
6502extern int finite (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6503
6504
6505extern double drem (double __x, double __y) __attribute__ ((__nothrow__)); extern double __drem (double __x, double __y) __attribute__ ((__nothrow__));
6506
6507
6508
6509extern double significand (double __x) __attribute__ ((__nothrow__)); extern double __significand (double __x) __attribute__ ((__nothrow__));
6510
6511
6512
6513
6514
6515extern double copysign (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __copysign (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6516
6517
6518
6519
6520
6521
6522extern double nan (__const char *__tagb) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __nan (__const char *__tagb) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6523
6524
6525
6526
6527
6528extern int __isnan (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6529
6530
6531
6532extern int isnan (double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6533
6534
6535extern double j0 (double) __attribute__ ((__nothrow__)); extern double __j0 (double) __attribute__ ((__nothrow__));
6536extern double j1 (double) __attribute__ ((__nothrow__)); extern double __j1 (double) __attribute__ ((__nothrow__));
6537extern double jn (int, double) __attribute__ ((__nothrow__)); extern double __jn (int, double) __attribute__ ((__nothrow__));
6538extern double y0 (double) __attribute__ ((__nothrow__)); extern double __y0 (double) __attribute__ ((__nothrow__));
6539extern double y1 (double) __attribute__ ((__nothrow__)); extern double __y1 (double) __attribute__ ((__nothrow__));
6540extern double yn (int, double) __attribute__ ((__nothrow__)); extern double __yn (int, double) __attribute__ ((__nothrow__));
6541
6542
6543
6544
6545
6546
6547extern double erf (double) __attribute__ ((__nothrow__)); extern double __erf (double) __attribute__ ((__nothrow__));
6548extern double erfc (double) __attribute__ ((__nothrow__)); extern double __erfc (double) __attribute__ ((__nothrow__));
6549extern double lgamma (double) __attribute__ ((__nothrow__)); extern double __lgamma (double) __attribute__ ((__nothrow__));
6550
6551
6552
6553
6554
6555
6556extern double tgamma (double) __attribute__ ((__nothrow__)); extern double __tgamma (double) __attribute__ ((__nothrow__));
6557
6558
6559
6560
6561
6562extern double gamma (double) __attribute__ ((__nothrow__)); extern double __gamma (double) __attribute__ ((__nothrow__));
6563
6564
6565
6566
6567
6568
6569extern double lgamma_r (double, int *__signgamp) __attribute__ ((__nothrow__)); extern double __lgamma_r (double, int *__signgamp) __attribute__ ((__nothrow__));
6570
6571
6572
6573
6574
6575
6576
6577extern double rint (double __x) __attribute__ ((__nothrow__)); extern double __rint (double __x) __attribute__ ((__nothrow__));
6578
6579
6580extern double nextafter (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __nextafter (double __x, double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6581
6582extern double nexttoward (double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __nexttoward (double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6583
6584
6585
6586extern double remainder (double __x, double __y) __attribute__ ((__nothrow__)); extern double __remainder (double __x, double __y) __attribute__ ((__nothrow__));
6587
6588
6589
6590extern double scalbn (double __x, int __n) __attribute__ ((__nothrow__)); extern double __scalbn (double __x, int __n) __attribute__ ((__nothrow__));
6591
6592
6593
6594extern int ilogb (double __x) __attribute__ ((__nothrow__)); extern int __ilogb (double __x) __attribute__ ((__nothrow__));
6595
6596
6597
6598
6599extern double scalbln (double __x, long int __n) __attribute__ ((__nothrow__)); extern double __scalbln (double __x, long int __n) __attribute__ ((__nothrow__));
6600
6601
6602
6603extern double nearbyint (double __x) __attribute__ ((__nothrow__)); extern double __nearbyint (double __x) __attribute__ ((__nothrow__));
6604
6605
6606
6607extern double round (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __round (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6608
6609
6610
6611extern double trunc (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern double __trunc (double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6612
6613
6614
6615
6616extern double remquo (double __x, double __y, int *__quo) __attribute__ ((__nothrow__)); extern double __remquo (double __x, double __y, int *__quo) __attribute__ ((__nothrow__));
6617
6618
6619
6620
6621
6622
6623extern long int lrint (double __x) __attribute__ ((__nothrow__)); extern long int __lrint (double __x) __attribute__ ((__nothrow__));
6624extern long long int llrint (double __x) __attribute__ ((__nothrow__)); extern long long int __llrint (double __x) __attribute__ ((__nothrow__));
6625
6626
6627
6628extern long int lround (double __x) __attribute__ ((__nothrow__)); extern long int __lround (double __x) __attribute__ ((__nothrow__));
6629extern long long int llround (double __x) __attribute__ ((__nothrow__)); extern long long int __llround (double __x) __attribute__ ((__nothrow__));
6630
6631
6632
6633extern double fdim (double __x, double __y) __attribute__ ((__nothrow__)); extern double __fdim (double __x, double __y) __attribute__ ((__nothrow__));
6634
6635
6636extern double fmax (double __x, double __y) __attribute__ ((__nothrow__)); extern double __fmax (double __x, double __y) __attribute__ ((__nothrow__));
6637
6638
6639extern double fmin (double __x, double __y) __attribute__ ((__nothrow__)); extern double __fmin (double __x, double __y) __attribute__ ((__nothrow__));
6640
6641
6642
6643extern int __fpclassify (double __value) __attribute__ ((__nothrow__))
6644 __attribute__ ((__const__));
6645
6646
6647extern int __signbit (double __value) __attribute__ ((__nothrow__))
6648 __attribute__ ((__const__));
6649
6650
6651
6652extern double fma (double __x, double __y, double __z) __attribute__ ((__nothrow__)); extern double __fma (double __x, double __y, double __z) __attribute__ ((__nothrow__));
6653
6654
6655
6656
6657
6658
6659
6660
6661extern double scalb (double __x, double __n) __attribute__ ((__nothrow__)); extern double __scalb (double __x, double __n) __attribute__ ((__nothrow__));
6662# 72 "/usr/include/math.h" 2 3 4
6663# 94 "/usr/include/math.h" 3 4
6664# 1 "/usr/include/bits/mathcalls.h" 1 3 4
6665# 53 "/usr/include/bits/mathcalls.h" 3 4
6666
6667
6668extern float acosf (float __x) __attribute__ ((__nothrow__)); extern float __acosf (float __x) __attribute__ ((__nothrow__));
6669
6670extern float asinf (float __x) __attribute__ ((__nothrow__)); extern float __asinf (float __x) __attribute__ ((__nothrow__));
6671
6672extern float atanf (float __x) __attribute__ ((__nothrow__)); extern float __atanf (float __x) __attribute__ ((__nothrow__));
6673
6674extern float atan2f (float __y, float __x) __attribute__ ((__nothrow__)); extern float __atan2f (float __y, float __x) __attribute__ ((__nothrow__));
6675
6676
6677extern float cosf (float __x) __attribute__ ((__nothrow__)); extern float __cosf (float __x) __attribute__ ((__nothrow__));
6678
6679extern float sinf (float __x) __attribute__ ((__nothrow__)); extern float __sinf (float __x) __attribute__ ((__nothrow__));
6680
6681extern float tanf (float __x) __attribute__ ((__nothrow__)); extern float __tanf (float __x) __attribute__ ((__nothrow__));
6682
6683
6684
6685
6686extern float coshf (float __x) __attribute__ ((__nothrow__)); extern float __coshf (float __x) __attribute__ ((__nothrow__));
6687
6688extern float sinhf (float __x) __attribute__ ((__nothrow__)); extern float __sinhf (float __x) __attribute__ ((__nothrow__));
6689
6690extern float tanhf (float __x) __attribute__ ((__nothrow__)); extern float __tanhf (float __x) __attribute__ ((__nothrow__));
6691
6692
6693
6694
6695extern void
6696 sincosf
6697# 82 "/usr/include/bits/mathcalls.h" 3 4
6698 (float __x, float *__sinx, float *__cosx) __attribute__ ((__nothrow__)); extern void
6699 __sincosf
6700# 82 "/usr/include/bits/mathcalls.h" 3 4
6701 (float __x, float *__sinx, float *__cosx) __attribute__ ((__nothrow__))
6702 ;
6703
6704
6705
6706
6707
6708extern float acoshf (float __x) __attribute__ ((__nothrow__)); extern float __acoshf (float __x) __attribute__ ((__nothrow__));
6709
6710extern float asinhf (float __x) __attribute__ ((__nothrow__)); extern float __asinhf (float __x) __attribute__ ((__nothrow__));
6711
6712extern float atanhf (float __x) __attribute__ ((__nothrow__)); extern float __atanhf (float __x) __attribute__ ((__nothrow__));
6713
6714
6715
6716
6717
6718
6719
6720extern float expf (float __x) __attribute__ ((__nothrow__)); extern float __expf (float __x) __attribute__ ((__nothrow__));
6721
6722
6723extern float frexpf (float __x, int *__exponent) __attribute__ ((__nothrow__)); extern float __frexpf (float __x, int *__exponent) __attribute__ ((__nothrow__));
6724
6725
6726extern float ldexpf (float __x, int __exponent) __attribute__ ((__nothrow__)); extern float __ldexpf (float __x, int __exponent) __attribute__ ((__nothrow__));
6727
6728
6729extern float logf (float __x) __attribute__ ((__nothrow__)); extern float __logf (float __x) __attribute__ ((__nothrow__));
6730
6731
6732extern float log10f (float __x) __attribute__ ((__nothrow__)); extern float __log10f (float __x) __attribute__ ((__nothrow__));
6733
6734
6735extern float modff (float __x, float *__iptr) __attribute__ ((__nothrow__)); extern float __modff (float __x, float *__iptr) __attribute__ ((__nothrow__));
6736
6737
6738
6739
6740extern float exp10f (float __x) __attribute__ ((__nothrow__)); extern float __exp10f (float __x) __attribute__ ((__nothrow__));
6741
6742extern float pow10f (float __x) __attribute__ ((__nothrow__)); extern float __pow10f (float __x) __attribute__ ((__nothrow__));
6743
6744
6745
6746
6747
6748extern float expm1f (float __x) __attribute__ ((__nothrow__)); extern float __expm1f (float __x) __attribute__ ((__nothrow__));
6749
6750
6751extern float log1pf (float __x) __attribute__ ((__nothrow__)); extern float __log1pf (float __x) __attribute__ ((__nothrow__));
6752
6753
6754extern float logbf (float __x) __attribute__ ((__nothrow__)); extern float __logbf (float __x) __attribute__ ((__nothrow__));
6755
6756
6757
6758
6759
6760
6761extern float exp2f (float __x) __attribute__ ((__nothrow__)); extern float __exp2f (float __x) __attribute__ ((__nothrow__));
6762
6763
6764extern float log2f (float __x) __attribute__ ((__nothrow__)); extern float __log2f (float __x) __attribute__ ((__nothrow__));
6765
6766
6767
6768
6769
6770
6771
6772
6773extern float powf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __powf (float __x, float __y) __attribute__ ((__nothrow__));
6774
6775
6776extern float sqrtf (float __x) __attribute__ ((__nothrow__)); extern float __sqrtf (float __x) __attribute__ ((__nothrow__));
6777
6778
6779
6780
6781
6782extern float hypotf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __hypotf (float __x, float __y) __attribute__ ((__nothrow__));
6783
6784
6785
6786
6787
6788
6789extern float cbrtf (float __x) __attribute__ ((__nothrow__)); extern float __cbrtf (float __x) __attribute__ ((__nothrow__));
6790
6791
6792
6793
6794
6795
6796
6797
6798extern float ceilf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __ceilf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6799
6800
6801extern float fabsf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __fabsf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6802
6803
6804extern float floorf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __floorf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6805
6806
6807extern float fmodf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __fmodf (float __x, float __y) __attribute__ ((__nothrow__));
6808
6809
6810
6811
6812extern int __isinff (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6813
6814
6815extern int __finitef (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6816
6817
6818
6819
6820
6821extern int isinff (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6822
6823
6824extern int finitef (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6825
6826
6827extern float dremf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __dremf (float __x, float __y) __attribute__ ((__nothrow__));
6828
6829
6830
6831extern float significandf (float __x) __attribute__ ((__nothrow__)); extern float __significandf (float __x) __attribute__ ((__nothrow__));
6832
6833
6834
6835
6836
6837extern float copysignf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __copysignf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6838
6839
6840
6841
6842
6843
6844extern float nanf (__const char *__tagb) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __nanf (__const char *__tagb) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6845
6846
6847
6848
6849
6850extern int __isnanf (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6851
6852
6853
6854extern int isnanf (float __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6855
6856
6857extern float j0f (float) __attribute__ ((__nothrow__)); extern float __j0f (float) __attribute__ ((__nothrow__));
6858extern float j1f (float) __attribute__ ((__nothrow__)); extern float __j1f (float) __attribute__ ((__nothrow__));
6859extern float jnf (int, float) __attribute__ ((__nothrow__)); extern float __jnf (int, float) __attribute__ ((__nothrow__));
6860extern float y0f (float) __attribute__ ((__nothrow__)); extern float __y0f (float) __attribute__ ((__nothrow__));
6861extern float y1f (float) __attribute__ ((__nothrow__)); extern float __y1f (float) __attribute__ ((__nothrow__));
6862extern float ynf (int, float) __attribute__ ((__nothrow__)); extern float __ynf (int, float) __attribute__ ((__nothrow__));
6863
6864
6865
6866
6867
6868
6869extern float erff (float) __attribute__ ((__nothrow__)); extern float __erff (float) __attribute__ ((__nothrow__));
6870extern float erfcf (float) __attribute__ ((__nothrow__)); extern float __erfcf (float) __attribute__ ((__nothrow__));
6871extern float lgammaf (float) __attribute__ ((__nothrow__)); extern float __lgammaf (float) __attribute__ ((__nothrow__));
6872
6873
6874
6875
6876
6877
6878extern float tgammaf (float) __attribute__ ((__nothrow__)); extern float __tgammaf (float) __attribute__ ((__nothrow__));
6879
6880
6881
6882
6883
6884extern float gammaf (float) __attribute__ ((__nothrow__)); extern float __gammaf (float) __attribute__ ((__nothrow__));
6885
6886
6887
6888
6889
6890
6891extern float lgammaf_r (float, int *__signgamp) __attribute__ ((__nothrow__)); extern float __lgammaf_r (float, int *__signgamp) __attribute__ ((__nothrow__));
6892
6893
6894
6895
6896
6897
6898
6899extern float rintf (float __x) __attribute__ ((__nothrow__)); extern float __rintf (float __x) __attribute__ ((__nothrow__));
6900
6901
6902extern float nextafterf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __nextafterf (float __x, float __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6903
6904extern float nexttowardf (float __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __nexttowardf (float __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6905
6906
6907
6908extern float remainderf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __remainderf (float __x, float __y) __attribute__ ((__nothrow__));
6909
6910
6911
6912extern float scalbnf (float __x, int __n) __attribute__ ((__nothrow__)); extern float __scalbnf (float __x, int __n) __attribute__ ((__nothrow__));
6913
6914
6915
6916extern int ilogbf (float __x) __attribute__ ((__nothrow__)); extern int __ilogbf (float __x) __attribute__ ((__nothrow__));
6917
6918
6919
6920
6921extern float scalblnf (float __x, long int __n) __attribute__ ((__nothrow__)); extern float __scalblnf (float __x, long int __n) __attribute__ ((__nothrow__));
6922
6923
6924
6925extern float nearbyintf (float __x) __attribute__ ((__nothrow__)); extern float __nearbyintf (float __x) __attribute__ ((__nothrow__));
6926
6927
6928
6929extern float roundf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __roundf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6930
6931
6932
6933extern float truncf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern float __truncf (float __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
6934
6935
6936
6937
6938extern float remquof (float __x, float __y, int *__quo) __attribute__ ((__nothrow__)); extern float __remquof (float __x, float __y, int *__quo) __attribute__ ((__nothrow__));
6939
6940
6941
6942
6943
6944
6945extern long int lrintf (float __x) __attribute__ ((__nothrow__)); extern long int __lrintf (float __x) __attribute__ ((__nothrow__));
6946extern long long int llrintf (float __x) __attribute__ ((__nothrow__)); extern long long int __llrintf (float __x) __attribute__ ((__nothrow__));
6947
6948
6949
6950extern long int lroundf (float __x) __attribute__ ((__nothrow__)); extern long int __lroundf (float __x) __attribute__ ((__nothrow__));
6951extern long long int llroundf (float __x) __attribute__ ((__nothrow__)); extern long long int __llroundf (float __x) __attribute__ ((__nothrow__));
6952
6953
6954
6955extern float fdimf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __fdimf (float __x, float __y) __attribute__ ((__nothrow__));
6956
6957
6958extern float fmaxf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __fmaxf (float __x, float __y) __attribute__ ((__nothrow__));
6959
6960
6961extern float fminf (float __x, float __y) __attribute__ ((__nothrow__)); extern float __fminf (float __x, float __y) __attribute__ ((__nothrow__));
6962
6963
6964
6965extern int __fpclassifyf (float __value) __attribute__ ((__nothrow__))
6966 __attribute__ ((__const__));
6967
6968
6969extern int __signbitf (float __value) __attribute__ ((__nothrow__))
6970 __attribute__ ((__const__));
6971
6972
6973
6974extern float fmaf (float __x, float __y, float __z) __attribute__ ((__nothrow__)); extern float __fmaf (float __x, float __y, float __z) __attribute__ ((__nothrow__));
6975
6976
6977
6978
6979
6980
6981
6982
6983extern float scalbf (float __x, float __n) __attribute__ ((__nothrow__)); extern float __scalbf (float __x, float __n) __attribute__ ((__nothrow__));
6984# 95 "/usr/include/math.h" 2 3 4
6985# 141 "/usr/include/math.h" 3 4
6986# 1 "/usr/include/bits/mathcalls.h" 1 3 4
6987# 53 "/usr/include/bits/mathcalls.h" 3 4
6988
6989
6990extern long double acosl (long double __x) __attribute__ ((__nothrow__)); extern long double __acosl (long double __x) __attribute__ ((__nothrow__));
6991
6992extern long double asinl (long double __x) __attribute__ ((__nothrow__)); extern long double __asinl (long double __x) __attribute__ ((__nothrow__));
6993
6994extern long double atanl (long double __x) __attribute__ ((__nothrow__)); extern long double __atanl (long double __x) __attribute__ ((__nothrow__));
6995
6996extern long double atan2l (long double __y, long double __x) __attribute__ ((__nothrow__)); extern long double __atan2l (long double __y, long double __x) __attribute__ ((__nothrow__));
6997
6998
6999extern long double cosl (long double __x) __attribute__ ((__nothrow__)); extern long double __cosl (long double __x) __attribute__ ((__nothrow__));
7000
7001extern long double sinl (long double __x) __attribute__ ((__nothrow__)); extern long double __sinl (long double __x) __attribute__ ((__nothrow__));
7002
7003extern long double tanl (long double __x) __attribute__ ((__nothrow__)); extern long double __tanl (long double __x) __attribute__ ((__nothrow__));
7004
7005
7006
7007
7008extern long double coshl (long double __x) __attribute__ ((__nothrow__)); extern long double __coshl (long double __x) __attribute__ ((__nothrow__));
7009
7010extern long double sinhl (long double __x) __attribute__ ((__nothrow__)); extern long double __sinhl (long double __x) __attribute__ ((__nothrow__));
7011
7012extern long double tanhl (long double __x) __attribute__ ((__nothrow__)); extern long double __tanhl (long double __x) __attribute__ ((__nothrow__));
7013
7014
7015
7016
7017extern void
7018 sincosl
7019# 82 "/usr/include/bits/mathcalls.h" 3 4
7020 (long double __x, long double *__sinx, long double *__cosx) __attribute__ ((__nothrow__)); extern void
7021 __sincosl
7022# 82 "/usr/include/bits/mathcalls.h" 3 4
7023 (long double __x, long double *__sinx, long double *__cosx) __attribute__ ((__nothrow__))
7024 ;
7025
7026
7027
7028
7029
7030extern long double acoshl (long double __x) __attribute__ ((__nothrow__)); extern long double __acoshl (long double __x) __attribute__ ((__nothrow__));
7031
7032extern long double asinhl (long double __x) __attribute__ ((__nothrow__)); extern long double __asinhl (long double __x) __attribute__ ((__nothrow__));
7033
7034extern long double atanhl (long double __x) __attribute__ ((__nothrow__)); extern long double __atanhl (long double __x) __attribute__ ((__nothrow__));
7035
7036
7037
7038
7039
7040
7041
7042extern long double expl (long double __x) __attribute__ ((__nothrow__)); extern long double __expl (long double __x) __attribute__ ((__nothrow__));
7043
7044
7045extern long double frexpl (long double __x, int *__exponent) __attribute__ ((__nothrow__)); extern long double __frexpl (long double __x, int *__exponent) __attribute__ ((__nothrow__));
7046
7047
7048extern long double ldexpl (long double __x, int __exponent) __attribute__ ((__nothrow__)); extern long double __ldexpl (long double __x, int __exponent) __attribute__ ((__nothrow__));
7049
7050
7051extern long double logl (long double __x) __attribute__ ((__nothrow__)); extern long double __logl (long double __x) __attribute__ ((__nothrow__));
7052
7053
7054extern long double log10l (long double __x) __attribute__ ((__nothrow__)); extern long double __log10l (long double __x) __attribute__ ((__nothrow__));
7055
7056
7057extern long double modfl (long double __x, long double *__iptr) __attribute__ ((__nothrow__)); extern long double __modfl (long double __x, long double *__iptr) __attribute__ ((__nothrow__));
7058
7059
7060
7061
7062extern long double exp10l (long double __x) __attribute__ ((__nothrow__)); extern long double __exp10l (long double __x) __attribute__ ((__nothrow__));
7063
7064extern long double pow10l (long double __x) __attribute__ ((__nothrow__)); extern long double __pow10l (long double __x) __attribute__ ((__nothrow__));
7065
7066
7067
7068
7069
7070extern long double expm1l (long double __x) __attribute__ ((__nothrow__)); extern long double __expm1l (long double __x) __attribute__ ((__nothrow__));
7071
7072
7073extern long double log1pl (long double __x) __attribute__ ((__nothrow__)); extern long double __log1pl (long double __x) __attribute__ ((__nothrow__));
7074
7075
7076extern long double logbl (long double __x) __attribute__ ((__nothrow__)); extern long double __logbl (long double __x) __attribute__ ((__nothrow__));
7077
7078
7079
7080
7081
7082
7083extern long double exp2l (long double __x) __attribute__ ((__nothrow__)); extern long double __exp2l (long double __x) __attribute__ ((__nothrow__));
7084
7085
7086extern long double log2l (long double __x) __attribute__ ((__nothrow__)); extern long double __log2l (long double __x) __attribute__ ((__nothrow__));
7087
7088
7089
7090
7091
7092
7093
7094
7095extern long double powl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __powl (long double __x, long double __y) __attribute__ ((__nothrow__));
7096
7097
7098extern long double sqrtl (long double __x) __attribute__ ((__nothrow__)); extern long double __sqrtl (long double __x) __attribute__ ((__nothrow__));
7099
7100
7101
7102
7103
7104extern long double hypotl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __hypotl (long double __x, long double __y) __attribute__ ((__nothrow__));
7105
7106
7107
7108
7109
7110
7111extern long double cbrtl (long double __x) __attribute__ ((__nothrow__)); extern long double __cbrtl (long double __x) __attribute__ ((__nothrow__));
7112
7113
7114
7115
7116
7117
7118
7119
7120extern long double ceill (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __ceill (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7121
7122
7123extern long double fabsl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __fabsl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7124
7125
7126extern long double floorl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __floorl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7127
7128
7129extern long double fmodl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __fmodl (long double __x, long double __y) __attribute__ ((__nothrow__));
7130
7131
7132
7133
7134extern int __isinfl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7135
7136
7137extern int __finitel (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7138
7139
7140
7141
7142
7143extern int isinfl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7144
7145
7146extern int finitel (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7147
7148
7149extern long double dreml (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __dreml (long double __x, long double __y) __attribute__ ((__nothrow__));
7150
7151
7152
7153extern long double significandl (long double __x) __attribute__ ((__nothrow__)); extern long double __significandl (long double __x) __attribute__ ((__nothrow__));
7154
7155
7156
7157
7158
7159extern long double copysignl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __copysignl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7160
7161
7162
7163
7164
7165
7166extern long double nanl (__const char *__tagb) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __nanl (__const char *__tagb) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7167
7168
7169
7170
7171
7172extern int __isnanl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7173
7174
7175
7176extern int isnanl (long double __value) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7177
7178
7179extern long double j0l (long double) __attribute__ ((__nothrow__)); extern long double __j0l (long double) __attribute__ ((__nothrow__));
7180extern long double j1l (long double) __attribute__ ((__nothrow__)); extern long double __j1l (long double) __attribute__ ((__nothrow__));
7181extern long double jnl (int, long double) __attribute__ ((__nothrow__)); extern long double __jnl (int, long double) __attribute__ ((__nothrow__));
7182extern long double y0l (long double) __attribute__ ((__nothrow__)); extern long double __y0l (long double) __attribute__ ((__nothrow__));
7183extern long double y1l (long double) __attribute__ ((__nothrow__)); extern long double __y1l (long double) __attribute__ ((__nothrow__));
7184extern long double ynl (int, long double) __attribute__ ((__nothrow__)); extern long double __ynl (int, long double) __attribute__ ((__nothrow__));
7185
7186
7187
7188
7189
7190
7191extern long double erfl (long double) __attribute__ ((__nothrow__)); extern long double __erfl (long double) __attribute__ ((__nothrow__));
7192extern long double erfcl (long double) __attribute__ ((__nothrow__)); extern long double __erfcl (long double) __attribute__ ((__nothrow__));
7193extern long double lgammal (long double) __attribute__ ((__nothrow__)); extern long double __lgammal (long double) __attribute__ ((__nothrow__));
7194
7195
7196
7197
7198
7199
7200extern long double tgammal (long double) __attribute__ ((__nothrow__)); extern long double __tgammal (long double) __attribute__ ((__nothrow__));
7201
7202
7203
7204
7205
7206extern long double gammal (long double) __attribute__ ((__nothrow__)); extern long double __gammal (long double) __attribute__ ((__nothrow__));
7207
7208
7209
7210
7211
7212
7213extern long double lgammal_r (long double, int *__signgamp) __attribute__ ((__nothrow__)); extern long double __lgammal_r (long double, int *__signgamp) __attribute__ ((__nothrow__));
7214
7215
7216
7217
7218
7219
7220
7221extern long double rintl (long double __x) __attribute__ ((__nothrow__)); extern long double __rintl (long double __x) __attribute__ ((__nothrow__));
7222
7223
7224extern long double nextafterl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __nextafterl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7225
7226extern long double nexttowardl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __nexttowardl (long double __x, long double __y) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7227
7228
7229
7230extern long double remainderl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __remainderl (long double __x, long double __y) __attribute__ ((__nothrow__));
7231
7232
7233
7234extern long double scalbnl (long double __x, int __n) __attribute__ ((__nothrow__)); extern long double __scalbnl (long double __x, int __n) __attribute__ ((__nothrow__));
7235
7236
7237
7238extern int ilogbl (long double __x) __attribute__ ((__nothrow__)); extern int __ilogbl (long double __x) __attribute__ ((__nothrow__));
7239
7240
7241
7242
7243extern long double scalblnl (long double __x, long int __n) __attribute__ ((__nothrow__)); extern long double __scalblnl (long double __x, long int __n) __attribute__ ((__nothrow__));
7244
7245
7246
7247extern long double nearbyintl (long double __x) __attribute__ ((__nothrow__)); extern long double __nearbyintl (long double __x) __attribute__ ((__nothrow__));
7248
7249
7250
7251extern long double roundl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __roundl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7252
7253
7254
7255extern long double truncl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)); extern long double __truncl (long double __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
7256
7257
7258
7259
7260extern long double remquol (long double __x, long double __y, int *__quo) __attribute__ ((__nothrow__)); extern long double __remquol (long double __x, long double __y, int *__quo) __attribute__ ((__nothrow__));
7261
7262
7263
7264
7265
7266
7267extern long int lrintl (long double __x) __attribute__ ((__nothrow__)); extern long int __lrintl (long double __x) __attribute__ ((__nothrow__));
7268extern long long int llrintl (long double __x) __attribute__ ((__nothrow__)); extern long long int __llrintl (long double __x) __attribute__ ((__nothrow__));
7269
7270
7271
7272extern long int lroundl (long double __x) __attribute__ ((__nothrow__)); extern long int __lroundl (long double __x) __attribute__ ((__nothrow__));
7273extern long long int llroundl (long double __x) __attribute__ ((__nothrow__)); extern long long int __llroundl (long double __x) __attribute__ ((__nothrow__));
7274
7275
7276
7277extern long double fdiml (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __fdiml (long double __x, long double __y) __attribute__ ((__nothrow__));
7278
7279
7280extern long double fmaxl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __fmaxl (long double __x, long double __y) __attribute__ ((__nothrow__));
7281
7282
7283extern long double fminl (long double __x, long double __y) __attribute__ ((__nothrow__)); extern long double __fminl (long double __x, long double __y) __attribute__ ((__nothrow__));
7284
7285
7286
7287extern int __fpclassifyl (long double __value) __attribute__ ((__nothrow__))
7288 __attribute__ ((__const__));
7289
7290
7291extern int __signbitl (long double __value) __attribute__ ((__nothrow__))
7292 __attribute__ ((__const__));
7293
7294
7295
7296extern long double fmal (long double __x, long double __y, long double __z) __attribute__ ((__nothrow__)); extern long double __fmal (long double __x, long double __y, long double __z) __attribute__ ((__nothrow__));
7297
7298
7299
7300
7301
7302
7303
7304
7305extern long double scalbl (long double __x, long double __n) __attribute__ ((__nothrow__)); extern long double __scalbl (long double __x, long double __n) __attribute__ ((__nothrow__));
7306# 142 "/usr/include/math.h" 2 3 4
7307# 157 "/usr/include/math.h" 3 4
7308extern int signgam;
7309# 198 "/usr/include/math.h" 3 4
7310enum
7311 {
7312 FP_NAN,
7313
7314 FP_INFINITE,
7315
7316 FP_ZERO,
7317
7318 FP_SUBNORMAL,
7319
7320 FP_NORMAL
7321
7322 };
7323# 291 "/usr/include/math.h" 3 4
7324typedef enum
7325{
7326 _IEEE_ = -1,
7327 _SVID_,
7328 _XOPEN_,
7329 _POSIX_,
7330 _ISOC_
7331} _LIB_VERSION_TYPE;
7332
7333
7334
7335
7336extern _LIB_VERSION_TYPE _LIB_VERSION;
7337# 316 "/usr/include/math.h" 3 4
7338struct exception
7339
7340 {
7341 int type;
7342 char *name;
7343 double arg1;
7344 double arg2;
7345 double retval;
7346 };
7347
7348
7349
7350
7351extern int matherr (struct exception *__exc);
7352# 416 "/usr/include/math.h" 3 4
7353# 1 "/usr/include/bits/mathinline.h" 1 3 4
7354# 417 "/usr/include/math.h" 2 3 4
7355# 472 "/usr/include/math.h" 3 4
7356
7357# 43 "../../src/mesa/main/compiler.h" 2
7358
7359# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/limits.h" 1 3 4
7360# 34 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/limits.h" 3 4
7361# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/syslimits.h" 1 3 4
7362
7363
7364
7365
7366
7367
7368# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/limits.h" 1 3 4
7369# 169 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/limits.h" 3 4
7370# 1 "/usr/include/limits.h" 1 3 4
7371# 145 "/usr/include/limits.h" 3 4
7372# 1 "/usr/include/bits/posix1_lim.h" 1 3 4
7373# 157 "/usr/include/bits/posix1_lim.h" 3 4
7374# 1 "/usr/include/bits/local_lim.h" 1 3 4
7375# 39 "/usr/include/bits/local_lim.h" 3 4
7376# 1 "/usr/include/linux/limits.h" 1 3 4
7377# 40 "/usr/include/bits/local_lim.h" 2 3 4
7378# 158 "/usr/include/bits/posix1_lim.h" 2 3 4
7379# 146 "/usr/include/limits.h" 2 3 4
7380
7381
7382
7383# 1 "/usr/include/bits/posix2_lim.h" 1 3 4
7384# 150 "/usr/include/limits.h" 2 3 4
7385
7386
7387
7388# 1 "/usr/include/bits/xopen_lim.h" 1 3 4
7389# 34 "/usr/include/bits/xopen_lim.h" 3 4
7390# 1 "/usr/include/bits/stdio_lim.h" 1 3 4
7391# 35 "/usr/include/bits/xopen_lim.h" 2 3 4
7392# 154 "/usr/include/limits.h" 2 3 4
7393# 170 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/limits.h" 2 3 4
7394# 8 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/syslimits.h" 2 3 4
7395# 35 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include-fixed/limits.h" 2 3 4
7396# 45 "../../src/mesa/main/compiler.h" 2
7397# 1 "/usr/include/stdlib.h" 1 3 4
7398# 33 "/usr/include/stdlib.h" 3 4
7399# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
7400# 34 "/usr/include/stdlib.h" 2 3 4
7401
7402
7403
7404
7405
7406
7407
7408
7409# 1 "/usr/include/bits/waitflags.h" 1 3 4
7410# 43 "/usr/include/stdlib.h" 2 3 4
7411# 1 "/usr/include/bits/waitstatus.h" 1 3 4
7412# 67 "/usr/include/bits/waitstatus.h" 3 4
7413union wait
7414 {
7415 int w_status;
7416 struct
7417 {
7418
7419
7420
7421
7422
7423
7424
7425 unsigned int:16;
7426 unsigned int __w_retcode:8;
7427 unsigned int __w_coredump:1;
7428 unsigned int __w_termsig:7;
7429
7430 } __wait_terminated;
7431 struct
7432 {
7433
7434
7435
7436
7437
7438
7439 unsigned int:16;
7440 unsigned int __w_stopsig:8;
7441 unsigned int __w_stopval:8;
7442
7443 } __wait_stopped;
7444 };
7445# 44 "/usr/include/stdlib.h" 2 3 4
7446# 68 "/usr/include/stdlib.h" 3 4
7447typedef union
7448 {
7449 union wait *__uptr;
7450 int *__iptr;
7451 } __WAIT_STATUS __attribute__ ((__transparent_union__));
7452# 96 "/usr/include/stdlib.h" 3 4
7453
7454
7455typedef struct
7456 {
7457 int quot;
7458 int rem;
7459 } div_t;
7460
7461
7462
7463typedef struct
7464 {
7465 long int quot;
7466 long int rem;
7467 } ldiv_t;
7468
7469
7470
7471
7472
7473
7474
7475__extension__ typedef struct
7476 {
7477 long long int quot;
7478 long long int rem;
7479 } lldiv_t;
7480
7481
7482# 140 "/usr/include/stdlib.h" 3 4
7483extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
7484
7485
7486
7487
7488extern double atof (__const char *__nptr)
7489 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7490
7491extern int atoi (__const char *__nptr)
7492 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7493
7494extern long int atol (__const char *__nptr)
7495 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7496
7497
7498
7499
7500
7501__extension__ extern long long int atoll (__const char *__nptr)
7502 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7503
7504
7505
7506
7507
7508extern double strtod (__const char *__restrict __nptr,
7509 char **__restrict __endptr)
7510 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7511
7512
7513
7514
7515
7516extern float strtof (__const char *__restrict __nptr,
7517 char **__restrict __endptr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7518
7519extern long double strtold (__const char *__restrict __nptr,
7520 char **__restrict __endptr)
7521 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7522
7523
7524
7525
7526
7527extern long int strtol (__const char *__restrict __nptr,
7528 char **__restrict __endptr, int __base)
7529 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7530
7531extern unsigned long int strtoul (__const char *__restrict __nptr,
7532 char **__restrict __endptr, int __base)
7533 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7534
7535
7536
7537
7538__extension__
7539extern long long int strtoq (__const char *__restrict __nptr,
7540 char **__restrict __endptr, int __base)
7541 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7542
7543__extension__
7544extern unsigned long long int strtouq (__const char *__restrict __nptr,
7545 char **__restrict __endptr, int __base)
7546 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7547
7548
7549
7550
7551
7552__extension__
7553extern long long int strtoll (__const char *__restrict __nptr,
7554 char **__restrict __endptr, int __base)
7555 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7556
7557__extension__
7558extern unsigned long long int strtoull (__const char *__restrict __nptr,
7559 char **__restrict __endptr, int __base)
7560 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7561
7562# 240 "/usr/include/stdlib.h" 3 4
7563extern long int strtol_l (__const char *__restrict __nptr,
7564 char **__restrict __endptr, int __base,
7565 __locale_t __loc) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
7566
7567extern unsigned long int strtoul_l (__const char *__restrict __nptr,
7568 char **__restrict __endptr,
7569 int __base, __locale_t __loc)
7570 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
7571
7572__extension__
7573extern long long int strtoll_l (__const char *__restrict __nptr,
7574 char **__restrict __endptr, int __base,
7575 __locale_t __loc)
7576 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
7577
7578__extension__
7579extern unsigned long long int strtoull_l (__const char *__restrict __nptr,
7580 char **__restrict __endptr,
7581 int __base, __locale_t __loc)
7582 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 4))) __attribute__ ((__warn_unused_result__));
7583
7584extern double strtod_l (__const char *__restrict __nptr,
7585 char **__restrict __endptr, __locale_t __loc)
7586 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
7587
7588extern float strtof_l (__const char *__restrict __nptr,
7589 char **__restrict __endptr, __locale_t __loc)
7590 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
7591
7592extern long double strtold_l (__const char *__restrict __nptr,
7593 char **__restrict __endptr,
7594 __locale_t __loc)
7595 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))) __attribute__ ((__warn_unused_result__));
7596
7597
7598
7599
7600
7601extern __inline __attribute__ ((__gnu_inline__)) double
7602__attribute__ ((__nothrow__)) atof (__const char *__nptr)
7603{
7604 return strtod (__nptr, (char **) ((void *)0));
7605}
7606extern __inline __attribute__ ((__gnu_inline__)) int
7607__attribute__ ((__nothrow__)) atoi (__const char *__nptr)
7608{
7609 return (int) strtol (__nptr, (char **) ((void *)0), 10);
7610}
7611extern __inline __attribute__ ((__gnu_inline__)) long int
7612__attribute__ ((__nothrow__)) atol (__const char *__nptr)
7613{
7614 return strtol (__nptr, (char **) ((void *)0), 10);
7615}
7616
7617
7618
7619
7620__extension__ extern __inline __attribute__ ((__gnu_inline__)) long long int
7621__attribute__ ((__nothrow__)) atoll (__const char *__nptr)
7622{
7623 return strtoll (__nptr, (char **) ((void *)0), 10);
7624}
7625
7626# 311 "/usr/include/stdlib.h" 3 4
7627extern char *l64a (long int __n) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
7628
7629
7630extern long int a64l (__const char *__s)
7631 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
7632
7633
7634
7635
7636# 1 "/usr/include/sys/types.h" 1 3 4
7637# 28 "/usr/include/sys/types.h" 3 4
7638
7639
7640
7641
7642
7643
7644typedef __u_char u_char;
7645typedef __u_short u_short;
7646typedef __u_int u_int;
7647typedef __u_long u_long;
7648typedef __quad_t quad_t;
7649typedef __u_quad_t u_quad_t;
7650typedef __fsid_t fsid_t;
7651
7652
7653
7654
7655typedef __loff_t loff_t;
7656
7657
7658
7659typedef __ino_t ino_t;
7660
7661
7662
7663
7664
7665
7666typedef __ino64_t ino64_t;
7667
7668
7669
7670
7671typedef __dev_t dev_t;
7672
7673
7674
7675
7676typedef __gid_t gid_t;
7677
7678
7679
7680
7681typedef __mode_t mode_t;
7682
7683
7684
7685
7686typedef __nlink_t nlink_t;
7687
7688
7689
7690
7691typedef __uid_t uid_t;
7692
7693
7694
7695
7696
7697typedef __off_t off_t;
7698
7699
7700
7701
7702
7703
7704typedef __off64_t off64_t;
7705
7706
7707
7708
7709typedef __pid_t pid_t;
7710
7711
7712
7713
7714
7715typedef __id_t id_t;
7716
7717
7718
7719
7720typedef __ssize_t ssize_t;
7721
7722
7723
7724
7725
7726typedef __daddr_t daddr_t;
7727typedef __caddr_t caddr_t;
7728
7729
7730
7731
7732
7733typedef __key_t key_t;
7734# 133 "/usr/include/sys/types.h" 3 4
7735# 1 "/usr/include/time.h" 1 3 4
7736# 58 "/usr/include/time.h" 3 4
7737
7738
7739typedef __clock_t clock_t;
7740
7741
7742
7743# 74 "/usr/include/time.h" 3 4
7744
7745
7746typedef __time_t time_t;
7747
7748
7749
7750# 92 "/usr/include/time.h" 3 4
7751typedef __clockid_t clockid_t;
7752# 104 "/usr/include/time.h" 3 4
7753typedef __timer_t timer_t;
7754# 134 "/usr/include/sys/types.h" 2 3 4
7755
7756
7757
7758typedef __useconds_t useconds_t;
7759
7760
7761
7762typedef __suseconds_t suseconds_t;
7763
7764
7765
7766
7767
7768# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
7769# 148 "/usr/include/sys/types.h" 2 3 4
7770
7771
7772
7773typedef unsigned long int ulong;
7774typedef unsigned short int ushort;
7775typedef unsigned int uint;
7776# 201 "/usr/include/sys/types.h" 3 4
7777typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
7778typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
7779typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
7780typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
7781
7782typedef int register_t __attribute__ ((__mode__ (__word__)));
7783# 220 "/usr/include/sys/types.h" 3 4
7784# 1 "/usr/include/sys/select.h" 1 3 4
7785# 31 "/usr/include/sys/select.h" 3 4
7786# 1 "/usr/include/bits/select.h" 1 3 4
7787# 32 "/usr/include/sys/select.h" 2 3 4
7788
7789
7790# 1 "/usr/include/bits/sigset.h" 1 3 4
7791# 24 "/usr/include/bits/sigset.h" 3 4
7792typedef int __sig_atomic_t;
7793
7794
7795
7796
7797typedef struct
7798 {
7799 unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
7800 } __sigset_t;
7801# 35 "/usr/include/sys/select.h" 2 3 4
7802
7803
7804
7805typedef __sigset_t sigset_t;
7806
7807
7808
7809
7810
7811# 1 "/usr/include/time.h" 1 3 4
7812# 120 "/usr/include/time.h" 3 4
7813struct timespec
7814 {
7815 __time_t tv_sec;
7816 long int tv_nsec;
7817 };
7818# 45 "/usr/include/sys/select.h" 2 3 4
7819
7820# 1 "/usr/include/bits/time.h" 1 3 4
7821# 75 "/usr/include/bits/time.h" 3 4
7822struct timeval
7823 {
7824 __time_t tv_sec;
7825 __suseconds_t tv_usec;
7826 };
7827# 47 "/usr/include/sys/select.h" 2 3 4
7828# 55 "/usr/include/sys/select.h" 3 4
7829typedef long int __fd_mask;
7830# 67 "/usr/include/sys/select.h" 3 4
7831typedef struct
7832 {
7833
7834
7835
7836 __fd_mask fds_bits[1024 / (8 * (int) sizeof (__fd_mask))];
7837
7838
7839
7840
7841
7842 } fd_set;
7843
7844
7845
7846
7847
7848
7849typedef __fd_mask fd_mask;
7850# 99 "/usr/include/sys/select.h" 3 4
7851
7852# 109 "/usr/include/sys/select.h" 3 4
7853extern int select (int __nfds, fd_set *__restrict __readfds,
7854 fd_set *__restrict __writefds,
7855 fd_set *__restrict __exceptfds,
7856 struct timeval *__restrict __timeout);
7857# 121 "/usr/include/sys/select.h" 3 4
7858extern int pselect (int __nfds, fd_set *__restrict __readfds,
7859 fd_set *__restrict __writefds,
7860 fd_set *__restrict __exceptfds,
7861 const struct timespec *__restrict __timeout,
7862 const __sigset_t *__restrict __sigmask);
7863
7864
7865
7866# 221 "/usr/include/sys/types.h" 2 3 4
7867
7868
7869# 1 "/usr/include/sys/sysmacros.h" 1 3 4
7870# 30 "/usr/include/sys/sysmacros.h" 3 4
7871__extension__
7872extern unsigned int gnu_dev_major (unsigned long long int __dev)
7873 __attribute__ ((__nothrow__));
7874__extension__
7875extern unsigned int gnu_dev_minor (unsigned long long int __dev)
7876 __attribute__ ((__nothrow__));
7877__extension__
7878extern unsigned long long int gnu_dev_makedev (unsigned int __major,
7879 unsigned int __minor)
7880 __attribute__ ((__nothrow__));
7881
7882
7883__extension__ extern __inline __attribute__ ((__gnu_inline__)) unsigned int
7884__attribute__ ((__nothrow__)) gnu_dev_major (unsigned long long int __dev)
7885{
7886 return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff);
7887}
7888
7889__extension__ extern __inline __attribute__ ((__gnu_inline__)) unsigned int
7890__attribute__ ((__nothrow__)) gnu_dev_minor (unsigned long long int __dev)
7891{
7892 return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff);
7893}
7894
7895__extension__ extern __inline __attribute__ ((__gnu_inline__)) unsigned long long int
7896__attribute__ ((__nothrow__)) gnu_dev_makedev (unsigned int __major, unsigned int __minor)
7897{
7898 return ((__minor & 0xff) | ((__major & 0xfff) << 8)
7899 | (((unsigned long long int) (__minor & ~0xff)) << 12)
7900 | (((unsigned long long int) (__major & ~0xfff)) << 32));
7901}
7902# 224 "/usr/include/sys/types.h" 2 3 4
7903
7904
7905
7906
7907
7908typedef __blksize_t blksize_t;
7909
7910
7911
7912
7913
7914
7915typedef __blkcnt_t blkcnt_t;
7916
7917
7918
7919typedef __fsblkcnt_t fsblkcnt_t;
7920
7921
7922
7923typedef __fsfilcnt_t fsfilcnt_t;
7924# 263 "/usr/include/sys/types.h" 3 4
7925typedef __blkcnt64_t blkcnt64_t;
7926typedef __fsblkcnt64_t fsblkcnt64_t;
7927typedef __fsfilcnt64_t fsfilcnt64_t;
7928
7929
7930
7931
7932
7933# 1 "/usr/include/bits/pthreadtypes.h" 1 3 4
7934# 46 "/usr/include/bits/pthreadtypes.h" 3 4
7935typedef unsigned long int pthread_t;
7936
7937typedef union
7938{
7939 char __size[36];
7940 long int __align;
7941} pthread_attr_t;
7942
7943
7944typedef struct __pthread_internal_slist
7945{
7946 struct __pthread_internal_slist *__next;
7947} __pthread_slist_t;
7948
7949
7950
7951
7952typedef union
7953{
7954 struct __pthread_mutex_s
7955 {
7956 int __lock __attribute__ ((aligned(16)));
7957 unsigned int __count;
7958 int __owner;
7959
7960
7961 int __kind;
7962
7963
7964
7965 int __compat_padding[4];
7966
7967
7968 unsigned int __nusers;
7969 __extension__ union
7970 {
7971 int __spins;
7972 __pthread_slist_t __list;
7973 };
7974
7975
7976 int __reserved1;
7977 int __reserved2;
7978 } __data;
7979 char __size[48];
7980 long int __align;
7981} pthread_mutex_t;
7982
7983typedef union
7984{
7985 char __size[4];
7986 long int __align;
7987} pthread_mutexattr_t;
7988# 108 "/usr/include/bits/pthreadtypes.h" 3 4
7989typedef union
7990{
7991 struct
7992 {
7993
7994
7995
7996
7997 int __lock __attribute__ ((aligned(16)));
7998
7999
8000
8001
8002 int __initializer;
8003 unsigned int __futex;
8004 void *__mutex;
8005
8006
8007 __extension__ unsigned long long int __total_seq;
8008 __extension__ unsigned long long int __wakeup_seq;
8009 __extension__ unsigned long long int __woken_seq;
8010 unsigned int __nwaiters;
8011 unsigned int __broadcast_seq;
8012
8013
8014 } __data;
8015 char __size[48];
8016 __extension__ long long int __align;
8017} pthread_cond_t;
8018
8019typedef union
8020{
8021 char __size[4];
8022 long int __align;
8023} pthread_condattr_t;
8024
8025
8026
8027typedef unsigned int pthread_key_t;
8028
8029
8030
8031typedef int pthread_once_t;
8032
8033
8034
8035
8036
8037typedef union
8038{
8039 struct
8040 {
8041
8042
8043
8044
8045 int __compat_padding[4] __attribute__ ((aligned(16)));
8046 int __lock;
8047 unsigned int __nr_readers;
8048 unsigned int __readers_wakeup;
8049 unsigned int __writer_wakeup;
8050 unsigned int __nr_readers_queued;
8051 unsigned int __nr_writers_queued;
8052 int __writer;
8053
8054
8055
8056 int __reserved1;
8057
8058
8059 unsigned char __pad2;
8060 unsigned char __pad1;
8061 unsigned char __shared;
8062 unsigned char __flags;
8063
8064
8065
8066 int __reserved2;
8067 int __reserved3;
8068 int __reserved4;
8069 } __data;
8070 char __size[64];
8071 long int __align;
8072} pthread_rwlock_t;
8073
8074typedef union
8075{
8076 char __size[8];
8077 long int __align;
8078} pthread_rwlockattr_t;
8079
8080
8081
8082
8083
8084typedef volatile int pthread_spinlock_t;
8085
8086
8087
8088
8089typedef union
8090{
8091 char __size[48];
8092 long int __align;
8093} pthread_barrier_t;
8094
8095typedef union
8096{
8097 char __size[4];
8098 int __align;
8099} pthread_barrierattr_t;
8100# 272 "/usr/include/sys/types.h" 2 3 4
8101
8102
8103
8104# 321 "/usr/include/stdlib.h" 2 3 4
8105
8106
8107
8108
8109
8110
8111extern long int random (void) __attribute__ ((__nothrow__));
8112
8113
8114extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__));
8115
8116
8117
8118
8119
8120extern char *initstate (unsigned int __seed, char *__statebuf,
8121 size_t __statelen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
8122
8123
8124
8125extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8126
8127
8128
8129
8130
8131
8132
8133struct random_data
8134 {
8135 int32_t *fptr;
8136 int32_t *rptr;
8137 int32_t *state;
8138 int rand_type;
8139 int rand_deg;
8140 int rand_sep;
8141 int32_t *end_ptr;
8142 };
8143
8144extern int random_r (struct random_data *__restrict __buf,
8145 int32_t *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8146
8147extern int srandom_r (unsigned int __seed, struct random_data *__buf)
8148 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
8149
8150extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
8151 size_t __statelen,
8152 struct random_data *__restrict __buf)
8153 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));
8154
8155extern int setstate_r (char *__restrict __statebuf,
8156 struct random_data *__restrict __buf)
8157 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8158
8159
8160
8161
8162
8163
8164extern int rand (void) __attribute__ ((__nothrow__));
8165
8166extern void srand (unsigned int __seed) __attribute__ ((__nothrow__));
8167
8168
8169
8170
8171extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__));
8172
8173
8174
8175
8176
8177
8178
8179extern double drand48 (void) __attribute__ ((__nothrow__));
8180extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8181
8182
8183extern long int lrand48 (void) __attribute__ ((__nothrow__));
8184extern long int nrand48 (unsigned short int __xsubi[3])
8185 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8186
8187
8188extern long int mrand48 (void) __attribute__ ((__nothrow__));
8189extern long int jrand48 (unsigned short int __xsubi[3])
8190 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8191
8192
8193extern void srand48 (long int __seedval) __attribute__ ((__nothrow__));
8194extern unsigned short int *seed48 (unsigned short int __seed16v[3])
8195 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8196extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8197
8198
8199
8200
8201
8202struct drand48_data
8203 {
8204 unsigned short int __x[3];
8205 unsigned short int __old_x[3];
8206 unsigned short int __c;
8207 unsigned short int __init;
8208 unsigned long long int __a;
8209 };
8210
8211
8212extern int drand48_r (struct drand48_data *__restrict __buffer,
8213 double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8214extern int erand48_r (unsigned short int __xsubi[3],
8215 struct drand48_data *__restrict __buffer,
8216 double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8217
8218
8219extern int lrand48_r (struct drand48_data *__restrict __buffer,
8220 long int *__restrict __result)
8221 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8222extern int nrand48_r (unsigned short int __xsubi[3],
8223 struct drand48_data *__restrict __buffer,
8224 long int *__restrict __result)
8225 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8226
8227
8228extern int mrand48_r (struct drand48_data *__restrict __buffer,
8229 long int *__restrict __result)
8230 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8231extern int jrand48_r (unsigned short int __xsubi[3],
8232 struct drand48_data *__restrict __buffer,
8233 long int *__restrict __result)
8234 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8235
8236
8237extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
8238 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
8239
8240extern int seed48_r (unsigned short int __seed16v[3],
8241 struct drand48_data *__buffer) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8242
8243extern int lcong48_r (unsigned short int __param[7],
8244 struct drand48_data *__buffer)
8245 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255extern void *malloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
8256
8257extern void *calloc (size_t __nmemb, size_t __size)
8258 __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269extern void *realloc (void *__ptr, size_t __size)
8270 __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8271
8272extern void free (void *__ptr) __attribute__ ((__nothrow__));
8273
8274
8275
8276
8277extern void cfree (void *__ptr) __attribute__ ((__nothrow__));
8278
8279
8280
8281# 1 "/usr/include/alloca.h" 1 3 4
8282# 25 "/usr/include/alloca.h" 3 4
8283# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
8284# 26 "/usr/include/alloca.h" 2 3 4
8285
8286
8287
8288
8289
8290
8291
8292extern void *alloca (size_t __size) __attribute__ ((__nothrow__));
8293
8294
8295
8296
8297
8298
8299# 498 "/usr/include/stdlib.h" 2 3 4
8300
8301
8302
8303
8304
8305extern void *valloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
8306
8307
8308
8309
8310extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
8311 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8312
8313
8314
8315
8316extern void abort (void) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
8317
8318
8319
8320extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8321# 528 "/usr/include/stdlib.h" 3 4
8322extern int at_quick_exit (void (*__func) (void)) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8323
8324
8325
8326
8327
8328
8329
8330extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
8331 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8332
8333
8334
8335
8336
8337
8338extern void exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
8339
8340
8341
8342
8343
8344
8345
8346extern void quick_exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
8347
8348
8349
8350
8351
8352
8353
8354extern void _Exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));
8355
8356
8357
8358
8359
8360
8361extern char *getenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8362
8363
8364
8365
8366extern char *__secure_getenv (__const char *__name)
8367 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8368
8369
8370
8371
8372
8373extern int putenv (char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8374
8375
8376
8377
8378
8379extern int setenv (__const char *__name, __const char *__value, int __replace)
8380 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
8381
8382
8383extern int unsetenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8384
8385
8386
8387
8388
8389
8390extern int clearenv (void) __attribute__ ((__nothrow__));
8391# 606 "/usr/include/stdlib.h" 3 4
8392extern char *mktemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8393# 620 "/usr/include/stdlib.h" 3 4
8394extern int mkstemp (char *__template) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8395# 630 "/usr/include/stdlib.h" 3 4
8396extern int mkstemp64 (char *__template) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8397# 642 "/usr/include/stdlib.h" 3 4
8398extern int mkstemps (char *__template, int __suffixlen) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8399# 652 "/usr/include/stdlib.h" 3 4
8400extern int mkstemps64 (char *__template, int __suffixlen)
8401 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8402# 663 "/usr/include/stdlib.h" 3 4
8403extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8404# 674 "/usr/include/stdlib.h" 3 4
8405extern int mkostemp (char *__template, int __flags) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8406# 684 "/usr/include/stdlib.h" 3 4
8407extern int mkostemp64 (char *__template, int __flags) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8408# 694 "/usr/include/stdlib.h" 3 4
8409extern int mkostemps (char *__template, int __suffixlen, int __flags)
8410 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8411# 706 "/usr/include/stdlib.h" 3 4
8412extern int mkostemps64 (char *__template, int __suffixlen, int __flags)
8413 __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423extern int system (__const char *__command) __attribute__ ((__warn_unused_result__));
8424
8425
8426
8427
8428
8429
8430extern char *canonicalize_file_name (__const char *__name)
8431 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8432# 734 "/usr/include/stdlib.h" 3 4
8433extern char *realpath (__const char *__restrict __name,
8434 char *__restrict __resolved) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8435
8436
8437
8438
8439
8440
8441typedef int (*__compar_fn_t) (__const void *, __const void *);
8442
8443
8444typedef __compar_fn_t comparison_fn_t;
8445
8446
8447
8448typedef int (*__compar_d_fn_t) (__const void *, __const void *, void *);
8449
8450
8451
8452
8453
8454extern void *bsearch (__const void *__key, __const void *__base,
8455 size_t __nmemb, size_t __size, __compar_fn_t __compar)
8456 __attribute__ ((__nonnull__ (1, 2, 5))) __attribute__ ((__warn_unused_result__));
8457
8458
8459
8460extern void qsort (void *__base, size_t __nmemb, size_t __size,
8461 __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
8462
8463extern void qsort_r (void *__base, size_t __nmemb, size_t __size,
8464 __compar_d_fn_t __compar, void *__arg)
8465 __attribute__ ((__nonnull__ (1, 4)));
8466
8467
8468
8469
8470extern int abs (int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
8471extern long int labs (long int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
8472
8473
8474
8475__extension__ extern long long int llabs (long long int __x)
8476 __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
8477
8478
8479
8480
8481
8482
8483
8484extern div_t div (int __numer, int __denom)
8485 __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
8486extern ldiv_t ldiv (long int __numer, long int __denom)
8487 __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
8488
8489
8490
8491
8492__extension__ extern lldiv_t lldiv (long long int __numer,
8493 long long int __denom)
8494 __attribute__ ((__nothrow__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
8495
8496# 808 "/usr/include/stdlib.h" 3 4
8497extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
8498 int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
8499
8500
8501
8502
8503extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
8504 int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
8505
8506
8507
8508
8509extern char *gcvt (double __value, int __ndigit, char *__buf)
8510 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
8511
8512
8513
8514
8515extern char *qecvt (long double __value, int __ndigit,
8516 int *__restrict __decpt, int *__restrict __sign)
8517 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
8518extern char *qfcvt (long double __value, int __ndigit,
8519 int *__restrict __decpt, int *__restrict __sign)
8520 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
8521extern char *qgcvt (long double __value, int __ndigit, char *__buf)
8522 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
8523
8524
8525
8526
8527extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
8528 int *__restrict __sign, char *__restrict __buf,
8529 size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
8530extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
8531 int *__restrict __sign, char *__restrict __buf,
8532 size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
8533
8534extern int qecvt_r (long double __value, int __ndigit,
8535 int *__restrict __decpt, int *__restrict __sign,
8536 char *__restrict __buf, size_t __len)
8537 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
8538extern int qfcvt_r (long double __value, int __ndigit,
8539 int *__restrict __decpt, int *__restrict __sign,
8540 char *__restrict __buf, size_t __len)
8541 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));
8542
8543
8544
8545
8546
8547
8548
8549extern int mblen (__const char *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8550
8551
8552extern int mbtowc (wchar_t *__restrict __pwc,
8553 __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8554
8555
8556extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8557
8558
8559
8560extern size_t mbstowcs (wchar_t *__restrict __pwcs,
8561 __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__));
8562
8563extern size_t wcstombs (char *__restrict __s,
8564 __const wchar_t *__restrict __pwcs, size_t __n)
8565 __attribute__ ((__nothrow__));
8566
8567
8568
8569
8570
8571
8572
8573
8574extern int rpmatch (__const char *__response) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
8575# 896 "/usr/include/stdlib.h" 3 4
8576extern int getsubopt (char **__restrict __optionp,
8577 char *__const *__restrict __tokens,
8578 char **__restrict __valuep)
8579 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2, 3))) __attribute__ ((__warn_unused_result__));
8580
8581
8582
8583
8584
8585extern void setkey (__const char *__key) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8586
8587
8588
8589
8590
8591
8592
8593extern int posix_openpt (int __oflag) __attribute__ ((__warn_unused_result__));
8594
8595
8596
8597
8598
8599
8600
8601extern int grantpt (int __fd) __attribute__ ((__nothrow__));
8602
8603
8604
8605extern int unlockpt (int __fd) __attribute__ ((__nothrow__));
8606
8607
8608
8609
8610extern char *ptsname (int __fd) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8611
8612
8613
8614
8615
8616
8617extern int ptsname_r (int __fd, char *__buf, size_t __buflen)
8618 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
8619
8620
8621extern int getpt (void);
8622
8623
8624
8625
8626
8627
8628extern int getloadavg (double __loadavg[], int __nelem)
8629 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
8630
8631
8632
8633
8634
8635# 1 "/usr/include/bits/stdlib.h" 1 3 4
8636# 24 "/usr/include/bits/stdlib.h" 3 4
8637extern char *__realpath_chk (__const char *__restrict __name,
8638 char *__restrict __resolved,
8639 size_t __resolvedlen) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8640extern char *__realpath_alias (__const char *__restrict __name, char *__restrict __resolved) __asm__ ("" "realpath") __attribute__ ((__nothrow__))
8641
8642 __attribute__ ((__warn_unused_result__));
8643extern char *__realpath_chk_warn (__const char *__restrict __name, char *__restrict __resolved, size_t __resolvedlen) __asm__ ("" "__realpath_chk") __attribute__ ((__nothrow__))
8644
8645
8646 __attribute__ ((__warn_unused_result__))
8647 __attribute__((__warning__ ("second argument of realpath must be either NULL or at " "least PATH_MAX bytes long buffer")))
8648 ;
8649
8650extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
8651__attribute__ ((__nothrow__)) realpath (__const char *__restrict __name, char *__restrict __resolved)
8652{
8653 if (__builtin_object_size (__resolved, 2 > 1) != (size_t) -1)
8654 {
8655
8656 if (__builtin_object_size (__resolved, 2 > 1) < 4096)
8657 return __realpath_chk_warn (__name, __resolved, __builtin_object_size (__resolved, 2 > 1));
8658
8659 return __realpath_chk (__name, __resolved, __builtin_object_size (__resolved, 2 > 1));
8660 }
8661
8662 return __realpath_alias (__name, __resolved);
8663}
8664
8665
8666extern int __ptsname_r_chk (int __fd, char *__buf, size_t __buflen,
8667 size_t __nreal) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
8668extern int __ptsname_r_alias (int __fd, char *__buf, size_t __buflen) __asm__ ("" "ptsname_r") __attribute__ ((__nothrow__))
8669
8670 __attribute__ ((__nonnull__ (2)));
8671extern int __ptsname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__ptsname_r_chk") __attribute__ ((__nothrow__))
8672
8673
8674 __attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ptsname_r called with buflen bigger than " "size of buf")))
8675 ;
8676
8677extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
8678__attribute__ ((__nothrow__)) ptsname_r (int __fd, char *__buf, size_t __buflen)
8679{
8680 if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
8681 {
8682 if (!__builtin_constant_p (__buflen))
8683 return __ptsname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
8684 if (__buflen > __builtin_object_size (__buf, 2 > 1))
8685 return __ptsname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
8686 }
8687 return __ptsname_r_alias (__fd, __buf, __buflen);
8688}
8689
8690
8691extern int __wctomb_chk (char *__s, wchar_t __wchar, size_t __buflen)
8692 __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
8693extern int __wctomb_alias (char *__s, wchar_t __wchar) __asm__ ("" "wctomb") __attribute__ ((__nothrow__))
8694 __attribute__ ((__warn_unused_result__));
8695
8696extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) int
8697__attribute__ ((__nothrow__)) wctomb (char *__s, wchar_t __wchar)
8698{
8699
8700
8701
8702
8703
8704
8705
8706 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 && 16 > __builtin_object_size (__s, 2 > 1))
8707 return __wctomb_chk (__s, __wchar, __builtin_object_size (__s, 2 > 1));
8708 return __wctomb_alias (__s, __wchar);
8709}
8710
8711
8712extern size_t __mbstowcs_chk (wchar_t *__restrict __dst,
8713 __const char *__restrict __src,
8714 size_t __len, size_t __dstlen) __attribute__ ((__nothrow__));
8715extern size_t __mbstowcs_alias (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len) __asm__ ("" "mbstowcs") __attribute__ ((__nothrow__))
8716
8717
8718 ;
8719extern size_t __mbstowcs_chk_warn (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__mbstowcs_chk") __attribute__ ((__nothrow__))
8720
8721
8722
8723 __attribute__((__warning__ ("mbstowcs called with dst buffer smaller than len " "* sizeof (wchar_t)")))
8724 ;
8725
8726extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
8727__attribute__ ((__nothrow__)) mbstowcs (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len)
8728
8729{
8730 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
8731 {
8732 if (!__builtin_constant_p (__len))
8733 return __mbstowcs_chk (__dst, __src, __len,
8734 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
8735
8736 if (__len > __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t))
8737 return __mbstowcs_chk_warn (__dst, __src, __len,
8738 __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
8739 }
8740 return __mbstowcs_alias (__dst, __src, __len);
8741}
8742
8743
8744extern size_t __wcstombs_chk (char *__restrict __dst,
8745 __const wchar_t *__restrict __src,
8746 size_t __len, size_t __dstlen) __attribute__ ((__nothrow__));
8747extern size_t __wcstombs_alias (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len) __asm__ ("" "wcstombs") __attribute__ ((__nothrow__))
8748
8749
8750 ;
8751extern size_t __wcstombs_chk_warn (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__wcstombs_chk") __attribute__ ((__nothrow__))
8752
8753
8754
8755 __attribute__((__warning__ ("wcstombs called with dst buffer smaller than len")));
8756
8757extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) size_t
8758__attribute__ ((__nothrow__)) wcstombs (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len)
8759
8760{
8761 if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
8762 {
8763 if (!__builtin_constant_p (__len))
8764 return __wcstombs_chk (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
8765 if (__len > __builtin_object_size (__dst, 2 > 1))
8766 return __wcstombs_chk_warn (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
8767 }
8768 return __wcstombs_alias (__dst, __src, __len);
8769}
8770# 956 "/usr/include/stdlib.h" 2 3 4
8771# 964 "/usr/include/stdlib.h" 3 4
8772
8773# 46 "../../src/mesa/main/compiler.h" 2
8774# 1 "/usr/include/stdio.h" 1 3 4
8775# 30 "/usr/include/stdio.h" 3 4
8776
8777
8778
8779
8780# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
8781# 35 "/usr/include/stdio.h" 2 3 4
8782# 45 "/usr/include/stdio.h" 3 4
8783struct _IO_FILE;
8784
8785
8786
8787typedef struct _IO_FILE FILE;
8788
8789
8790
8791
8792
8793# 65 "/usr/include/stdio.h" 3 4
8794typedef struct _IO_FILE __FILE;
8795# 75 "/usr/include/stdio.h" 3 4
8796# 1 "/usr/include/libio.h" 1 3 4
8797# 32 "/usr/include/libio.h" 3 4
8798# 1 "/usr/include/_G_config.h" 1 3 4
8799# 15 "/usr/include/_G_config.h" 3 4
8800# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
8801# 16 "/usr/include/_G_config.h" 2 3 4
8802
8803
8804
8805
8806# 1 "/usr/include/wchar.h" 1 3 4
8807# 83 "/usr/include/wchar.h" 3 4
8808typedef struct
8809{
8810 int __count;
8811 union
8812 {
8813
8814 unsigned int __wch;
8815
8816
8817
8818 char __wchb[4];
8819 } __value;
8820} __mbstate_t;
8821# 21 "/usr/include/_G_config.h" 2 3 4
8822
8823typedef struct
8824{
8825 __off_t __pos;
8826 __mbstate_t __state;
8827} _G_fpos_t;
8828typedef struct
8829{
8830 __off64_t __pos;
8831 __mbstate_t __state;
8832} _G_fpos64_t;
8833# 53 "/usr/include/_G_config.h" 3 4
8834typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
8835typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
8836typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
8837typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
8838# 33 "/usr/include/libio.h" 2 3 4
8839# 53 "/usr/include/libio.h" 3 4
8840# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stdarg.h" 1 3 4
8841# 40 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stdarg.h" 3 4
8842typedef __builtin_va_list __gnuc_va_list;
8843# 54 "/usr/include/libio.h" 2 3 4
8844# 170 "/usr/include/libio.h" 3 4
8845struct _IO_jump_t; struct _IO_FILE;
8846# 180 "/usr/include/libio.h" 3 4
8847typedef void _IO_lock_t;
8848
8849
8850
8851
8852
8853struct _IO_marker {
8854 struct _IO_marker *_next;
8855 struct _IO_FILE *_sbuf;
8856
8857
8858
8859 int _pos;
8860# 203 "/usr/include/libio.h" 3 4
8861};
8862
8863
8864enum __codecvt_result
8865{
8866 __codecvt_ok,
8867 __codecvt_partial,
8868 __codecvt_error,
8869 __codecvt_noconv
8870};
8871# 271 "/usr/include/libio.h" 3 4
8872struct _IO_FILE {
8873 int _flags;
8874
8875
8876
8877
8878 char* _IO_read_ptr;
8879 char* _IO_read_end;
8880 char* _IO_read_base;
8881 char* _IO_write_base;
8882 char* _IO_write_ptr;
8883 char* _IO_write_end;
8884 char* _IO_buf_base;
8885 char* _IO_buf_end;
8886
8887 char *_IO_save_base;
8888 char *_IO_backup_base;
8889 char *_IO_save_end;
8890
8891 struct _IO_marker *_markers;
8892
8893 struct _IO_FILE *_chain;
8894
8895 int _fileno;
8896
8897
8898
8899 int _flags2;
8900
8901 __off_t _old_offset;
8902
8903
8904
8905 unsigned short _cur_column;
8906 signed char _vtable_offset;
8907 char _shortbuf[1];
8908
8909
8910
8911 _IO_lock_t *_lock;
8912# 319 "/usr/include/libio.h" 3 4
8913 __off64_t _offset;
8914# 328 "/usr/include/libio.h" 3 4
8915 void *__pad1;
8916 void *__pad2;
8917 void *__pad3;
8918 void *__pad4;
8919 size_t __pad5;
8920
8921 int _mode;
8922
8923 char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
8924
8925};
8926
8927
8928typedef struct _IO_FILE _IO_FILE;
8929
8930
8931struct _IO_FILE_plus;
8932
8933extern struct _IO_FILE_plus _IO_2_1_stdin_;
8934extern struct _IO_FILE_plus _IO_2_1_stdout_;
8935extern struct _IO_FILE_plus _IO_2_1_stderr_;
8936# 364 "/usr/include/libio.h" 3 4
8937typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);
8938
8939
8940
8941
8942
8943
8944
8945typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
8946 size_t __n);
8947
8948
8949
8950
8951
8952
8953
8954typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);
8955
8956
8957typedef int __io_close_fn (void *__cookie);
8958
8959
8960
8961
8962typedef __io_read_fn cookie_read_function_t;
8963typedef __io_write_fn cookie_write_function_t;
8964typedef __io_seek_fn cookie_seek_function_t;
8965typedef __io_close_fn cookie_close_function_t;
8966
8967
8968typedef struct
8969{
8970 __io_read_fn *read;
8971 __io_write_fn *write;
8972 __io_seek_fn *seek;
8973 __io_close_fn *close;
8974} _IO_cookie_io_functions_t;
8975typedef _IO_cookie_io_functions_t cookie_io_functions_t;
8976
8977struct _IO_cookie_file;
8978
8979
8980extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write,
8981 void *__cookie, _IO_cookie_io_functions_t __fns);
8982
8983
8984
8985
8986
8987
8988
8989extern int __underflow (_IO_FILE *);
8990extern int __uflow (_IO_FILE *);
8991extern int __overflow (_IO_FILE *, int);
8992# 460 "/usr/include/libio.h" 3 4
8993extern int _IO_getc (_IO_FILE *__fp);
8994extern int _IO_putc (int __c, _IO_FILE *__fp);
8995extern int _IO_feof (_IO_FILE *__fp) __attribute__ ((__nothrow__));
8996extern int _IO_ferror (_IO_FILE *__fp) __attribute__ ((__nothrow__));
8997
8998extern int _IO_peekc_locked (_IO_FILE *__fp);
8999
9000
9001
9002
9003
9004extern void _IO_flockfile (_IO_FILE *) __attribute__ ((__nothrow__));
9005extern void _IO_funlockfile (_IO_FILE *) __attribute__ ((__nothrow__));
9006extern int _IO_ftrylockfile (_IO_FILE *) __attribute__ ((__nothrow__));
9007# 490 "/usr/include/libio.h" 3 4
9008extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,
9009 __gnuc_va_list, int *__restrict);
9010extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,
9011 __gnuc_va_list);
9012extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);
9013extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);
9014
9015extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);
9016extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);
9017
9018extern void _IO_free_backup_area (_IO_FILE *) __attribute__ ((__nothrow__));
9019# 76 "/usr/include/stdio.h" 2 3 4
9020
9021
9022
9023
9024typedef __gnuc_va_list va_list;
9025# 109 "/usr/include/stdio.h" 3 4
9026
9027
9028typedef _G_fpos_t fpos_t;
9029
9030
9031
9032
9033
9034typedef _G_fpos64_t fpos64_t;
9035# 161 "/usr/include/stdio.h" 3 4
9036# 1 "/usr/include/bits/stdio_lim.h" 1 3 4
9037# 162 "/usr/include/stdio.h" 2 3 4
9038
9039
9040
9041extern struct _IO_FILE *stdin;
9042extern struct _IO_FILE *stdout;
9043extern struct _IO_FILE *stderr;
9044
9045
9046
9047
9048
9049
9050
9051extern int remove (__const char *__filename) __attribute__ ((__nothrow__));
9052
9053extern int rename (__const char *__old, __const char *__new) __attribute__ ((__nothrow__));
9054
9055
9056
9057
9058extern int renameat (int __oldfd, __const char *__old, int __newfd,
9059 __const char *__new) __attribute__ ((__nothrow__));
9060
9061
9062
9063
9064
9065
9066
9067
9068extern FILE *tmpfile (void) __attribute__ ((__warn_unused_result__));
9069# 202 "/usr/include/stdio.h" 3 4
9070extern FILE *tmpfile64 (void) __attribute__ ((__warn_unused_result__));
9071
9072
9073
9074extern char *tmpnam (char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9075
9076
9077
9078
9079
9080extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9081# 224 "/usr/include/stdio.h" 3 4
9082extern char *tempnam (__const char *__dir, __const char *__pfx)
9083 __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
9084
9085
9086
9087
9088
9089
9090
9091
9092extern int fclose (FILE *__stream);
9093
9094
9095
9096
9097extern int fflush (FILE *__stream);
9098
9099# 249 "/usr/include/stdio.h" 3 4
9100extern int fflush_unlocked (FILE *__stream);
9101# 259 "/usr/include/stdio.h" 3 4
9102extern int fcloseall (void);
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112extern FILE *fopen (__const char *__restrict __filename,
9113 __const char *__restrict __modes) __attribute__ ((__warn_unused_result__));
9114
9115
9116
9117
9118extern FILE *freopen (__const char *__restrict __filename,
9119 __const char *__restrict __modes,
9120 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9121# 292 "/usr/include/stdio.h" 3 4
9122
9123
9124extern FILE *fopen64 (__const char *__restrict __filename,
9125 __const char *__restrict __modes) __attribute__ ((__warn_unused_result__));
9126extern FILE *freopen64 (__const char *__restrict __filename,
9127 __const char *__restrict __modes,
9128 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9129
9130
9131
9132
9133extern FILE *fdopen (int __fd, __const char *__modes) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9134
9135
9136
9137
9138
9139extern FILE *fopencookie (void *__restrict __magic_cookie,
9140 __const char *__restrict __modes,
9141 _IO_cookie_io_functions_t __io_funcs) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9142
9143
9144
9145
9146extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
9147 __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9148
9149
9150
9151
9152extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9153
9154
9155
9156
9157
9158
9159extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__));
9160
9161
9162
9163extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
9164 int __modes, size_t __n) __attribute__ ((__nothrow__));
9165
9166
9167
9168
9169
9170extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
9171 size_t __size) __attribute__ ((__nothrow__));
9172
9173
9174extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__));
9175
9176
9177
9178
9179
9180
9181
9182
9183extern int fprintf (FILE *__restrict __stream,
9184 __const char *__restrict __format, ...);
9185
9186
9187
9188
9189extern int printf (__const char *__restrict __format, ...);
9190
9191extern int sprintf (char *__restrict __s,
9192 __const char *__restrict __format, ...) __attribute__ ((__nothrow__));
9193
9194
9195
9196
9197
9198extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
9199 __gnuc_va_list __arg);
9200
9201
9202
9203
9204extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg);
9205
9206extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
9207 __gnuc_va_list __arg) __attribute__ ((__nothrow__));
9208
9209
9210
9211
9212
9213extern int snprintf (char *__restrict __s, size_t __maxlen,
9214 __const char *__restrict __format, ...)
9215 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4)));
9216
9217extern int vsnprintf (char *__restrict __s, size_t __maxlen,
9218 __const char *__restrict __format, __gnuc_va_list __arg)
9219 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0)));
9220
9221
9222
9223
9224
9225
9226extern int vasprintf (char **__restrict __ptr, __const char *__restrict __f,
9227 __gnuc_va_list __arg)
9228 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0))) __attribute__ ((__warn_unused_result__));
9229extern int __asprintf (char **__restrict __ptr,
9230 __const char *__restrict __fmt, ...)
9231 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))) __attribute__ ((__warn_unused_result__));
9232extern int asprintf (char **__restrict __ptr,
9233 __const char *__restrict __fmt, ...)
9234 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3))) __attribute__ ((__warn_unused_result__));
9235# 414 "/usr/include/stdio.h" 3 4
9236extern int vdprintf (int __fd, __const char *__restrict __fmt,
9237 __gnuc_va_list __arg)
9238 __attribute__ ((__format__ (__printf__, 2, 0)));
9239extern int dprintf (int __fd, __const char *__restrict __fmt, ...)
9240 __attribute__ ((__format__ (__printf__, 2, 3)));
9241
9242
9243
9244
9245
9246
9247
9248
9249extern int fscanf (FILE *__restrict __stream,
9250 __const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
9251
9252
9253
9254
9255extern int scanf (__const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
9256
9257extern int sscanf (__const char *__restrict __s,
9258 __const char *__restrict __format, ...) __attribute__ ((__nothrow__));
9259# 465 "/usr/include/stdio.h" 3 4
9260
9261
9262
9263
9264
9265
9266
9267
9268extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
9269 __gnuc_va_list __arg)
9270 __attribute__ ((__format__ (__scanf__, 2, 0))) __attribute__ ((__warn_unused_result__));
9271
9272
9273
9274
9275
9276extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
9277 __attribute__ ((__format__ (__scanf__, 1, 0))) __attribute__ ((__warn_unused_result__));
9278
9279
9280extern int vsscanf (__const char *__restrict __s,
9281 __const char *__restrict __format, __gnuc_va_list __arg)
9282 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__scanf__, 2, 0)));
9283# 524 "/usr/include/stdio.h" 3 4
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293extern int fgetc (FILE *__stream);
9294extern int getc (FILE *__stream);
9295
9296
9297
9298
9299
9300extern int getchar (void);
9301
9302# 552 "/usr/include/stdio.h" 3 4
9303extern int getc_unlocked (FILE *__stream);
9304extern int getchar_unlocked (void);
9305# 563 "/usr/include/stdio.h" 3 4
9306extern int fgetc_unlocked (FILE *__stream);
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318extern int fputc (int __c, FILE *__stream);
9319extern int putc (int __c, FILE *__stream);
9320
9321
9322
9323
9324
9325extern int putchar (int __c);
9326
9327# 596 "/usr/include/stdio.h" 3 4
9328extern int fputc_unlocked (int __c, FILE *__stream);
9329
9330
9331
9332
9333
9334
9335
9336extern int putc_unlocked (int __c, FILE *__stream);
9337extern int putchar_unlocked (int __c);
9338
9339
9340
9341
9342
9343
9344extern int getw (FILE *__stream);
9345
9346
9347extern int putw (int __w, FILE *__stream);
9348
9349
9350
9351
9352
9353
9354
9355
9356extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
9357 __attribute__ ((__warn_unused_result__));
9358
9359
9360
9361
9362
9363
9364extern char *gets (char *__s) __attribute__ ((__warn_unused_result__));
9365
9366# 642 "/usr/include/stdio.h" 3 4
9367extern char *fgets_unlocked (char *__restrict __s, int __n,
9368 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9369# 658 "/usr/include/stdio.h" 3 4
9370extern __ssize_t __getdelim (char **__restrict __lineptr,
9371 size_t *__restrict __n, int __delimiter,
9372 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9373extern __ssize_t getdelim (char **__restrict __lineptr,
9374 size_t *__restrict __n, int __delimiter,
9375 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9376
9377
9378
9379
9380
9381
9382
9383extern __ssize_t getline (char **__restrict __lineptr,
9384 size_t *__restrict __n,
9385 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9386
9387
9388
9389
9390
9391
9392
9393
9394extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
9395
9396
9397
9398
9399
9400extern int puts (__const char *__s);
9401
9402
9403
9404
9405
9406
9407extern int ungetc (int __c, FILE *__stream);
9408
9409
9410
9411
9412
9413
9414extern size_t fread (void *__restrict __ptr, size_t __size,
9415 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9416
9417
9418
9419
9420extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
9421 size_t __n, FILE *__restrict __s) __attribute__ ((__warn_unused_result__));
9422
9423# 719 "/usr/include/stdio.h" 3 4
9424extern int fputs_unlocked (__const char *__restrict __s,
9425 FILE *__restrict __stream);
9426# 730 "/usr/include/stdio.h" 3 4
9427extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
9428 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9429extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
9430 size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9431
9432
9433
9434
9435
9436
9437
9438
9439extern int fseek (FILE *__stream, long int __off, int __whence);
9440
9441
9442
9443
9444extern long int ftell (FILE *__stream) __attribute__ ((__warn_unused_result__));
9445
9446
9447
9448
9449extern void rewind (FILE *__stream);
9450
9451# 766 "/usr/include/stdio.h" 3 4
9452extern int fseeko (FILE *__stream, __off_t __off, int __whence);
9453
9454
9455
9456
9457extern __off_t ftello (FILE *__stream) __attribute__ ((__warn_unused_result__));
9458# 785 "/usr/include/stdio.h" 3 4
9459
9460
9461
9462
9463
9464
9465extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
9466
9467
9468
9469
9470extern int fsetpos (FILE *__stream, __const fpos_t *__pos);
9471# 808 "/usr/include/stdio.h" 3 4
9472
9473
9474
9475extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence);
9476extern __off64_t ftello64 (FILE *__stream) __attribute__ ((__warn_unused_result__));
9477extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos);
9478extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos);
9479
9480
9481
9482
9483extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__));
9484
9485extern int feof (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9486
9487extern int ferror (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9488
9489
9490
9491
9492extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__));
9493extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9494extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9495
9496
9497
9498
9499
9500
9501
9502
9503extern void perror (__const char *__s);
9504
9505
9506
9507
9508
9509
9510# 1 "/usr/include/bits/sys_errlist.h" 1 3 4
9511# 27 "/usr/include/bits/sys_errlist.h" 3 4
9512extern int sys_nerr;
9513extern __const char *__const sys_errlist[];
9514
9515
9516extern int _sys_nerr;
9517extern __const char *__const _sys_errlist[];
9518# 847 "/usr/include/stdio.h" 2 3 4
9519
9520
9521
9522
9523extern int fileno (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9524
9525
9526
9527
9528extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9529# 866 "/usr/include/stdio.h" 3 4
9530extern FILE *popen (__const char *__command, __const char *__modes) __attribute__ ((__warn_unused_result__));
9531
9532
9533
9534
9535
9536extern int pclose (FILE *__stream);
9537
9538
9539
9540
9541
9542extern char *ctermid (char *__s) __attribute__ ((__nothrow__));
9543
9544
9545
9546
9547
9548extern char *cuserid (char *__s);
9549
9550
9551
9552
9553struct obstack;
9554
9555
9556extern int obstack_printf (struct obstack *__restrict __obstack,
9557 __const char *__restrict __format, ...)
9558 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 3)));
9559extern int obstack_vprintf (struct obstack *__restrict __obstack,
9560 __const char *__restrict __format,
9561 __gnuc_va_list __args)
9562 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 2, 0)));
9563
9564
9565
9566
9567
9568
9569
9570extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__));
9571
9572
9573
9574extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
9575
9576
9577extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__));
9578# 927 "/usr/include/stdio.h" 3 4
9579# 1 "/usr/include/bits/stdio.h" 1 3 4
9580# 44 "/usr/include/bits/stdio.h" 3 4
9581extern __inline __attribute__ ((__gnu_inline__)) int
9582getchar (void)
9583{
9584 return _IO_getc (stdin);
9585}
9586
9587
9588
9589
9590extern __inline __attribute__ ((__gnu_inline__)) int
9591fgetc_unlocked (FILE *__fp)
9592{
9593 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
9594}
9595
9596
9597
9598
9599
9600extern __inline __attribute__ ((__gnu_inline__)) int
9601getc_unlocked (FILE *__fp)
9602{
9603 return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);
9604}
9605
9606
9607extern __inline __attribute__ ((__gnu_inline__)) int
9608getchar_unlocked (void)
9609{
9610 return (__builtin_expect (((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end), 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++);
9611}
9612
9613
9614
9615
9616extern __inline __attribute__ ((__gnu_inline__)) int
9617putchar (int __c)
9618{
9619 return _IO_putc (__c, stdout);
9620}
9621
9622
9623
9624
9625extern __inline __attribute__ ((__gnu_inline__)) int
9626fputc_unlocked (int __c, FILE *__stream)
9627{
9628 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
9629}
9630
9631
9632
9633
9634
9635extern __inline __attribute__ ((__gnu_inline__)) int
9636putc_unlocked (int __c, FILE *__stream)
9637{
9638 return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));
9639}
9640
9641
9642extern __inline __attribute__ ((__gnu_inline__)) int
9643putchar_unlocked (int __c)
9644{
9645 return (__builtin_expect (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end), 0) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c)));
9646}
9647
9648
9649
9650
9651
9652extern __inline __attribute__ ((__gnu_inline__)) __ssize_t
9653getline (char **__lineptr, size_t *__n, FILE *__stream)
9654{
9655 return __getdelim (__lineptr, __n, '\n', __stream);
9656}
9657
9658
9659
9660
9661
9662extern __inline __attribute__ ((__gnu_inline__)) int
9663__attribute__ ((__nothrow__)) feof_unlocked (FILE *__stream)
9664{
9665 return (((__stream)->_flags & 0x10) != 0);
9666}
9667
9668
9669extern __inline __attribute__ ((__gnu_inline__)) int
9670__attribute__ ((__nothrow__)) ferror_unlocked (FILE *__stream)
9671{
9672 return (((__stream)->_flags & 0x20) != 0);
9673}
9674# 928 "/usr/include/stdio.h" 2 3 4
9675
9676
9677# 1 "/usr/include/bits/stdio2.h" 1 3 4
9678# 24 "/usr/include/bits/stdio2.h" 3 4
9679extern int __sprintf_chk (char *__restrict __s, int __flag, size_t __slen,
9680 __const char *__restrict __format, ...) __attribute__ ((__nothrow__));
9681extern int __vsprintf_chk (char *__restrict __s, int __flag, size_t __slen,
9682 __const char *__restrict __format,
9683 __gnuc_va_list __ap) __attribute__ ((__nothrow__));
9684
9685
9686extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9687__attribute__ ((__nothrow__)) sprintf (char *__restrict __s, __const char *__restrict __fmt, ...)
9688{
9689 return __builtin___sprintf_chk (__s, 2 - 1,
9690 __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
9691}
9692
9693
9694
9695
9696
9697
9698extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9699__attribute__ ((__nothrow__)) vsprintf (char *__restrict __s, __const char *__restrict __fmt, __gnuc_va_list __ap)
9700
9701{
9702 return __builtin___vsprintf_chk (__s, 2 - 1,
9703 __builtin_object_size (__s, 2 > 1), __fmt, __ap);
9704}
9705
9706
9707
9708extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag,
9709 size_t __slen, __const char *__restrict __format,
9710 ...) __attribute__ ((__nothrow__));
9711extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag,
9712 size_t __slen, __const char *__restrict __format,
9713 __gnuc_va_list __ap) __attribute__ ((__nothrow__));
9714
9715
9716extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9717__attribute__ ((__nothrow__)) snprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, ...)
9718
9719{
9720 return __builtin___snprintf_chk (__s, __n, 2 - 1,
9721 __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
9722}
9723
9724
9725
9726
9727
9728
9729extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9730__attribute__ ((__nothrow__)) vsnprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, __gnuc_va_list __ap)
9731
9732{
9733 return __builtin___vsnprintf_chk (__s, __n, 2 - 1,
9734 __builtin_object_size (__s, 2 > 1), __fmt, __ap);
9735}
9736
9737
9738
9739
9740
9741extern int __fprintf_chk (FILE *__restrict __stream, int __flag,
9742 __const char *__restrict __format, ...);
9743extern int __printf_chk (int __flag, __const char *__restrict __format, ...);
9744extern int __vfprintf_chk (FILE *__restrict __stream, int __flag,
9745 __const char *__restrict __format, __gnuc_va_list __ap);
9746extern int __vprintf_chk (int __flag, __const char *__restrict __format,
9747 __gnuc_va_list __ap);
9748
9749
9750extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9751fprintf (FILE *__restrict __stream, __const char *__restrict __fmt, ...)
9752{
9753 return __fprintf_chk (__stream, 2 - 1, __fmt,
9754 __builtin_va_arg_pack ());
9755}
9756
9757extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9758printf (__const char *__restrict __fmt, ...)
9759{
9760 return __printf_chk (2 - 1, __fmt, __builtin_va_arg_pack ());
9761}
9762
9763
9764
9765
9766
9767
9768
9769extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9770vprintf (__const char *__restrict __fmt, __gnuc_va_list __ap)
9771{
9772
9773 return __vfprintf_chk (stdout, 2 - 1, __fmt, __ap);
9774
9775
9776
9777}
9778
9779extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9780vfprintf (FILE *__restrict __stream,
9781 __const char *__restrict __fmt, __gnuc_va_list __ap)
9782{
9783 return __vfprintf_chk (__stream, 2 - 1, __fmt, __ap);
9784}
9785
9786
9787
9788extern int __asprintf_chk (char **__restrict __ptr, int __flag,
9789 __const char *__restrict __fmt, ...)
9790 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4))) __attribute__ ((__warn_unused_result__));
9791extern int __vasprintf_chk (char **__restrict __ptr, int __flag,
9792 __const char *__restrict __fmt, __gnuc_va_list __arg)
9793 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0))) __attribute__ ((__warn_unused_result__));
9794extern int __dprintf_chk (int __fd, int __flag, __const char *__restrict __fmt,
9795 ...) __attribute__ ((__format__ (__printf__, 3, 4)));
9796extern int __vdprintf_chk (int __fd, int __flag,
9797 __const char *__restrict __fmt, __gnuc_va_list __arg)
9798 __attribute__ ((__format__ (__printf__, 3, 0)));
9799extern int __obstack_printf_chk (struct obstack *__restrict __obstack,
9800 int __flag, __const char *__restrict __format,
9801 ...)
9802 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4)));
9803extern int __obstack_vprintf_chk (struct obstack *__restrict __obstack,
9804 int __flag,
9805 __const char *__restrict __format,
9806 __gnuc_va_list __args)
9807 __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0)));
9808
9809
9810extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9811__attribute__ ((__nothrow__)) asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...)
9812{
9813 return __asprintf_chk (__ptr, 2 - 1, __fmt,
9814 __builtin_va_arg_pack ());
9815}
9816
9817extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9818__attribute__ ((__nothrow__)) __asprintf (char **__restrict __ptr, __const char *__restrict __fmt, ...)
9819
9820{
9821 return __asprintf_chk (__ptr, 2 - 1, __fmt,
9822 __builtin_va_arg_pack ());
9823}
9824
9825extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9826dprintf (int __fd, __const char *__restrict __fmt, ...)
9827{
9828 return __dprintf_chk (__fd, 2 - 1, __fmt,
9829 __builtin_va_arg_pack ());
9830}
9831
9832extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9833__attribute__ ((__nothrow__)) obstack_printf (struct obstack *__restrict __obstack, __const char *__restrict __fmt, ...)
9834
9835{
9836 return __obstack_printf_chk (__obstack, 2 - 1, __fmt,
9837 __builtin_va_arg_pack ());
9838}
9839# 195 "/usr/include/bits/stdio2.h" 3 4
9840extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9841__attribute__ ((__nothrow__)) vasprintf (char **__restrict __ptr, __const char *__restrict __fmt, __gnuc_va_list __ap)
9842
9843{
9844 return __vasprintf_chk (__ptr, 2 - 1, __fmt, __ap);
9845}
9846
9847extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9848vdprintf (int __fd, __const char *__restrict __fmt, __gnuc_va_list __ap)
9849{
9850 return __vdprintf_chk (__fd, 2 - 1, __fmt, __ap);
9851}
9852
9853extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) int
9854__attribute__ ((__nothrow__)) obstack_vprintf (struct obstack *__restrict __obstack, __const char *__restrict __fmt, __gnuc_va_list __ap)
9855
9856{
9857 return __obstack_vprintf_chk (__obstack, 2 - 1, __fmt,
9858 __ap);
9859}
9860
9861
9862
9863
9864
9865extern char *__gets_chk (char *__str, size_t) __attribute__ ((__warn_unused_result__));
9866extern char *__gets_warn (char *__str) __asm__ ("" "gets")
9867 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use fgets or getline instead, gets can't " "specify buffer size")))
9868 ;
9869
9870extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
9871gets (char *__str)
9872{
9873 if (__builtin_object_size (__str, 2 > 1) != (size_t) -1)
9874 return __gets_chk (__str, __builtin_object_size (__str, 2 > 1));
9875 return __gets_warn (__str);
9876}
9877
9878extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n,
9879 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9880extern char *__fgets_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets")
9881
9882 __attribute__ ((__warn_unused_result__));
9883extern char *__fgets_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_chk")
9884
9885
9886 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets called with bigger size than length " "of destination buffer")))
9887 ;
9888
9889extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
9890fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
9891{
9892 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
9893 {
9894 if (!__builtin_constant_p (__n) || __n <= 0)
9895 return __fgets_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
9896
9897 if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
9898 return __fgets_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
9899 }
9900 return __fgets_alias (__s, __n, __stream);
9901}
9902
9903extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen,
9904 size_t __size, size_t __n,
9905 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9906extern size_t __fread_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread")
9907
9908
9909 __attribute__ ((__warn_unused_result__));
9910extern size_t __fread_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_chk")
9911
9912
9913
9914
9915 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread called with bigger size * nmemb than length " "of destination buffer")))
9916 ;
9917
9918extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) size_t
9919fread (void *__restrict __ptr, size_t __size, size_t __n,
9920 FILE *__restrict __stream)
9921{
9922 if (__builtin_object_size (__ptr, 0) != (size_t) -1)
9923 {
9924 if (!__builtin_constant_p (__size)
9925 || !__builtin_constant_p (__n)
9926 || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
9927 return __fread_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
9928
9929 if (__size * __n > __builtin_object_size (__ptr, 0))
9930 return __fread_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
9931 }
9932 return __fread_alias (__ptr, __size, __n, __stream);
9933}
9934
9935
9936extern char *__fgets_unlocked_chk (char *__restrict __s, size_t __size,
9937 int __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9938extern char *__fgets_unlocked_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets_unlocked")
9939
9940 __attribute__ ((__warn_unused_result__));
9941extern char *__fgets_unlocked_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_unlocked_chk")
9942
9943
9944 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets_unlocked called with bigger size than length " "of destination buffer")))
9945 ;
9946
9947extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) char *
9948fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream)
9949{
9950 if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
9951 {
9952 if (!__builtin_constant_p (__n) || __n <= 0)
9953 return __fgets_unlocked_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
9954
9955 if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
9956 return __fgets_unlocked_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
9957 }
9958 return __fgets_unlocked_alias (__s, __n, __stream);
9959}
9960
9961
9962
9963
9964extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen,
9965 size_t __size, size_t __n,
9966 FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
9967extern size_t __fread_unlocked_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread_unlocked")
9968
9969
9970 __attribute__ ((__warn_unused_result__));
9971extern size_t __fread_unlocked_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_unlocked_chk")
9972
9973
9974
9975
9976 __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread_unlocked called with bigger size * nmemb than " "length of destination buffer")))
9977 ;
9978
9979extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) __attribute__ ((__warn_unused_result__)) size_t
9980fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n,
9981 FILE *__restrict __stream)
9982{
9983 if (__builtin_object_size (__ptr, 0) != (size_t) -1)
9984 {
9985 if (!__builtin_constant_p (__size)
9986 || !__builtin_constant_p (__n)
9987 || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
9988 return __fread_unlocked_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
9989 __stream);
9990
9991 if (__size * __n > __builtin_object_size (__ptr, 0))
9992 return __fread_unlocked_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
9993 __stream);
9994 }
9995
9996
9997 if (__builtin_constant_p (__size)
9998 && __builtin_constant_p (__n)
9999 && (__size | __n) < (((size_t) 1) << (8 * sizeof (size_t) / 2))
10000 && __size * __n <= 8)
10001 {
10002 size_t __cnt = __size * __n;
10003 char *__cptr = (char *) __ptr;
10004 if (__cnt == 0)
10005 return 0;
10006
10007 for (; __cnt > 0; --__cnt)
10008 {
10009 int __c = (__builtin_expect (((__stream)->_IO_read_ptr >= (__stream)->_IO_read_end), 0) ? __uflow (__stream) : *(unsigned char *) (__stream)->_IO_read_ptr++);
10010 if (__c == (-1))
10011 break;
10012 *__cptr++ = __c;
10013 }
10014 return (__cptr - (char *) __ptr) / __size;
10015 }
10016
10017 return __fread_unlocked_alias (__ptr, __size, __n, __stream);
10018}
10019# 931 "/usr/include/stdio.h" 2 3 4
10020
10021
10022
10023
10024
10025
10026# 47 "../../src/mesa/main/compiler.h" 2
10027# 1 "/usr/include/string.h" 1 3 4
10028# 29 "/usr/include/string.h" 3 4
10029
10030
10031
10032
10033
10034# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
10035# 35 "/usr/include/string.h" 2 3 4
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045extern void *memcpy (void *__restrict __dest,
10046 __const void *__restrict __src, size_t __n)
10047 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10048
10049
10050extern void *memmove (void *__dest, __const void *__src, size_t __n)
10051 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10052
10053
10054
10055
10056
10057
10058extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
10059 int __c, size_t __n)
10060 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10061
10062
10063
10064
10065
10066extern void *memset (void *__s, int __c, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
10067
10068
10069extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
10070 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10071# 95 "/usr/include/string.h" 3 4
10072extern void *memchr (__const void *__s, int __c, size_t __n)
10073 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10074
10075
10076# 109 "/usr/include/string.h" 3 4
10077extern void *rawmemchr (__const void *__s, int __c)
10078 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10079# 120 "/usr/include/string.h" 3 4
10080extern void *memrchr (__const void *__s, int __c, size_t __n)
10081 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10082
10083
10084
10085
10086
10087
10088extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
10089 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10090
10091extern char *strncpy (char *__restrict __dest,
10092 __const char *__restrict __src, size_t __n)
10093 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10094
10095
10096extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
10097 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10098
10099extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
10100 size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10101
10102
10103extern int strcmp (__const char *__s1, __const char *__s2)
10104 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10105
10106extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
10107 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10108
10109
10110extern int strcoll (__const char *__s1, __const char *__s2)
10111 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10112
10113extern size_t strxfrm (char *__restrict __dest,
10114 __const char *__restrict __src, size_t __n)
10115 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
10116
10117# 165 "/usr/include/string.h" 3 4
10118extern int strcoll_l (__const char *__s1, __const char *__s2, __locale_t __l)
10119 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
10120
10121extern size_t strxfrm_l (char *__dest, __const char *__src, size_t __n,
10122 __locale_t __l) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));
10123
10124
10125
10126
10127
10128extern char *strdup (__const char *__s)
10129 __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
10130
10131
10132
10133
10134
10135
10136extern char *strndup (__const char *__string, size_t __n)
10137 __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
10138# 210 "/usr/include/string.h" 3 4
10139
10140# 235 "/usr/include/string.h" 3 4
10141extern char *strchr (__const char *__s, int __c)
10142 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10143# 262 "/usr/include/string.h" 3 4
10144extern char *strrchr (__const char *__s, int __c)
10145 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10146
10147
10148# 276 "/usr/include/string.h" 3 4
10149extern char *strchrnul (__const char *__s, int __c)
10150 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10151
10152
10153
10154
10155
10156
10157extern size_t strcspn (__const char *__s, __const char *__reject)
10158 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10159
10160
10161extern size_t strspn (__const char *__s, __const char *__accept)
10162 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10163# 314 "/usr/include/string.h" 3 4
10164extern char *strpbrk (__const char *__s, __const char *__accept)
10165 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10166# 342 "/usr/include/string.h" 3 4
10167extern char *strstr (__const char *__haystack, __const char *__needle)
10168 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10169
10170
10171
10172
10173extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
10174 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
10175
10176
10177
10178
10179extern char *__strtok_r (char *__restrict __s,
10180 __const char *__restrict __delim,
10181 char **__restrict __save_ptr)
10182 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
10183
10184extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
10185 char **__restrict __save_ptr)
10186 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
10187# 373 "/usr/include/string.h" 3 4
10188extern char *strcasestr (__const char *__haystack, __const char *__needle)
10189 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10190
10191
10192
10193
10194
10195
10196
10197extern void *memmem (__const void *__haystack, size_t __haystacklen,
10198 __const void *__needle, size_t __needlelen)
10199 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 3)));
10200
10201
10202
10203extern void *__mempcpy (void *__restrict __dest,
10204 __const void *__restrict __src, size_t __n)
10205 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10206extern void *mempcpy (void *__restrict __dest,
10207 __const void *__restrict __src, size_t __n)
10208 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10209
10210
10211
10212
10213
10214extern size_t strlen (__const char *__s)
10215 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10216
10217
10218
10219
10220
10221extern size_t strnlen (__const char *__string, size_t __maxlen)
10222 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10223
10224
10225
10226
10227
10228extern char *strerror (int __errnum) __attribute__ ((__nothrow__));
10229
10230# 438 "/usr/include/string.h" 3 4
10231extern char *strerror_r (int __errnum, char *__buf, size_t __buflen)
10232 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
10233
10234
10235
10236
10237
10238extern char *strerror_l (int __errnum, __locale_t __l) __attribute__ ((__nothrow__));
10239
10240
10241
10242
10243
10244extern void __bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
10245
10246
10247
10248extern void bcopy (__const void *__src, void *__dest, size_t __n)
10249 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10250
10251
10252extern void bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
10253
10254
10255extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
10256 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10257# 489 "/usr/include/string.h" 3 4
10258extern char *index (__const char *__s, int __c)
10259 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10260# 517 "/usr/include/string.h" 3 4
10261extern char *rindex (__const char *__s, int __c)
10262 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
10263
10264
10265
10266
10267extern int ffs (int __i) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
10268
10269
10270
10271
10272extern int ffsl (long int __l) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
10273
10274__extension__ extern int ffsll (long long int __ll)
10275 __attribute__ ((__nothrow__)) __attribute__ ((__const__));
10276
10277
10278
10279
10280extern int strcasecmp (__const char *__s1, __const char *__s2)
10281 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10282
10283
10284extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
10285 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10286
10287
10288
10289
10290
10291extern int strcasecmp_l (__const char *__s1, __const char *__s2,
10292 __locale_t __loc)
10293 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
10294
10295extern int strncasecmp_l (__const char *__s1, __const char *__s2,
10296 size_t __n, __locale_t __loc)
10297 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 4)));
10298
10299
10300
10301
10302
10303extern char *strsep (char **__restrict __stringp,
10304 __const char *__restrict __delim)
10305 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10306
10307
10308
10309
10310extern char *strsignal (int __sig) __attribute__ ((__nothrow__));
10311
10312
10313extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src)
10314 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10315extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src)
10316 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10317
10318
10319
10320extern char *__stpncpy (char *__restrict __dest,
10321 __const char *__restrict __src, size_t __n)
10322 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10323extern char *stpncpy (char *__restrict __dest,
10324 __const char *__restrict __src, size_t __n)
10325 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
10326
10327
10328
10329
10330extern int strverscmp (__const char *__s1, __const char *__s2)
10331 __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
10332
10333
10334extern char *strfry (char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
10335
10336
10337extern void *memfrob (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
10338# 606 "/usr/include/string.h" 3 4
10339extern char *basename (__const char *__filename) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
10340# 634 "/usr/include/string.h" 3 4
10341# 1 "/usr/include/bits/string.h" 1 3 4
10342# 635 "/usr/include/string.h" 2 3 4
10343
10344
10345# 1 "/usr/include/bits/string2.h" 1 3 4
10346# 80 "/usr/include/bits/string2.h" 3 4
10347typedef struct { unsigned char __arr[2]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR2;
10348typedef struct { unsigned char __arr[3]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR3;
10349typedef struct { unsigned char __arr[4]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR4;
10350typedef struct { unsigned char __arr[5]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR5;
10351typedef struct { unsigned char __arr[6]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR6;
10352typedef struct { unsigned char __arr[7]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR7;
10353typedef struct { unsigned char __arr[8]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR8;
10354# 394 "/usr/include/bits/string2.h" 3 4
10355extern void *__rawmemchr (const void *__s, int __c);
10356# 969 "/usr/include/bits/string2.h" 3 4
10357extern __inline __attribute__ ((__gnu_inline__)) size_t __strcspn_c1 (__const char *__s, int __reject);
10358extern __inline __attribute__ ((__gnu_inline__)) size_t
10359__strcspn_c1 (__const char *__s, int __reject)
10360{
10361 register size_t __result = 0;
10362 while (__s[__result] != '\0' && __s[__result] != __reject)
10363 ++__result;
10364 return __result;
10365}
10366
10367extern __inline __attribute__ ((__gnu_inline__)) size_t __strcspn_c2 (__const char *__s, int __reject1,
10368 int __reject2);
10369extern __inline __attribute__ ((__gnu_inline__)) size_t
10370__strcspn_c2 (__const char *__s, int __reject1, int __reject2)
10371{
10372 register size_t __result = 0;
10373 while (__s[__result] != '\0' && __s[__result] != __reject1
10374 && __s[__result] != __reject2)
10375 ++__result;
10376 return __result;
10377}
10378
10379extern __inline __attribute__ ((__gnu_inline__)) size_t __strcspn_c3 (__const char *__s, int __reject1,
10380 int __reject2, int __reject3);
10381extern __inline __attribute__ ((__gnu_inline__)) size_t
10382__strcspn_c3 (__const char *__s, int __reject1, int __reject2,
10383 int __reject3)
10384{
10385 register size_t __result = 0;
10386 while (__s[__result] != '\0' && __s[__result] != __reject1
10387 && __s[__result] != __reject2 && __s[__result] != __reject3)
10388 ++__result;
10389 return __result;
10390}
10391# 1045 "/usr/include/bits/string2.h" 3 4
10392extern __inline __attribute__ ((__gnu_inline__)) size_t __strspn_c1 (__const char *__s, int __accept);
10393extern __inline __attribute__ ((__gnu_inline__)) size_t
10394__strspn_c1 (__const char *__s, int __accept)
10395{
10396 register size_t __result = 0;
10397
10398 while (__s[__result] == __accept)
10399 ++__result;
10400 return __result;
10401}
10402
10403extern __inline __attribute__ ((__gnu_inline__)) size_t __strspn_c2 (__const char *__s, int __accept1,
10404 int __accept2);
10405extern __inline __attribute__ ((__gnu_inline__)) size_t
10406__strspn_c2 (__const char *__s, int __accept1, int __accept2)
10407{
10408 register size_t __result = 0;
10409
10410 while (__s[__result] == __accept1 || __s[__result] == __accept2)
10411 ++__result;
10412 return __result;
10413}
10414
10415extern __inline __attribute__ ((__gnu_inline__)) size_t __strspn_c3 (__const char *__s, int __accept1,
10416 int __accept2, int __accept3);
10417extern __inline __attribute__ ((__gnu_inline__)) size_t
10418__strspn_c3 (__const char *__s, int __accept1, int __accept2, int __accept3)
10419{
10420 register size_t __result = 0;
10421
10422 while (__s[__result] == __accept1 || __s[__result] == __accept2
10423 || __s[__result] == __accept3)
10424 ++__result;
10425 return __result;
10426}
10427# 1121 "/usr/include/bits/string2.h" 3 4
10428extern __inline __attribute__ ((__gnu_inline__)) char *__strpbrk_c2 (__const char *__s, int __accept1,
10429 int __accept2);
10430extern __inline __attribute__ ((__gnu_inline__)) char *
10431__strpbrk_c2 (__const char *__s, int __accept1, int __accept2)
10432{
10433
10434 while (*__s != '\0' && *__s != __accept1 && *__s != __accept2)
10435 ++__s;
10436 return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;
10437}
10438
10439extern __inline __attribute__ ((__gnu_inline__)) char *__strpbrk_c3 (__const char *__s, int __accept1,
10440 int __accept2, int __accept3);
10441extern __inline __attribute__ ((__gnu_inline__)) char *
10442__strpbrk_c3 (__const char *__s, int __accept1, int __accept2,
10443 int __accept3)
10444{
10445
10446 while (*__s != '\0' && *__s != __accept1 && *__s != __accept2
10447 && *__s != __accept3)
10448 ++__s;
10449 return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;
10450}
10451# 1172 "/usr/include/bits/string2.h" 3 4
10452extern __inline __attribute__ ((__gnu_inline__)) char *__strtok_r_1c (char *__s, char __sep, char **__nextp);
10453extern __inline __attribute__ ((__gnu_inline__)) char *
10454__strtok_r_1c (char *__s, char __sep, char **__nextp)
10455{
10456 char *__result;
10457 if (__s == ((void *)0))
10458 __s = *__nextp;
10459 while (*__s == __sep)
10460 ++__s;
10461 __result = ((void *)0);
10462 if (*__s != '\0')
10463 {
10464 __result = __s++;
10465 while (*__s != '\0')
10466 if (*__s++ == __sep)
10467 {
10468 __s[-1] = '\0';
10469 break;
10470 }
10471 }
10472 *__nextp = __s;
10473 return __result;
10474}
10475# 1204 "/usr/include/bits/string2.h" 3 4
10476extern char *__strsep_g (char **__stringp, __const char *__delim);
10477# 1222 "/usr/include/bits/string2.h" 3 4
10478extern __inline __attribute__ ((__gnu_inline__)) char *__strsep_1c (char **__s, char __reject);
10479extern __inline __attribute__ ((__gnu_inline__)) char *
10480__strsep_1c (char **__s, char __reject)
10481{
10482 register char *__retval = *__s;
10483 if (__retval != ((void *)0) && (*__s = (__extension__ (__builtin_constant_p (__reject) && !__builtin_constant_p (__retval) && (__reject) == '\0' ? (char *) __rawmemchr (__retval, __reject) : __builtin_strchr (__retval, __reject)))) != ((void *)0))
10484 *(*__s)++ = '\0';
10485 return __retval;
10486}
10487
10488extern __inline __attribute__ ((__gnu_inline__)) char *__strsep_2c (char **__s, char __reject1, char __reject2);
10489extern __inline __attribute__ ((__gnu_inline__)) char *
10490__strsep_2c (char **__s, char __reject1, char __reject2)
10491{
10492 register char *__retval = *__s;
10493 if (__retval != ((void *)0))
10494 {
10495 register char *__cp = __retval;
10496 while (1)
10497 {
10498 if (*__cp == '\0')
10499 {
10500 __cp = ((void *)0);
10501 break;
10502 }
10503 if (*__cp == __reject1 || *__cp == __reject2)
10504 {
10505 *__cp++ = '\0';
10506 break;
10507 }
10508 ++__cp;
10509 }
10510 *__s = __cp;
10511 }
10512 return __retval;
10513}
10514
10515extern __inline __attribute__ ((__gnu_inline__)) char *__strsep_3c (char **__s, char __reject1, char __reject2,
10516 char __reject3);
10517extern __inline __attribute__ ((__gnu_inline__)) char *
10518__strsep_3c (char **__s, char __reject1, char __reject2, char __reject3)
10519{
10520 register char *__retval = *__s;
10521 if (__retval != ((void *)0))
10522 {
10523 register char *__cp = __retval;
10524 while (1)
10525 {
10526 if (*__cp == '\0')
10527 {
10528 __cp = ((void *)0);
10529 break;
10530 }
10531 if (*__cp == __reject1 || *__cp == __reject2 || *__cp == __reject3)
10532 {
10533 *__cp++ = '\0';
10534 break;
10535 }
10536 ++__cp;
10537 }
10538 *__s = __cp;
10539 }
10540 return __retval;
10541}
10542# 1303 "/usr/include/bits/string2.h" 3 4
10543extern char *__strdup (__const char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
10544# 1322 "/usr/include/bits/string2.h" 3 4
10545extern char *__strndup (__const char *__string, size_t __n)
10546 __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));
10547# 638 "/usr/include/string.h" 2 3 4
10548
10549
10550
10551
10552# 1 "/usr/include/bits/string3.h" 1 3 4
10553# 23 "/usr/include/bits/string3.h" 3 4
10554extern void __warn_memset_zero_len (void) __attribute__((__warning__ ("memset used with constant zero length parameter; this could be due to transposed parameters")))
10555 ;
10556# 48 "/usr/include/bits/string3.h" 3 4
10557extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) void *
10558__attribute__ ((__nothrow__)) memcpy (void *__restrict __dest, __const void *__restrict __src, size_t __len)
10559
10560{
10561 return __builtin___memcpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
10562}
10563
10564extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) void *
10565__attribute__ ((__nothrow__)) memmove (void *__dest, __const void *__src, size_t __len)
10566{
10567 return __builtin___memmove_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
10568}
10569
10570
10571extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) void *
10572__attribute__ ((__nothrow__)) mempcpy (void *__restrict __dest, __const void *__restrict __src, size_t __len)
10573
10574{
10575 return __builtin___mempcpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
10576}
10577# 76 "/usr/include/bits/string3.h" 3 4
10578extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) void *
10579__attribute__ ((__nothrow__)) memset (void *__dest, int __ch, size_t __len)
10580{
10581 if (__builtin_constant_p (__len) && __len == 0
10582 && (!__builtin_constant_p (__ch) || __ch != 0))
10583 {
10584 __warn_memset_zero_len ();
10585 return __dest;
10586 }
10587 return __builtin___memset_chk (__dest, __ch, __len, __builtin_object_size (__dest, 0));
10588}
10589
10590
10591extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) void
10592__attribute__ ((__nothrow__)) bcopy (__const void *__src, void *__dest, size_t __len)
10593{
10594 (void) __builtin___memmove_chk (__dest, __src, __len, __builtin_object_size (__dest, 0));
10595}
10596
10597extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) void
10598__attribute__ ((__nothrow__)) bzero (void *__dest, size_t __len)
10599{
10600 (void) __builtin___memset_chk (__dest, '\0', __len, __builtin_object_size (__dest, 0));
10601}
10602
10603
10604extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) char *
10605__attribute__ ((__nothrow__)) strcpy (char *__restrict __dest, __const char *__restrict __src)
10606{
10607 return __builtin___strcpy_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
10608}
10609
10610
10611extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) char *
10612__attribute__ ((__nothrow__)) stpcpy (char *__restrict __dest, __const char *__restrict __src)
10613{
10614 return __builtin___stpcpy_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
10615}
10616
10617
10618
10619extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) char *
10620__attribute__ ((__nothrow__)) strncpy (char *__restrict __dest, __const char *__restrict __src, size_t __len)
10621
10622{
10623 return __builtin___strncpy_chk (__dest, __src, __len, __builtin_object_size (__dest, 2 > 1));
10624}
10625
10626
10627extern char *__stpncpy_chk (char *__dest, __const char *__src, size_t __n,
10628 size_t __destlen) __attribute__ ((__nothrow__));
10629extern char *__stpncpy_alias (char *__dest, __const char *__src, size_t __n) __asm__ ("" "stpncpy") __attribute__ ((__nothrow__))
10630
10631 ;
10632
10633extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) char *
10634__attribute__ ((__nothrow__)) stpncpy (char *__dest, __const char *__src, size_t __n)
10635{
10636 if (__builtin_object_size (__dest, 2 > 1) != (size_t) -1
10637 && (!__builtin_constant_p (__n) || __n <= __builtin_object_size (__dest, 2 > 1)))
10638 return __stpncpy_chk (__dest, __src, __n, __builtin_object_size (__dest, 2 > 1));
10639 return __stpncpy_alias (__dest, __src, __n);
10640}
10641
10642
10643extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) char *
10644__attribute__ ((__nothrow__)) strcat (char *__restrict __dest, __const char *__restrict __src)
10645{
10646 return __builtin___strcat_chk (__dest, __src, __builtin_object_size (__dest, 2 > 1));
10647}
10648
10649
10650extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__gnu_inline__, __artificial__)) char *
10651__attribute__ ((__nothrow__)) strncat (char *__restrict __dest, __const char *__restrict __src, size_t __len)
10652
10653{
10654 return __builtin___strncat_chk (__dest, __src, __len, __builtin_object_size (__dest, 2 > 1));
10655}
10656# 643 "/usr/include/string.h" 2 3 4
10657
10658
10659
10660
10661# 48 "../../src/mesa/main/compiler.h" 2
10662
10663
10664
10665# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/float.h" 1 3 4
10666# 52 "../../src/mesa/main/compiler.h" 2
10667# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stdarg.h" 1 3 4
10668# 53 "../../src/mesa/main/compiler.h" 2
10669# 253 "../../src/mesa/main/compiler.h"
10670# 1 "/usr/include/byteswap.h" 1 3 4
10671# 23 "/usr/include/byteswap.h" 3 4
10672# 1 "/usr/include/bits/byteswap.h" 1 3 4
10673# 24 "/usr/include/byteswap.h" 2 3 4
10674# 254 "../../src/mesa/main/compiler.h" 2
10675# 40 "../../src/mesa/main/imports.h" 2
10676# 1 "../../src/mesa/main/glheader.h" 1
10677# 41 "../../src/mesa/main/imports.h" 2
10678# 84 "../../src/mesa/main/imports.h"
10679typedef union { GLfloat f; GLint i; } fi_type;
10680# 181 "../../src/mesa/main/imports.h"
10681static __inline__ GLfloat LOG2(GLfloat val)
10682{
10683 fi_type num;
10684 GLint log_2;
10685 num.f = val;
10686 log_2 = ((num.i >> 23) & 255) - 128;
10687 num.i &= ~(255 << 23);
10688 num.i += 127 << 23;
10689 num.f = ((-1.0f/3) * num.f + 2) * num.f - 2.0f/3;
10690 return num.f + log_2;
10691}
10692# 205 "../../src/mesa/main/imports.h"
10693static __inline__ int IS_INF_OR_NAN( float x )
10694{
10695 fi_type tmp;
10696 tmp.f = x;
10697 return !(int)((unsigned int)((tmp.i & 0x7fffffff)-0x7f800000) >> 31);
10698}
10699# 228 "../../src/mesa/main/imports.h"
10700static __inline__ int GET_FLOAT_BITS( float x )
10701{
10702 fi_type fi;
10703 fi.f = x;
10704 return fi.i;
10705}
10706# 354 "../../src/mesa/main/imports.h"
10707static __inline__ int ifloor(float f)
10708{
10709 int ai, bi;
10710 double af, bf;
10711 fi_type u;
10712
10713 af = (3 << 22) + 0.5 + (double)f;
10714 bf = (3 << 22) + 0.5 - (double)f;
10715 u.f = (float) af; ai = u.i;
10716 u.f = (float) bf; bi = u.i;
10717 return (ai - bi) >> 1;
10718}
10719# 401 "../../src/mesa/main/imports.h"
10720static __inline__ int iceil(float f)
10721{
10722 int ai, bi;
10723 double af, bf;
10724 fi_type u;
10725 af = (3 << 22) + 0.5 + (double)f;
10726 bf = (3 << 22) + 0.5 - (double)f;
10727 u.f = (float) af; ai = u.i;
10728 u.f = (float) bf; bi = u.i;
10729 return (ai - bi + 1) >> 1;
10730}
10731# 426 "../../src/mesa/main/imports.h"
10732static __inline__ int
10733_mesa_is_pow_two(int x)
10734{
10735 return !(x & (x - 1));
10736}
10737# 446 "../../src/mesa/main/imports.h"
10738static __inline__ int32_t
10739_mesa_next_pow_two_32(uint32_t x)
10740{
10741
10742
10743 uint32_t y = (x != 1);
10744 return (1 + y) << ((__builtin_clz(x - y) ^ 31) );
10745# 463 "../../src/mesa/main/imports.h"
10746}
10747
10748static __inline__ int64_t
10749_mesa_next_pow_two_64(uint64_t x)
10750{
10751
10752
10753 uint64_t y = (x != 1);
10754 if (sizeof(x) == sizeof(long))
10755 return (1 + y) << ((__builtin_clzl(x - y) ^ 63));
10756 else
10757 return (1 + y) << ((__builtin_clzll(x - y) ^ 63));
10758# 486 "../../src/mesa/main/imports.h"
10759}
10760
10761
10762
10763
10764
10765static __inline__ GLuint
10766_mesa_logbase2(GLuint n)
10767{
10768
10769
10770 return (31 - __builtin_clz(n | 1));
10771# 507 "../../src/mesa/main/imports.h"
10772}
10773
10774
10775
10776
10777
10778static __inline__ GLboolean
10779_mesa_little_endian(void)
10780{
10781 const GLuint ui = 1;
10782 return *((const GLubyte *) &ui);
10783}
10784
10785
10786
10787
10788
10789
10790
10791extern void *
10792_mesa_align_malloc( size_t bytes, unsigned long alignment );
10793
10794extern void *
10795_mesa_align_calloc( size_t bytes, unsigned long alignment );
10796
10797extern void
10798_mesa_align_free( void *ptr );
10799
10800extern void *
10801_mesa_align_realloc(void *oldBuffer, size_t oldSize, size_t newSize,
10802 unsigned long alignment);
10803
10804extern void *
10805_mesa_exec_malloc( GLuint size );
10806
10807extern void
10808_mesa_exec_free( void *addr );
10809
10810extern void *
10811_mesa_realloc( void *oldBuffer, size_t oldSize, size_t newSize );
10812
10813extern void
10814_mesa_memset16( unsigned short *dst, unsigned short val, size_t n );
10815
10816extern double
10817_mesa_sqrtd(double x);
10818
10819extern float
10820_mesa_sqrtf(float x);
10821
10822extern float
10823_mesa_inv_sqrtf(float x);
10824
10825extern void
10826_mesa_init_sqrt_table(void);
10827# 591 "../../src/mesa/main/imports.h"
10828extern GLhalfARB
10829_mesa_float_to_half(float f);
10830
10831extern float
10832_mesa_half_to_float(GLhalfARB h);
10833
10834
10835extern void *
10836_mesa_bsearch( const void *key, const void *base, size_t nmemb, size_t size,
10837 int (*compar)(const void *, const void *) );
10838
10839extern char *
10840_mesa_getenv( const char *var );
10841
10842extern char *
10843_mesa_strdup( const char *s );
10844
10845extern float
10846_mesa_strtof( const char *s, char **end );
10847
10848extern unsigned int
10849_mesa_str_checksum(const char *str);
10850
10851extern int
10852_mesa_snprintf( char *str, size_t size, const char *fmt, ... ) __attribute__ ((format(__printf__, 3, 4)));
10853
10854struct gl_context;
10855
10856extern void
10857_mesa_warning( struct gl_context *gc, const char *fmtString, ... ) __attribute__ ((format(__printf__, 2, 3)));
10858
10859extern void
10860_mesa_problem( const struct gl_context *ctx, const char *fmtString, ... ) __attribute__ ((format(__printf__, 2, 3)));
10861
10862extern void
10863_mesa_error( struct gl_context *ctx, GLenum error, const char *fmtString, ... ) __attribute__ ((format(__printf__, 3, 4)));
10864
10865extern void
10866_mesa_debug( const struct gl_context *ctx, const char *fmtString, ... ) __attribute__ ((format(__printf__, 2, 3)));
10867# 53 "../../src/mesa/main/context.h" 2
10868# 1 "../../src/mesa/main/mtypes.h" 1
10869# 38 "../../src/mesa/main/mtypes.h"
10870# 1 "../../src/mesa/main/config.h" 1
10871# 39 "../../src/mesa/main/mtypes.h" 2
10872# 1 "../../src/mesa/main/mfeatures.h" 1
10873# 40 "../../src/mesa/main/mtypes.h" 2
10874# 1 "../../src/mapi/glapi/glapi.h" 1
10875# 75 "../../src/mapi/glapi/glapi.h"
10876# 1 "../../src/mapi/glapi/glthread.h" 1
10877
10878
10879
10880# 1 "../../src/mapi/mapi/u_thread.h" 1
10881# 45 "../../src/mapi/mapi/u_thread.h"
10882# 1 "../../src/mapi/mapi/u_compiler.h" 1
10883# 46 "../../src/mapi/mapi/u_thread.h" 2
10884# 63 "../../src/mapi/mapi/u_thread.h"
10885# 1 "/usr/include/pthread.h" 1 3 4
10886# 25 "/usr/include/pthread.h" 3 4
10887# 1 "/usr/include/sched.h" 1 3 4
10888# 30 "/usr/include/sched.h" 3 4
10889# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
10890# 31 "/usr/include/sched.h" 2 3 4
10891
10892
10893
10894# 1 "/usr/include/time.h" 1 3 4
10895# 35 "/usr/include/sched.h" 2 3 4
10896# 43 "/usr/include/sched.h" 3 4
10897# 1 "/usr/include/bits/sched.h" 1 3 4
10898# 74 "/usr/include/bits/sched.h" 3 4
10899struct sched_param
10900 {
10901 int __sched_priority;
10902 };
10903
10904
10905
10906
10907
10908extern int clone (int (*__fn) (void *__arg), void *__child_stack,
10909 int __flags, void *__arg, ...) __attribute__ ((__nothrow__));
10910
10911
10912extern int unshare (int __flags) __attribute__ ((__nothrow__));
10913
10914
10915extern int sched_getcpu (void) __attribute__ ((__nothrow__));
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926struct __sched_param
10927 {
10928 int __sched_priority;
10929 };
10930# 116 "/usr/include/bits/sched.h" 3 4
10931typedef unsigned long int __cpu_mask;
10932
10933
10934
10935
10936
10937
10938typedef struct
10939{
10940 __cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))];
10941} cpu_set_t;
10942# 199 "/usr/include/bits/sched.h" 3 4
10943
10944
10945extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp)
10946 __attribute__ ((__nothrow__));
10947extern cpu_set_t *__sched_cpualloc (size_t __count) __attribute__ ((__nothrow__)) __attribute__ ((__warn_unused_result__));
10948extern void __sched_cpufree (cpu_set_t *__set) __attribute__ ((__nothrow__));
10949
10950
10951# 44 "/usr/include/sched.h" 2 3 4
10952
10953
10954
10955
10956
10957
10958
10959extern int sched_setparam (__pid_t __pid, __const struct sched_param *__param)
10960 __attribute__ ((__nothrow__));
10961
10962
10963extern int sched_getparam (__pid_t __pid, struct sched_param *__param) __attribute__ ((__nothrow__));
10964
10965
10966extern int sched_setscheduler (__pid_t __pid, int __policy,
10967 __const struct sched_param *__param) __attribute__ ((__nothrow__));
10968
10969
10970extern int sched_getscheduler (__pid_t __pid) __attribute__ ((__nothrow__));
10971
10972
10973extern int sched_yield (void) __attribute__ ((__nothrow__));
10974
10975
10976extern int sched_get_priority_max (int __algorithm) __attribute__ ((__nothrow__));
10977
10978
10979extern int sched_get_priority_min (int __algorithm) __attribute__ ((__nothrow__));
10980
10981
10982extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __attribute__ ((__nothrow__));
10983# 118 "/usr/include/sched.h" 3 4
10984extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize,
10985 __const cpu_set_t *__cpuset) __attribute__ ((__nothrow__));
10986
10987
10988extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize,
10989 cpu_set_t *__cpuset) __attribute__ ((__nothrow__));
10990
10991
10992
10993# 26 "/usr/include/pthread.h" 2 3 4
10994# 1 "/usr/include/time.h" 1 3 4
10995# 30 "/usr/include/time.h" 3 4
10996
10997
10998
10999
11000
11001
11002
11003
11004# 1 "/usr/lib/gcc/hppa2.0-unknown-linux-gnu/4.5.3/include/stddef.h" 1 3 4
11005# 39 "/usr/include/time.h" 2 3 4
11006
11007
11008
11009# 1 "/usr/include/bits/time.h" 1 3 4
11010# 43 "/usr/include/time.h" 2 3 4
11011# 131 "/usr/include/time.h" 3 4
11012
11013
11014struct tm
11015{
11016 int tm_sec;
11017 int tm_min;
11018 int tm_hour;
11019 int tm_mday;
11020 int tm_mon;
11021 int tm_year;
11022 int tm_wday;
11023 int tm_yday;
11024 int tm_isdst;
11025
11026
11027 long int tm_gmtoff;
11028 __const char *tm_zone;
11029
11030
11031
11032
11033};
11034
11035
11036
11037
11038
11039
11040
11041
11042struct itimerspec
11043 {
11044 struct timespec it_interval;
11045 struct timespec it_value;
11046 };
11047
11048
11049struct sigevent;
11050# 180 "/usr/include/time.h" 3 4
11051
11052
11053
11054extern clock_t clock (void) __attribute__ ((__nothrow__));
11055
11056
11057extern time_t time (time_t *__timer) __attribute__ ((__nothrow__));
11058
11059
11060extern double difftime (time_t __time1, time_t __time0)
11061 __attribute__ ((__nothrow__)) __attribute__ ((__const__));
11062
11063
11064extern time_t mktime (struct tm *__tp) __attribute__ ((__nothrow__));
11065
11066
11067
11068
11069
11070extern size_t strftime (char *__restrict __s, size_t __maxsize,
11071 __const char *__restrict __format,
11072 __const struct tm *__restrict __tp) __attribute__ ((__nothrow__));
11073
11074
11075
11076
11077
11078extern char *strptime (__const char *__restrict __s,
11079 __const char *__restrict __fmt, struct tm *__tp)
11080 __attribute__ ((__nothrow__));
11081
11082
11083
11084
11085
11086
11087
11088extern size_t strftime_l (char *__restrict __s, size_t __maxsize,
11089 __const char *__restrict __format,
11090 __const struct tm *__restrict __tp,
11091 __locale_t __loc) __attribute__ ((__nothrow__));
11092
11093
11094
11095extern char *strptime_l (__const char *__restrict __s,
11096 __const char *__restrict __fmt, struct tm *__tp,
11097 __locale_t __loc) __attribute__ ((__nothrow__));
11098
11099
11100
11101
11102
11103
11104extern struct tm *gmtime (__const time_t *__timer) __attribute__ ((__nothrow__));
11105
11106
11107
11108extern struct tm *localtime (__const time_t *__timer) __attribute__ ((__nothrow__));
11109
11110
11111
11112
11113
11114extern struct tm *gmtime_r (__const time_t *__restrict __timer,
11115 struct tm *__restrict __tp) __attribute__ ((__nothrow__));
11116
11117
11118
11119extern struct tm *localtime_r (__const time_t *__restrict __timer,
11120 struct tm *__restrict __tp) __attribute__ ((__nothrow__));
11121
11122
11123
11124
11125
11126extern char *asctime (__const struct tm *__tp) __attribute__ ((__nothrow__));
11127
11128
11129extern char *ctime (__const time_t *__timer) __attribute__ ((__nothrow__));
11130
11131
11132
11133
11134
11135
11136
11137extern char *asctime_r (__const struct tm *__restrict __tp,
11138 char *__restrict __buf) __attribute__ ((__nothrow__));
11139
11140
11141extern char *ctime_r (__const time_t *__restrict __timer,
11142 char *__restrict __buf) __attribute__ ((__nothrow__));
11143
11144
11145
11146
11147extern char *__tzname[2];
11148extern int __daylight;
11149extern long int __timezone;
11150
11151
11152
11153
11154extern char *tzname[2];
11155
11156
11157
11158extern void tzset (void) __attribute__ ((__nothrow__));
11159
11160
11161
11162extern int daylight;
11163extern long int timezone;
11164
11165
11166
11167
11168
11169extern int stime (__const time_t *__when) __attribute__ ((__nothrow__));
11170# 313 "/usr/include/time.h" 3 4
11171extern time_t timegm (struct tm *__tp) __attribute__ ((__nothrow__));
11172
11173
11174extern time_t timelocal (struct tm *__tp) __attribute__ ((__nothrow__));
11175
11176
11177extern int dysize (int __year) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
11178# 328 "/usr/include/time.h" 3 4
11179extern int nanosleep (__const struct timespec *__requested_time,
11180 struct timespec *__remaining);
11181
11182
11183
11184extern int clock_getres (clockid_t __clock_id, struct timespec *__res) __attribute__ ((__nothrow__));
11185
11186
11187extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) __attribute__ ((__nothrow__));
11188
11189
11190extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp)
11191 __attribute__ ((__nothrow__));
11192
11193
11194
11195
11196
11197
11198extern int clock_nanosleep (clockid_t __clock_id, int __flags,
11199 __const struct timespec *__req,
11200 struct timespec *__rem);
11201
11202
11203extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __attribute__ ((__nothrow__));
11204
11205
11206
11207
11208extern int timer_create (clockid_t __clock_id,
11209 struct sigevent *__restrict __evp,
11210 timer_t *__restrict __timerid) __attribute__ ((__nothrow__));
11211
11212
11213extern int timer_delete (timer_t __timerid) __attribute__ ((__nothrow__));
11214
11215
11216extern int timer_settime (timer_t __timerid, int __flags,
11217 __const struct itimerspec *__restrict __value,
11218 struct itimerspec *__restrict __ovalue) __attribute__ ((__nothrow__));
11219
11220
11221extern int timer_gettime (timer_t __timerid, struct itimerspec *__value)
11222 __attribute__ ((__nothrow__));
11223
11224
11225extern int timer_getoverrun (timer_t __timerid) __attribute__ ((__nothrow__));
11226# 390 "/usr/include/time.h" 3 4
11227extern int getdate_err;
11228# 399 "/usr/include/time.h" 3 4
11229extern struct tm *getdate (__const char *__string);
11230# 413 "/usr/include/time.h" 3 4
11231extern int getdate_r (__const char *__restrict __string,
11232 struct tm *__restrict __resbufp);
11233
11234
11235
11236# 27 "/usr/include/pthread.h" 2 3 4
11237
11238
11239# 1 "/usr/include/bits/setjmp.h" 1 3 4
11240# 33 "/usr/include/bits/setjmp.h" 3 4
11241typedef double __jmp_buf[21];
11242# 30 "/usr/include/pthread.h" 2 3 4
11243# 1 "/usr/include/bits/wordsize.h" 1 3 4
11244# 31 "/usr/include/pthread.h" 2 3 4
11245
11246
11247
11248enum
11249{
11250 PTHREAD_CREATE_JOINABLE,
11251
11252 PTHREAD_CREATE_DETACHED
11253
11254};
11255
11256
11257
11258enum
11259{
11260 PTHREAD_MUTEX_TIMED_NP,
11261 PTHREAD_MUTEX_RECURSIVE_NP,
11262 PTHREAD_MUTEX_ERRORCHECK_NP,
11263 PTHREAD_MUTEX_ADAPTIVE_NP
11264
11265 ,
11266 PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP,
11267 PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP,
11268 PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP,
11269 PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL
11270
11271
11272
11273 , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP
11274
11275};
11276
11277
11278
11279
11280enum
11281{
11282 PTHREAD_MUTEX_STALLED,
11283 PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED,
11284 PTHREAD_MUTEX_ROBUST,
11285 PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST
11286};
11287
11288
11289
11290
11291
11292enum
11293{
11294 PTHREAD_PRIO_NONE,
11295 PTHREAD_PRIO_INHERIT,
11296 PTHREAD_PRIO_PROTECT
11297};
11298# 115 "/usr/include/pthread.h" 3 4
11299enum
11300{
11301 PTHREAD_RWLOCK_PREFER_READER_NP,
11302 PTHREAD_RWLOCK_PREFER_WRITER_NP,
11303 PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP,
11304 PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP
11305};
11306# 147 "/usr/include/pthread.h" 3 4
11307enum
11308{
11309 PTHREAD_INHERIT_SCHED,
11310
11311 PTHREAD_EXPLICIT_SCHED
11312
11313};
11314
11315
11316
11317enum
11318{
11319 PTHREAD_SCOPE_SYSTEM,
11320
11321 PTHREAD_SCOPE_PROCESS
11322
11323};
11324
11325
11326
11327enum
11328{
11329 PTHREAD_PROCESS_PRIVATE,
11330
11331 PTHREAD_PROCESS_SHARED
11332
11333};
11334# 182 "/usr/include/pthread.h" 3 4
11335struct _pthread_cleanup_buffer
11336{
11337 void (*__routine) (void *);
11338 void *__arg;
11339 int __canceltype;
11340 struct _pthread_cleanup_buffer *__prev;
11341};
11342
11343
11344enum
11345{
11346 PTHREAD_CANCEL_ENABLE,
11347
11348 PTHREAD_CANCEL_DISABLE
11349
11350};
11351enum
11352{
11353 PTHREAD_CANCEL_DEFERRED,
11354
11355 PTHREAD_CANCEL_ASYNCHRONOUS
11356
11357};
11358# 220 "/usr/include/pthread.h" 3 4
11359
11360
11361
11362
11363
11364extern int pthread_create (pthread_t *__restrict __newthread,
11365 __const pthread_attr_t *__restrict __attr,
11366 void *(*__start_routine) (void *),
11367 void *__restrict __arg) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3)));
11368
11369
11370
11371
11372
11373extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__));
11374
11375
11376
11377
11378
11379
11380
11381extern int pthread_join (pthread_t __th, void **__thread_return);
11382
11383
11384
11385
11386extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) __attribute__ ((__nothrow__));
11387
11388
11389
11390
11391
11392
11393
11394extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return,
11395 __const struct timespec *__abstime);
11396
11397
11398
11399
11400
11401
11402extern int pthread_detach (pthread_t __th) __attribute__ ((__nothrow__));
11403
11404
11405
11406extern pthread_t pthread_self (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__));
11407
11408
11409extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) __attribute__ ((__nothrow__));
11410
11411
11412
11413
11414
11415
11416
11417extern int pthread_attr_init (pthread_attr_t *__attr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11418
11419
11420extern int pthread_attr_destroy (pthread_attr_t *__attr)
11421 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11422
11423
11424extern int pthread_attr_getdetachstate (__const pthread_attr_t *__attr,
11425 int *__detachstate)
11426 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11427
11428
11429extern int pthread_attr_setdetachstate (pthread_attr_t *__attr,
11430 int __detachstate)
11431 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11432
11433
11434
11435extern int pthread_attr_getguardsize (__const pthread_attr_t *__attr,
11436 size_t *__guardsize)
11437 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11438
11439
11440extern int pthread_attr_setguardsize (pthread_attr_t *__attr,
11441 size_t __guardsize)
11442 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11443
11444
11445
11446extern int pthread_attr_getschedparam (__const pthread_attr_t *__restrict
11447 __attr,
11448 struct sched_param *__restrict __param)
11449 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11450
11451
11452extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr,
11453 __const struct sched_param *__restrict
11454 __param) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11455
11456
11457extern int pthread_attr_getschedpolicy (__const pthread_attr_t *__restrict
11458 __attr, int *__restrict __policy)
11459 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11460
11461
11462extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy)
11463 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11464
11465
11466extern int pthread_attr_getinheritsched (__const pthread_attr_t *__restrict
11467 __attr, int *__restrict __inherit)
11468 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11469
11470
11471extern int pthread_attr_setinheritsched (pthread_attr_t *__attr,
11472 int __inherit)
11473 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11474
11475
11476
11477extern int pthread_attr_getscope (__const pthread_attr_t *__restrict __attr,
11478 int *__restrict __scope)
11479 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11480
11481
11482extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope)
11483 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11484
11485
11486extern int pthread_attr_getstackaddr (__const pthread_attr_t *__restrict
11487 __attr, void **__restrict __stackaddr)
11488 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__deprecated__));
11489
11490
11491
11492
11493
11494extern int pthread_attr_setstackaddr (pthread_attr_t *__attr,
11495 void *__stackaddr)
11496 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__));
11497
11498
11499extern int pthread_attr_getstacksize (__const pthread_attr_t *__restrict
11500 __attr, size_t *__restrict __stacksize)
11501 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11502
11503
11504
11505
11506extern int pthread_attr_setstacksize (pthread_attr_t *__attr,
11507 size_t __stacksize)
11508 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11509
11510
11511
11512extern int pthread_attr_getstack (__const pthread_attr_t *__restrict __attr,
11513 void **__restrict __stackaddr,
11514 size_t *__restrict __stacksize)
11515 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2, 3)));
11516
11517
11518
11519
11520extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr,
11521 size_t __stacksize) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11522
11523
11524
11525
11526
11527extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr,
11528 size_t __cpusetsize,
11529 __const cpu_set_t *__cpuset)
11530 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3)));
11531
11532
11533
11534extern int pthread_attr_getaffinity_np (__const pthread_attr_t *__attr,
11535 size_t __cpusetsize,
11536 cpu_set_t *__cpuset)
11537 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3)));
11538
11539
11540
11541
11542
11543extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr)
11544 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
11545
11546
11547
11548
11549
11550
11551
11552extern int pthread_setschedparam (pthread_t __target_thread, int __policy,
11553 __const struct sched_param *__param)
11554 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3)));
11555
11556
11557extern int pthread_getschedparam (pthread_t __target_thread,
11558 int *__restrict __policy,
11559 struct sched_param *__restrict __param)
11560 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));
11561
11562
11563extern int pthread_setschedprio (pthread_t __target_thread, int __prio)
11564 __attribute__ ((__nothrow__));
11565
11566
11567
11568
11569extern int pthread_getname_np (pthread_t __target_thread, char *__buf,
11570 size_t __buflen)
11571 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
11572
11573
11574extern int pthread_setname_np (pthread_t __target_thread, __const char *__name)
11575 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
11576
11577
11578
11579
11580
11581extern int pthread_getconcurrency (void) __attribute__ ((__nothrow__));
11582
11583
11584extern int pthread_setconcurrency (int __level) __attribute__ ((__nothrow__));
11585
11586
11587
11588
11589
11590
11591
11592extern int pthread_yield (void) __attribute__ ((__nothrow__));
11593
11594
11595
11596
11597extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize,
11598 __const cpu_set_t *__cpuset)
11599 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3)));
11600
11601
11602extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize,
11603 cpu_set_t *__cpuset)
11604 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3)));
11605# 478 "/usr/include/pthread.h" 3 4
11606extern int pthread_once (pthread_once_t *__once_control,
11607 void (*__init_routine) (void)) __attribute__ ((__nonnull__ (1, 2)));
11608# 490 "/usr/include/pthread.h" 3 4
11609extern int pthread_setcancelstate (int __state, int *__oldstate);
11610
11611
11612
11613extern int pthread_setcanceltype (int __type, int *__oldtype);
11614
11615
11616extern int pthread_cancel (pthread_t __th);
11617
11618
11619
11620
11621extern void pthread_testcancel (void);
11622
11623
11624
11625
11626typedef struct
11627{
11628 struct
11629 {
11630 __jmp_buf __cancel_jmp_buf;
11631 int __mask_was_saved;
11632 } __cancel_jmp_buf[1];
11633 void *__pad[4];
11634} __pthread_unwind_buf_t __attribute__ ((__aligned__));
11635# 524 "/usr/include/pthread.h" 3 4
11636struct __pthread_cleanup_frame
11637{
11638 void (*__cancel_routine) (void *);
11639 void *__cancel_arg;
11640 int __do_it;
11641 int __cancel_type;
11642};
11643# 664 "/usr/include/pthread.h" 3 4
11644extern void __pthread_register_cancel (__pthread_unwind_buf_t *__buf)
11645 ;
11646# 676 "/usr/include/pthread.h" 3 4
11647extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf)
11648 ;
11649# 699 "/usr/include/pthread.h" 3 4
11650extern void __pthread_register_cancel_defer (__pthread_unwind_buf_t *__buf)
11651 ;
11652# 712 "/usr/include/pthread.h" 3 4
11653extern void __pthread_unregister_cancel_restore (__pthread_unwind_buf_t *__buf)
11654 ;
11655
11656
11657
11658extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf)
11659 __attribute__ ((__noreturn__))
11660
11661 __attribute__ ((__weak__))
11662
11663 ;
11664
11665
11666
11667struct __jmp_buf_tag;
11668extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) __attribute__ ((__nothrow__));
11669
11670
11671
11672
11673
11674extern int pthread_mutex_init (pthread_mutex_t *__mutex,
11675 __const pthread_mutexattr_t *__mutexattr)
11676 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11677
11678
11679extern int pthread_mutex_destroy (pthread_mutex_t *__mutex)
11680 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11681
11682
11683extern int pthread_mutex_trylock (pthread_mutex_t *__mutex)
11684 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11685
11686
11687extern int pthread_mutex_lock (pthread_mutex_t *__mutex)
11688 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11689
11690
11691
11692extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex,
11693 __const struct timespec *__restrict
11694 __abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11695
11696
11697
11698extern int pthread_mutex_unlock (pthread_mutex_t *__mutex)
11699 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11700
11701
11702
11703extern int pthread_mutex_getprioceiling (__const pthread_mutex_t *
11704 __restrict __mutex,
11705 int *__restrict __prioceiling)
11706 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11707
11708
11709
11710extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex,
11711 int __prioceiling,
11712 int *__restrict __old_ceiling)
11713 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3)));
11714
11715
11716
11717
11718extern int pthread_mutex_consistent (pthread_mutex_t *__mutex)
11719 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11720
11721extern int pthread_mutex_consistent_np (pthread_mutex_t *__mutex)
11722 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11723# 790 "/usr/include/pthread.h" 3 4
11724extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr)
11725 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11726
11727
11728extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr)
11729 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11730
11731
11732extern int pthread_mutexattr_getpshared (__const pthread_mutexattr_t *
11733 __restrict __attr,
11734 int *__restrict __pshared)
11735 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11736
11737
11738extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr,
11739 int __pshared)
11740 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11741
11742
11743
11744extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict
11745 __attr, int *__restrict __kind)
11746 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11747
11748
11749
11750
11751extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind)
11752 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11753
11754
11755
11756extern int pthread_mutexattr_getprotocol (__const pthread_mutexattr_t *
11757 __restrict __attr,
11758 int *__restrict __protocol)
11759 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11760
11761
11762
11763extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr,
11764 int __protocol)
11765 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11766
11767
11768extern int pthread_mutexattr_getprioceiling (__const pthread_mutexattr_t *
11769 __restrict __attr,
11770 int *__restrict __prioceiling)
11771 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11772
11773
11774extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr,
11775 int __prioceiling)
11776 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11777
11778
11779
11780extern int pthread_mutexattr_getrobust (__const pthread_mutexattr_t *__attr,
11781 int *__robustness)
11782 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11783
11784extern int pthread_mutexattr_getrobust_np (__const pthread_mutexattr_t *__attr,
11785 int *__robustness)
11786 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11787
11788
11789
11790extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr,
11791 int __robustness)
11792 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11793
11794extern int pthread_mutexattr_setrobust_np (pthread_mutexattr_t *__attr,
11795 int __robustness)
11796 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11797# 872 "/usr/include/pthread.h" 3 4
11798extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock,
11799 __const pthread_rwlockattr_t *__restrict
11800 __attr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11801
11802
11803extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock)
11804 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11805
11806
11807extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock)
11808 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11809
11810
11811extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock)
11812 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11813
11814
11815
11816extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock,
11817 __const struct timespec *__restrict
11818 __abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11819
11820
11821
11822extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock)
11823 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11824
11825
11826extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock)
11827 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11828
11829
11830
11831extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock,
11832 __const struct timespec *__restrict
11833 __abstime) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11834
11835
11836
11837extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock)
11838 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11839
11840
11841
11842
11843
11844extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr)
11845 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11846
11847
11848extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr)
11849 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11850
11851
11852extern int pthread_rwlockattr_getpshared (__const pthread_rwlockattr_t *
11853 __restrict __attr,
11854 int *__restrict __pshared)
11855 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11856
11857
11858extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr,
11859 int __pshared)
11860 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11861
11862
11863extern int pthread_rwlockattr_getkind_np (__const pthread_rwlockattr_t *
11864 __restrict __attr,
11865 int *__restrict __pref)
11866 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11867
11868
11869extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr,
11870 int __pref) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11871
11872
11873
11874
11875
11876
11877
11878extern int pthread_cond_init (pthread_cond_t *__restrict __cond,
11879 __const pthread_condattr_t *__restrict
11880 __cond_attr) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11881
11882
11883extern int pthread_cond_destroy (pthread_cond_t *__cond)
11884 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11885
11886
11887extern int pthread_cond_signal (pthread_cond_t *__cond)
11888 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11889
11890
11891extern int pthread_cond_broadcast (pthread_cond_t *__cond)
11892 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11893
11894
11895
11896
11897
11898
11899extern int pthread_cond_wait (pthread_cond_t *__restrict __cond,
11900 pthread_mutex_t *__restrict __mutex)
11901 __attribute__ ((__nonnull__ (1, 2)));
11902# 984 "/usr/include/pthread.h" 3 4
11903extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
11904 pthread_mutex_t *__restrict __mutex,
11905 __const struct timespec *__restrict
11906 __abstime) __attribute__ ((__nonnull__ (1, 2, 3)));
11907
11908
11909
11910
11911extern int pthread_condattr_init (pthread_condattr_t *__attr)
11912 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11913
11914
11915extern int pthread_condattr_destroy (pthread_condattr_t *__attr)
11916 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11917
11918
11919extern int pthread_condattr_getpshared (__const pthread_condattr_t *
11920 __restrict __attr,
11921 int *__restrict __pshared)
11922 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11923
11924
11925extern int pthread_condattr_setpshared (pthread_condattr_t *__attr,
11926 int __pshared) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11927
11928
11929
11930extern int pthread_condattr_getclock (__const pthread_condattr_t *
11931 __restrict __attr,
11932 __clockid_t *__restrict __clock_id)
11933 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11934
11935
11936extern int pthread_condattr_setclock (pthread_condattr_t *__attr,
11937 __clockid_t __clock_id)
11938 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11939# 1028 "/usr/include/pthread.h" 3 4
11940extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared)
11941 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11942
11943
11944extern int pthread_spin_destroy (pthread_spinlock_t *__lock)
11945 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11946
11947
11948extern int pthread_spin_lock (pthread_spinlock_t *__lock)
11949 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11950
11951
11952extern int pthread_spin_trylock (pthread_spinlock_t *__lock)
11953 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11954
11955
11956extern int pthread_spin_unlock (pthread_spinlock_t *__lock)
11957 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11958
11959
11960
11961
11962
11963
11964extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier,
11965 __const pthread_barrierattr_t *__restrict
11966 __attr, unsigned int __count)
11967 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11968
11969
11970extern int pthread_barrier_destroy (pthread_barrier_t *__barrier)
11971 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11972
11973
11974extern int pthread_barrier_wait (pthread_barrier_t *__barrier)
11975 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11976
11977
11978
11979extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr)
11980 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11981
11982
11983extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr)
11984 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11985
11986
11987extern int pthread_barrierattr_getpshared (__const pthread_barrierattr_t *
11988 __restrict __attr,
11989 int *__restrict __pshared)
11990 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));
11991
11992
11993extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr,
11994 int __pshared)
11995 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
11996# 1095 "/usr/include/pthread.h" 3 4
11997extern int pthread_key_create (pthread_key_t *__key,
11998 void (*__destr_function) (void *))
11999 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));
12000
12001
12002extern int pthread_key_delete (pthread_key_t __key) __attribute__ ((__nothrow__));
12003
12004
12005extern void *pthread_getspecific (pthread_key_t __key) __attribute__ ((__nothrow__));
12006
12007
12008extern int pthread_setspecific (pthread_key_t __key,
12009 __const void *__pointer) __attribute__ ((__nothrow__)) ;
12010
12011
12012
12013
12014extern int pthread_getcpuclockid (pthread_t __thread_id,
12015 __clockid_t *__clock_id)
12016 __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));
12017# 1129 "/usr/include/pthread.h" 3 4
12018extern int pthread_atfork (void (*__prepare) (void),
12019 void (*__parent) (void),
12020 void (*__child) (void)) __attribute__ ((__nothrow__));
12021
12022
12023
12024
12025extern __inline __attribute__ ((__gnu_inline__)) int
12026__attribute__ ((__nothrow__)) pthread_equal (pthread_t __thread1, pthread_t __thread2)
12027{
12028 return __thread1 == __thread2;
12029}
12030
12031
12032
12033# 64 "../../src/mapi/mapi/u_thread.h" 2
12034
12035struct u_tsd {
12036 pthread_key_t key;
12037 int initMagic;
12038};
12039
12040typedef pthread_mutex_t u_mutex;
12041# 186 "../../src/mapi/mapi/u_thread.h"
12042unsigned long
12043u_thread_self(void);
12044
12045void
12046u_tsd_init(struct u_tsd *tsd);
12047
12048void
12049u_tsd_destroy(struct u_tsd *tsd);
12050
12051void *
12052u_tsd_get(struct u_tsd *tsd);
12053
12054void
12055u_tsd_set(struct u_tsd *tsd, void *ptr);
12056# 5 "../../src/mapi/glapi/glthread.h" 2
12057# 17 "../../src/mapi/glapi/glthread.h"
12058typedef struct u_tsd _glthread_TSD;
12059typedef u_mutex _glthread_Mutex;
12060# 76 "../../src/mapi/glapi/glapi.h" 2
12061
12062typedef void (*_glapi_proc)(void);
12063struct _glapi_table;
12064
12065
12066
12067
12068__attribute__((visibility("default"))) extern __thread struct _glapi_table * _glapi_tls_Dispatch
12069 __attribute__((tls_model("initial-exec")));
12070
12071__attribute__((visibility("default"))) extern __thread void * _glapi_tls_Context
12072 __attribute__((tls_model("initial-exec")));
12073
12074__attribute__((visibility("default"))) extern const struct _glapi_table *_glapi_Dispatch;
12075__attribute__((visibility("default"))) extern const void *_glapi_Context;
12076# 118 "../../src/mapi/glapi/glapi.h"
12077void
12078_glapi_destroy_multithread(void);
12079
12080
12081__attribute__((visibility("default"))) void
12082_glapi_check_multithread(void);
12083
12084
12085__attribute__((visibility("default"))) void
12086_glapi_set_context(void *context);
12087
12088
12089__attribute__((visibility("default"))) void *
12090_glapi_get_context(void);
12091
12092
12093__attribute__((visibility("default"))) void
12094_glapi_set_dispatch(struct _glapi_table *dispatch);
12095
12096
12097__attribute__((visibility("default"))) struct _glapi_table *
12098_glapi_get_dispatch(void);
12099
12100
12101__attribute__((visibility("default"))) unsigned int
12102_glapi_get_dispatch_table_size(void);
12103
12104
12105__attribute__((visibility("default"))) int
12106_glapi_add_dispatch( const char * const * function_names,
12107 const char * parameter_signature );
12108
12109__attribute__((visibility("default"))) int
12110_glapi_get_proc_offset(const char *funcName);
12111
12112
12113__attribute__((visibility("default"))) _glapi_proc
12114_glapi_get_proc_address(const char *funcName);
12115
12116
12117__attribute__((visibility("default"))) const char *
12118_glapi_get_proc_name(unsigned int offset);
12119
12120
12121__attribute__((visibility("default"))) struct _glapi_table *
12122_glapi_create_table_from_handle(void *handle, const char *symbol_prefix);
12123
12124
12125__attribute__((visibility("default"))) unsigned long
12126_glthread_GetID(void);
12127
12128
12129
12130
12131
12132__attribute__((visibility("default"))) void
12133_glapi_noop_enable_warnings(unsigned char enable);
12134
12135
12136__attribute__((visibility("default"))) void
12137_glapi_set_warning_func(_glapi_proc func);
12138# 41 "../../src/mesa/main/mtypes.h" 2
12139# 1 "../../src/mesa/math/m_matrix.h" 1
12140# 57 "../../src/mesa/math/m_matrix.h"
12141enum GLmatrixtype {
12142 MATRIX_GENERAL,
12143 MATRIX_IDENTITY,
12144 MATRIX_3D_NO_ROT,
12145 MATRIX_PERSPECTIVE,
12146 MATRIX_2D,
12147 MATRIX_2D_NO_ROT,
12148 MATRIX_3D
12149} ;
12150
12151
12152
12153
12154typedef struct {
12155 GLfloat *m;
12156 GLfloat *inv;
12157 GLuint flags;
12158
12159
12160 enum GLmatrixtype type;
12161} GLmatrix;
12162
12163
12164
12165
12166extern void
12167_math_matrix_ctr( GLmatrix *m );
12168
12169extern void
12170_math_matrix_dtr( GLmatrix *m );
12171
12172extern void
12173_math_matrix_alloc_inv( GLmatrix *m );
12174
12175extern void
12176_math_matrix_mul_matrix( GLmatrix *dest, const GLmatrix *a, const GLmatrix *b );
12177
12178extern void
12179_math_matrix_mul_floats( GLmatrix *dest, const GLfloat *b );
12180
12181extern void
12182_math_matrix_loadf( GLmatrix *mat, const GLfloat *m );
12183
12184extern void
12185_math_matrix_translate( GLmatrix *mat, GLfloat x, GLfloat y, GLfloat z );
12186
12187extern void
12188_math_matrix_rotate( GLmatrix *m, GLfloat angle,
12189 GLfloat x, GLfloat y, GLfloat z );
12190
12191extern void
12192_math_matrix_scale( GLmatrix *mat, GLfloat x, GLfloat y, GLfloat z );
12193
12194extern void
12195_math_matrix_ortho( GLmatrix *mat,
12196 GLfloat left, GLfloat right,
12197 GLfloat bottom, GLfloat top,
12198 GLfloat nearval, GLfloat farval );
12199
12200extern void
12201_math_matrix_frustum( GLmatrix *mat,
12202 GLfloat left, GLfloat right,
12203 GLfloat bottom, GLfloat top,
12204 GLfloat nearval, GLfloat farval );
12205
12206extern void
12207_math_matrix_viewport(GLmatrix *m, GLint x, GLint y, GLint width, GLint height,
12208 GLfloat zNear, GLfloat zFar, GLfloat depthMax);
12209
12210extern void
12211_math_matrix_set_identity( GLmatrix *dest );
12212
12213extern void
12214_math_matrix_copy( GLmatrix *to, const GLmatrix *from );
12215
12216extern void
12217_math_matrix_analyse( GLmatrix *mat );
12218
12219extern void
12220_math_matrix_print( const GLmatrix *m );
12221
12222extern GLboolean
12223_math_matrix_is_length_preserving( const GLmatrix *m );
12224
12225extern GLboolean
12226_math_matrix_has_rotation( const GLmatrix *m );
12227
12228extern GLboolean
12229_math_matrix_is_general_scale( const GLmatrix *m );
12230
12231extern GLboolean
12232_math_matrix_is_dirty( const GLmatrix *m );
12233
12234
12235
12236
12237
12238
12239
12240extern void
12241_math_transposef( GLfloat to[16], const GLfloat from[16] );
12242
12243extern void
12244_math_transposed( GLdouble to[16], const GLdouble from[16] );
12245
12246extern void
12247_math_transposefd( GLfloat to[16], const GLdouble from[16] );
12248# 205 "../../src/mesa/math/m_matrix.h"
12249extern void
12250_mesa_transform_vector(GLfloat u[4], const GLfloat v[4], const GLfloat m[16]);
12251# 42 "../../src/mesa/main/mtypes.h" 2
12252# 1 "../../src/mesa/main/simple_list.h" 1
12253# 40 "../../src/mesa/main/simple_list.h"
12254struct simple_node {
12255 struct simple_node *next;
12256 struct simple_node *prev;
12257};
12258# 43 "../../src/mesa/main/mtypes.h" 2
12259# 1 "../../src/mesa/main/formats.h" 1
12260# 46 "../../src/mesa/main/formats.h"
12261typedef enum
12262{
12263 MESA_FORMAT_NONE = 0,
12264
12265
12266
12267
12268
12269
12270
12271 MESA_FORMAT_RGBA8888,
12272 MESA_FORMAT_RGBA8888_REV,
12273 MESA_FORMAT_ARGB8888,
12274 MESA_FORMAT_ARGB8888_REV,
12275 MESA_FORMAT_XRGB8888,
12276 MESA_FORMAT_XRGB8888_REV,
12277 MESA_FORMAT_RGB888,
12278 MESA_FORMAT_BGR888,
12279 MESA_FORMAT_RGB565,
12280 MESA_FORMAT_RGB565_REV,
12281 MESA_FORMAT_ARGB4444,
12282 MESA_FORMAT_ARGB4444_REV,
12283 MESA_FORMAT_RGBA5551,
12284 MESA_FORMAT_ARGB1555,
12285 MESA_FORMAT_ARGB1555_REV,
12286 MESA_FORMAT_AL44,
12287 MESA_FORMAT_AL88,
12288 MESA_FORMAT_AL88_REV,
12289 MESA_FORMAT_AL1616,
12290 MESA_FORMAT_AL1616_REV,
12291 MESA_FORMAT_RGB332,
12292 MESA_FORMAT_A8,
12293 MESA_FORMAT_A16,
12294 MESA_FORMAT_L8,
12295 MESA_FORMAT_L16,
12296 MESA_FORMAT_I8,
12297 MESA_FORMAT_I16,
12298 MESA_FORMAT_CI8,
12299 MESA_FORMAT_YCBCR,
12300 MESA_FORMAT_YCBCR_REV,
12301 MESA_FORMAT_R8,
12302 MESA_FORMAT_RG88,
12303 MESA_FORMAT_RG88_REV,
12304 MESA_FORMAT_R16,
12305 MESA_FORMAT_RG1616,
12306 MESA_FORMAT_RG1616_REV,
12307 MESA_FORMAT_ARGB2101010,
12308 MESA_FORMAT_Z24_S8,
12309 MESA_FORMAT_S8_Z24,
12310 MESA_FORMAT_Z16,
12311 MESA_FORMAT_X8_Z24,
12312 MESA_FORMAT_Z24_X8,
12313 MESA_FORMAT_Z32,
12314 MESA_FORMAT_S8,
12315
12316
12317
12318
12319
12320
12321 MESA_FORMAT_SRGB8,
12322 MESA_FORMAT_SRGBA8,
12323 MESA_FORMAT_SARGB8,
12324 MESA_FORMAT_SL8,
12325 MESA_FORMAT_SLA8,
12326 MESA_FORMAT_SRGB_DXT1,
12327 MESA_FORMAT_SRGBA_DXT1,
12328 MESA_FORMAT_SRGBA_DXT3,
12329 MESA_FORMAT_SRGBA_DXT5,
12330
12331
12332
12333
12334
12335
12336 MESA_FORMAT_RGB_FXT1,
12337 MESA_FORMAT_RGBA_FXT1,
12338 MESA_FORMAT_RGB_DXT1,
12339 MESA_FORMAT_RGBA_DXT1,
12340 MESA_FORMAT_RGBA_DXT3,
12341 MESA_FORMAT_RGBA_DXT5,
12342
12343
12344
12345
12346
12347
12348 MESA_FORMAT_RGBA_FLOAT32,
12349 MESA_FORMAT_RGBA_FLOAT16,
12350 MESA_FORMAT_RGB_FLOAT32,
12351 MESA_FORMAT_RGB_FLOAT16,
12352 MESA_FORMAT_ALPHA_FLOAT32,
12353 MESA_FORMAT_ALPHA_FLOAT16,
12354 MESA_FORMAT_LUMINANCE_FLOAT32,
12355 MESA_FORMAT_LUMINANCE_FLOAT16,
12356 MESA_FORMAT_LUMINANCE_ALPHA_FLOAT32,
12357 MESA_FORMAT_LUMINANCE_ALPHA_FLOAT16,
12358 MESA_FORMAT_INTENSITY_FLOAT32,
12359 MESA_FORMAT_INTENSITY_FLOAT16,
12360 MESA_FORMAT_R_FLOAT32,
12361 MESA_FORMAT_R_FLOAT16,
12362 MESA_FORMAT_RG_FLOAT32,
12363 MESA_FORMAT_RG_FLOAT16,
12364
12365
12366
12367
12368
12369
12370
12371 MESA_FORMAT_RGBA_INT8,
12372 MESA_FORMAT_RGBA_INT16,
12373 MESA_FORMAT_RGBA_INT32,
12374
12375
12376
12377
12378 MESA_FORMAT_RGBA_UINT8,
12379 MESA_FORMAT_RGBA_UINT16,
12380 MESA_FORMAT_RGBA_UINT32,
12381
12382
12383
12384
12385
12386
12387
12388 MESA_FORMAT_DUDV8,
12389 MESA_FORMAT_SIGNED_R8,
12390 MESA_FORMAT_SIGNED_RG88_REV,
12391 MESA_FORMAT_SIGNED_RGBX8888,
12392 MESA_FORMAT_SIGNED_RGBA8888,
12393 MESA_FORMAT_SIGNED_RGBA8888_REV,
12394 MESA_FORMAT_SIGNED_R16,
12395 MESA_FORMAT_SIGNED_GR1616,
12396 MESA_FORMAT_SIGNED_RGB_16,
12397 MESA_FORMAT_SIGNED_RGBA_16,
12398 MESA_FORMAT_RGBA_16,
12399
12400
12401
12402 MESA_FORMAT_RED_RGTC1,
12403 MESA_FORMAT_SIGNED_RED_RGTC1,
12404 MESA_FORMAT_RG_RGTC2,
12405 MESA_FORMAT_SIGNED_RG_RGTC2,
12406
12407
12408
12409 MESA_FORMAT_L_LATC1,
12410 MESA_FORMAT_SIGNED_L_LATC1,
12411 MESA_FORMAT_LA_LATC2,
12412 MESA_FORMAT_SIGNED_LA_LATC2,
12413
12414
12415 MESA_FORMAT_SIGNED_A8,
12416 MESA_FORMAT_SIGNED_L8,
12417 MESA_FORMAT_SIGNED_AL88,
12418 MESA_FORMAT_SIGNED_I8,
12419 MESA_FORMAT_SIGNED_A16,
12420 MESA_FORMAT_SIGNED_L16,
12421 MESA_FORMAT_SIGNED_AL1616,
12422 MESA_FORMAT_SIGNED_I16,
12423
12424 MESA_FORMAT_RGB9_E5_FLOAT,
12425 MESA_FORMAT_R11_G11_B10_FLOAT,
12426
12427 MESA_FORMAT_COUNT
12428} gl_format;
12429
12430
12431extern const char *
12432_mesa_get_format_name(gl_format format);
12433
12434extern GLint
12435_mesa_get_format_bytes(gl_format format);
12436
12437extern GLint
12438_mesa_get_format_bits(gl_format format, GLenum pname);
12439
12440extern GLenum
12441_mesa_get_format_datatype(gl_format format);
12442
12443extern GLenum
12444_mesa_get_format_base_format(gl_format format);
12445
12446extern void
12447_mesa_get_format_block_size(gl_format format, GLuint *bw, GLuint *bh);
12448
12449extern GLboolean
12450_mesa_is_format_compressed(gl_format format);
12451
12452extern GLboolean
12453_mesa_is_format_packed_depth_stencil(gl_format format);
12454
12455extern GLboolean
12456_mesa_is_format_integer_color(gl_format format);
12457
12458extern GLenum
12459_mesa_get_format_color_encoding(gl_format format);
12460
12461extern GLuint
12462_mesa_format_image_size(gl_format format, GLsizei width,
12463 GLsizei height, GLsizei depth);
12464
12465extern uint64_t
12466_mesa_format_image_size64(gl_format format, GLsizei width,
12467 GLsizei height, GLsizei depth);
12468
12469extern GLint
12470_mesa_format_row_stride(gl_format format, GLsizei width);
12471
12472extern void
12473_mesa_format_to_type_and_comps(gl_format format,
12474 GLenum *datatype, GLuint *comps);
12475
12476extern void
12477_mesa_test_formats(void);
12478
12479extern gl_format
12480_mesa_get_srgb_format_linear(gl_format format);
12481# 44 "../../src/mesa/main/mtypes.h" 2
12482
12483
12484
12485
12486
12487
12488 typedef GLubyte GLchan;
12489# 73 "../../src/mesa/main/mtypes.h"
12490 typedef GLubyte GLstencil;
12491# 85 "../../src/mesa/main/mtypes.h"
12492typedef GLuint64 GLbitfield64;
12493# 95 "../../src/mesa/main/mtypes.h"
12494struct _mesa_HashTable;
12495struct gl_attrib_node;
12496struct gl_list_extensions;
12497struct gl_meta_state;
12498struct gl_pixelstore_attrib;
12499struct gl_program_cache;
12500struct gl_texture_format;
12501struct gl_texture_image;
12502struct gl_texture_object;
12503struct gl_context;
12504struct st_context;
12505# 119 "../../src/mesa/main/mtypes.h"
12506typedef enum
12507{
12508 MESA_SHADER_VERTEX = 0,
12509 MESA_SHADER_FRAGMENT = 1,
12510 MESA_SHADER_GEOMETRY = 2,
12511 MESA_SHADER_TYPES = 3
12512} gl_shader_type;
12513# 136 "../../src/mesa/main/mtypes.h"
12514typedef enum
12515{
12516 VERT_ATTRIB_POS = 0,
12517 VERT_ATTRIB_WEIGHT = 1,
12518 VERT_ATTRIB_NORMAL = 2,
12519 VERT_ATTRIB_COLOR0 = 3,
12520 VERT_ATTRIB_COLOR1 = 4,
12521 VERT_ATTRIB_FOG = 5,
12522 VERT_ATTRIB_COLOR_INDEX = 6,
12523 VERT_ATTRIB_POINT_SIZE = 6,
12524 VERT_ATTRIB_EDGEFLAG = 7,
12525 VERT_ATTRIB_TEX0 = 8,
12526 VERT_ATTRIB_TEX1 = 9,
12527 VERT_ATTRIB_TEX2 = 10,
12528 VERT_ATTRIB_TEX3 = 11,
12529 VERT_ATTRIB_TEX4 = 12,
12530 VERT_ATTRIB_TEX5 = 13,
12531 VERT_ATTRIB_TEX6 = 14,
12532 VERT_ATTRIB_TEX7 = 15,
12533 VERT_ATTRIB_GENERIC0 = 16,
12534 VERT_ATTRIB_GENERIC1 = 17,
12535 VERT_ATTRIB_GENERIC2 = 18,
12536 VERT_ATTRIB_GENERIC3 = 19,
12537 VERT_ATTRIB_GENERIC4 = 20,
12538 VERT_ATTRIB_GENERIC5 = 21,
12539 VERT_ATTRIB_GENERIC6 = 22,
12540 VERT_ATTRIB_GENERIC7 = 23,
12541 VERT_ATTRIB_GENERIC8 = 24,
12542 VERT_ATTRIB_GENERIC9 = 25,
12543 VERT_ATTRIB_GENERIC10 = 26,
12544 VERT_ATTRIB_GENERIC11 = 27,
12545 VERT_ATTRIB_GENERIC12 = 28,
12546 VERT_ATTRIB_GENERIC13 = 29,
12547 VERT_ATTRIB_GENERIC14 = 30,
12548 VERT_ATTRIB_GENERIC15 = 31,
12549 VERT_ATTRIB_MAX = 32
12550} gl_vert_attrib;
12551# 220 "../../src/mesa/main/mtypes.h"
12552typedef enum
12553{
12554 VERT_RESULT_HPOS = 0,
12555 VERT_RESULT_COL0 = 1,
12556 VERT_RESULT_COL1 = 2,
12557 VERT_RESULT_FOGC = 3,
12558 VERT_RESULT_TEX0 = 4,
12559 VERT_RESULT_TEX1 = 5,
12560 VERT_RESULT_TEX2 = 6,
12561 VERT_RESULT_TEX3 = 7,
12562 VERT_RESULT_TEX4 = 8,
12563 VERT_RESULT_TEX5 = 9,
12564 VERT_RESULT_TEX6 = 10,
12565 VERT_RESULT_TEX7 = 11,
12566 VERT_RESULT_PSIZ = 12,
12567 VERT_RESULT_BFC0 = 13,
12568 VERT_RESULT_BFC1 = 14,
12569 VERT_RESULT_EDGE = 15,
12570 VERT_RESULT_VAR0 = 16,
12571 VERT_RESULT_MAX = (VERT_RESULT_VAR0 + 16)
12572} gl_vert_result;
12573
12574
12575
12576
12577
12578
12579
12580typedef enum
12581{
12582 GEOM_ATTRIB_POSITION = 0,
12583 GEOM_ATTRIB_COLOR0 = 1,
12584 GEOM_ATTRIB_COLOR1 = 2,
12585 GEOM_ATTRIB_SECONDARY_COLOR0 = 3,
12586 GEOM_ATTRIB_SECONDARY_COLOR1 = 4,
12587 GEOM_ATTRIB_FOG_FRAG_COORD = 5,
12588 GEOM_ATTRIB_POINT_SIZE = 6,
12589 GEOM_ATTRIB_CLIP_VERTEX = 7,
12590 GEOM_ATTRIB_PRIMITIVE_ID = 8,
12591 GEOM_ATTRIB_TEX_COORD = 9,
12592
12593 GEOM_ATTRIB_VAR0 = 16,
12594 GEOM_ATTRIB_MAX = (GEOM_ATTRIB_VAR0 + 16)
12595} gl_geom_attrib;
12596# 289 "../../src/mesa/main/mtypes.h"
12597typedef enum
12598{
12599 GEOM_RESULT_POS = 0,
12600 GEOM_RESULT_COL0 = 1,
12601 GEOM_RESULT_COL1 = 2,
12602 GEOM_RESULT_SCOL0 = 3,
12603 GEOM_RESULT_SCOL1 = 4,
12604 GEOM_RESULT_FOGC = 5,
12605 GEOM_RESULT_TEX0 = 6,
12606 GEOM_RESULT_TEX1 = 7,
12607 GEOM_RESULT_TEX2 = 8,
12608 GEOM_RESULT_TEX3 = 9,
12609 GEOM_RESULT_TEX4 = 10,
12610 GEOM_RESULT_TEX5 = 11,
12611 GEOM_RESULT_TEX6 = 12,
12612 GEOM_RESULT_TEX7 = 13,
12613 GEOM_RESULT_PSIZ = 14,
12614 GEOM_RESULT_CLPV = 15,
12615 GEOM_RESULT_PRID = 16,
12616 GEOM_RESULT_LAYR = 17,
12617 GEOM_RESULT_VAR0 = 18,
12618
12619 GEOM_RESULT_MAX = (GEOM_RESULT_VAR0 + 16 - 2)
12620} gl_geom_result;
12621
12622
12623
12624
12625
12626typedef enum
12627{
12628 FRAG_ATTRIB_WPOS = 0,
12629 FRAG_ATTRIB_COL0 = 1,
12630 FRAG_ATTRIB_COL1 = 2,
12631 FRAG_ATTRIB_FOGC = 3,
12632 FRAG_ATTRIB_TEX0 = 4,
12633 FRAG_ATTRIB_TEX1 = 5,
12634 FRAG_ATTRIB_TEX2 = 6,
12635 FRAG_ATTRIB_TEX3 = 7,
12636 FRAG_ATTRIB_TEX4 = 8,
12637 FRAG_ATTRIB_TEX5 = 9,
12638 FRAG_ATTRIB_TEX6 = 10,
12639 FRAG_ATTRIB_TEX7 = 11,
12640 FRAG_ATTRIB_FACE = 12,
12641 FRAG_ATTRIB_PNTC = 13,
12642 FRAG_ATTRIB_VAR0 = 14,
12643 FRAG_ATTRIB_MAX = (FRAG_ATTRIB_VAR0 + 16)
12644} gl_frag_attrib;
12645# 375 "../../src/mesa/main/mtypes.h"
12646typedef enum
12647{
12648 FRAG_RESULT_DEPTH = 0,
12649 FRAG_RESULT_STENCIL = 1,
12650
12651
12652
12653 FRAG_RESULT_COLOR = 2,
12654
12655
12656
12657
12658
12659 FRAG_RESULT_DATA0 = 3,
12660 FRAG_RESULT_MAX = (FRAG_RESULT_DATA0 + 8)
12661} gl_frag_result;
12662
12663
12664
12665
12666
12667typedef enum
12668{
12669
12670 BUFFER_FRONT_LEFT,
12671 BUFFER_BACK_LEFT,
12672 BUFFER_FRONT_RIGHT,
12673 BUFFER_BACK_RIGHT,
12674 BUFFER_DEPTH,
12675 BUFFER_STENCIL,
12676 BUFFER_ACCUM,
12677
12678 BUFFER_AUX0,
12679
12680 BUFFER_COLOR0,
12681 BUFFER_COLOR1,
12682 BUFFER_COLOR2,
12683 BUFFER_COLOR3,
12684 BUFFER_COLOR4,
12685 BUFFER_COLOR5,
12686 BUFFER_COLOR6,
12687 BUFFER_COLOR7,
12688 BUFFER_COUNT
12689} gl_buffer_index;
12690# 466 "../../src/mesa/main/mtypes.h"
12691struct gl_config
12692{
12693 GLboolean rgbMode;
12694 GLboolean floatMode;
12695 GLboolean colorIndexMode;
12696 GLuint doubleBufferMode;
12697 GLuint stereoMode;
12698
12699 GLboolean haveAccumBuffer;
12700 GLboolean haveDepthBuffer;
12701 GLboolean haveStencilBuffer;
12702
12703 GLint redBits, greenBits, blueBits, alphaBits;
12704 GLuint redMask, greenMask, blueMask, alphaMask;
12705 GLint rgbBits;
12706 GLint indexBits;
12707
12708 GLint accumRedBits, accumGreenBits, accumBlueBits, accumAlphaBits;
12709 GLint depthBits;
12710 GLint stencilBits;
12711
12712 GLint numAuxBuffers;
12713
12714 GLint level;
12715
12716
12717 GLint visualRating;
12718
12719
12720 GLint transparentPixel;
12721
12722 GLint transparentRed, transparentGreen, transparentBlue, transparentAlpha;
12723 GLint transparentIndex;
12724
12725
12726 GLint sampleBuffers;
12727 GLint samples;
12728
12729
12730 GLint maxPbufferWidth;
12731 GLint maxPbufferHeight;
12732 GLint maxPbufferPixels;
12733 GLint optimalPbufferWidth;
12734 GLint optimalPbufferHeight;
12735
12736
12737 GLint swapMethod;
12738
12739
12740 GLint bindToTextureRgb;
12741 GLint bindToTextureRgba;
12742 GLint bindToMipmapTexture;
12743 GLint bindToTextureTargets;
12744 GLint yInverted;
12745
12746
12747 GLint sRGBCapable;
12748};
12749
12750
12751
12752
12753
12754struct gl_color_table
12755{
12756 GLenum InternalFormat;
12757 GLenum _BaseFormat;
12758 GLuint Size;
12759 GLfloat *TableF;
12760 GLubyte *TableUB;
12761 GLubyte RedSize;
12762 GLubyte GreenSize;
12763 GLubyte BlueSize;
12764 GLubyte AlphaSize;
12765 GLubyte LuminanceSize;
12766 GLubyte IntensitySize;
12767};
12768# 612 "../../src/mesa/main/mtypes.h"
12769struct gl_shine_tab
12770{
12771 struct gl_shine_tab *next, *prev;
12772 GLfloat tab[256 +1];
12773 GLfloat shininess;
12774 GLuint refcount;
12775};
12776
12777
12778
12779
12780
12781struct gl_light
12782{
12783 struct gl_light *next;
12784 struct gl_light *prev;
12785
12786 GLfloat Ambient[4];
12787 GLfloat Diffuse[4];
12788 GLfloat Specular[4];
12789 GLfloat EyePosition[4];
12790 GLfloat SpotDirection[4];
12791 GLfloat SpotExponent;
12792 GLfloat SpotCutoff;
12793 GLfloat _CosCutoffNeg;
12794 GLfloat _CosCutoff;
12795 GLfloat ConstantAttenuation;
12796 GLfloat LinearAttenuation;
12797 GLfloat QuadraticAttenuation;
12798 GLboolean Enabled;
12799
12800
12801
12802
12803
12804 GLbitfield _Flags;
12805
12806 GLfloat _Position[4];
12807 GLfloat _VP_inf_norm[3];
12808 GLfloat _h_inf_norm[3];
12809 GLfloat _NormSpotDirection[4];
12810 GLfloat _VP_inf_spot_attenuation;
12811
12812 GLfloat _SpotExpTable[512][2];
12813 GLfloat _MatAmbient[2][3];
12814 GLfloat _MatDiffuse[2][3];
12815 GLfloat _MatSpecular[2][3];
12816 GLfloat _dli;
12817 GLfloat _sli;
12818
12819};
12820
12821
12822
12823
12824
12825struct gl_lightmodel
12826{
12827 GLfloat Ambient[4];
12828 GLboolean LocalViewer;
12829 GLboolean TwoSide;
12830 GLenum ColorControl;
12831
12832};
12833
12834
12835
12836
12837
12838struct gl_material
12839{
12840 GLfloat Attrib[12][4];
12841};
12842
12843
12844
12845
12846
12847struct gl_accum_attrib
12848{
12849 GLfloat ClearColor[4];
12850};
12851
12852
12853
12854
12855
12856struct gl_colorbuffer_attrib
12857{
12858 GLuint ClearIndex;
12859 GLfloat ClearColorUnclamped[4];
12860 GLclampf ClearColor[4];
12861
12862 GLuint IndexMask;
12863 GLubyte ColorMask[8][4];
12864
12865 GLenum DrawBuffer[8];
12866
12867
12868
12869
12870
12871 GLboolean AlphaEnabled;
12872 GLenum AlphaFunc;
12873 GLfloat AlphaRefUnclamped;
12874 GLclampf AlphaRef;
12875
12876
12877
12878
12879
12880
12881 GLbitfield BlendEnabled;
12882
12883
12884
12885
12886
12887 GLfloat BlendColorUnclamped[4];
12888 GLfloat BlendColor[4];
12889
12890 struct
12891 {
12892 GLenum SrcRGB;
12893 GLenum DstRGB;
12894 GLenum SrcA;
12895 GLenum DstA;
12896 GLenum EquationRGB;
12897 GLenum EquationA;
12898 } Blend[8];
12899
12900 GLboolean _BlendFuncPerBuffer;
12901
12902 GLboolean _BlendEquationPerBuffer;
12903
12904
12905
12906
12907
12908
12909 GLenum LogicOp;
12910 GLboolean IndexLogicOpEnabled;
12911 GLboolean ColorLogicOpEnabled;
12912 GLboolean _LogicOpEnabled;
12913
12914
12915 GLboolean DitherFlag;
12916
12917 GLenum ClampFragmentColor;
12918 GLboolean _ClampFragmentColor;
12919 GLenum ClampReadColor;
12920 GLboolean _ClampReadColor;
12921
12922 GLboolean sRGBEnabled;
12923};
12924
12925
12926
12927
12928
12929struct gl_current_attrib
12930{
12931
12932
12933
12934
12935
12936
12937 GLfloat Attrib[VERT_ATTRIB_MAX][4];
12938
12939
12940
12941
12942
12943
12944 GLfloat RasterPos[4];
12945 GLfloat RasterDistance;
12946 GLfloat RasterColor[4];
12947 GLfloat RasterSecondaryColor[4];
12948 GLfloat RasterTexCoords[8][4];
12949 GLboolean RasterPosValid;
12950
12951};
12952
12953
12954
12955
12956
12957struct gl_depthbuffer_attrib
12958{
12959 GLenum Func;
12960 GLclampd Clear;
12961 GLboolean Test;
12962 GLboolean Mask;
12963 GLboolean BoundsTest;
12964 GLfloat BoundsMin, BoundsMax;
12965};
12966
12967
12968
12969
12970
12971struct gl_eval_attrib
12972{
12973
12974
12975
12976
12977 GLboolean Map1Color4;
12978 GLboolean Map1Index;
12979 GLboolean Map1Normal;
12980 GLboolean Map1TextureCoord1;
12981 GLboolean Map1TextureCoord2;
12982 GLboolean Map1TextureCoord3;
12983 GLboolean Map1TextureCoord4;
12984 GLboolean Map1Vertex3;
12985 GLboolean Map1Vertex4;
12986 GLboolean Map1Attrib[16];
12987 GLboolean Map2Color4;
12988 GLboolean Map2Index;
12989 GLboolean Map2Normal;
12990 GLboolean Map2TextureCoord1;
12991 GLboolean Map2TextureCoord2;
12992 GLboolean Map2TextureCoord3;
12993 GLboolean Map2TextureCoord4;
12994 GLboolean Map2Vertex3;
12995 GLboolean Map2Vertex4;
12996 GLboolean Map2Attrib[16];
12997 GLboolean AutoNormal;
12998
12999
13000
13001
13002
13003
13004 GLint MapGrid1un;
13005 GLfloat MapGrid1u1, MapGrid1u2, MapGrid1du;
13006 GLint MapGrid2un, MapGrid2vn;
13007 GLfloat MapGrid2u1, MapGrid2u2, MapGrid2du;
13008 GLfloat MapGrid2v1, MapGrid2v2, MapGrid2dv;
13009
13010};
13011
13012
13013
13014
13015
13016struct gl_fog_attrib
13017{
13018 GLboolean Enabled;
13019 GLfloat ColorUnclamped[4];
13020 GLfloat Color[4];
13021 GLfloat Density;
13022 GLfloat Start;
13023 GLfloat End;
13024 GLfloat Index;
13025 GLenum Mode;
13026 GLboolean ColorSumEnabled;
13027 GLenum FogCoordinateSource;
13028 GLfloat _Scale;
13029};
13030# 883 "../../src/mesa/main/mtypes.h"
13031enum gl_frag_depth_layout {
13032 FRAG_DEPTH_LAYOUT_NONE,
13033 FRAG_DEPTH_LAYOUT_ANY,
13034 FRAG_DEPTH_LAYOUT_GREATER,
13035 FRAG_DEPTH_LAYOUT_LESS,
13036 FRAG_DEPTH_LAYOUT_UNCHANGED
13037};
13038
13039
13040
13041
13042
13043
13044
13045struct gl_hint_attrib
13046{
13047 GLenum PerspectiveCorrection;
13048 GLenum PointSmooth;
13049 GLenum LineSmooth;
13050 GLenum PolygonSmooth;
13051 GLenum Fog;
13052 GLenum ClipVolumeClipping;
13053 GLenum TextureCompression;
13054 GLenum GenerateMipmap;
13055 GLenum FragmentShaderDerivative;
13056};
13057# 924 "../../src/mesa/main/mtypes.h"
13058struct gl_light_attrib
13059{
13060 struct gl_light Light[8];
13061 struct gl_lightmodel Model;
13062
13063
13064
13065
13066
13067 struct gl_material Material;
13068
13069
13070 GLboolean Enabled;
13071 GLenum ShadeModel;
13072 GLenum ProvokingVertex;
13073 GLenum ColorMaterialFace;
13074 GLenum ColorMaterialMode;
13075 GLbitfield ColorMaterialBitmask;
13076 GLboolean ColorMaterialEnabled;
13077 GLenum ClampVertexColor;
13078 GLboolean _ClampVertexColor;
13079
13080 struct gl_light EnabledList;
13081
13082
13083
13084
13085
13086 GLboolean _NeedEyeCoords;
13087 GLboolean _NeedVertices;
13088 GLbitfield _Flags;
13089 GLfloat _BaseColor[2][3];
13090
13091};
13092
13093
13094
13095
13096
13097struct gl_line_attrib
13098{
13099 GLboolean SmoothFlag;
13100 GLboolean StippleFlag;
13101 GLushort StipplePattern;
13102 GLint StippleFactor;
13103 GLfloat Width;
13104};
13105
13106
13107
13108
13109
13110struct gl_list_attrib
13111{
13112 GLuint ListBase;
13113};
13114
13115
13116
13117
13118
13119struct gl_multisample_attrib
13120{
13121 GLboolean Enabled;
13122 GLboolean _Enabled;
13123 GLboolean SampleAlphaToCoverage;
13124 GLboolean SampleAlphaToOne;
13125 GLboolean SampleCoverage;
13126 GLfloat SampleCoverageValue;
13127 GLboolean SampleCoverageInvert;
13128};
13129
13130
13131
13132
13133
13134struct gl_pixelmap
13135{
13136 GLint Size;
13137 GLfloat Map[256];
13138 GLubyte Map8[256];
13139};
13140
13141
13142
13143
13144
13145struct gl_pixelmaps
13146{
13147 struct gl_pixelmap RtoR;
13148 struct gl_pixelmap GtoG;
13149 struct gl_pixelmap BtoB;
13150 struct gl_pixelmap AtoA;
13151 struct gl_pixelmap ItoR;
13152 struct gl_pixelmap ItoG;
13153 struct gl_pixelmap ItoB;
13154 struct gl_pixelmap ItoA;
13155 struct gl_pixelmap ItoI;
13156 struct gl_pixelmap StoS;
13157};
13158
13159
13160
13161
13162
13163struct gl_pixel_attrib
13164{
13165 GLenum ReadBuffer;
13166
13167
13168
13169
13170
13171
13172 GLfloat RedBias, RedScale;
13173 GLfloat GreenBias, GreenScale;
13174 GLfloat BlueBias, BlueScale;
13175 GLfloat AlphaBias, AlphaScale;
13176 GLfloat DepthBias, DepthScale;
13177 GLint IndexShift, IndexOffset;
13178
13179
13180
13181
13182 GLboolean MapColorFlag;
13183 GLboolean MapStencilFlag;
13184
13185
13186
13187
13188 GLfloat ZoomX, ZoomY;
13189};
13190
13191
13192
13193
13194
13195struct gl_point_attrib
13196{
13197 GLboolean SmoothFlag;
13198 GLfloat Size;
13199 GLfloat Params[3];
13200 GLfloat MinSize, MaxSize;
13201 GLfloat Threshold;
13202 GLboolean _Attenuated;
13203 GLboolean PointSprite;
13204 GLboolean CoordReplace[8];
13205 GLenum SpriteRMode;
13206 GLenum SpriteOrigin;
13207};
13208
13209
13210
13211
13212
13213struct gl_polygon_attrib
13214{
13215 GLenum FrontFace;
13216 GLenum FrontMode;
13217 GLenum BackMode;
13218 GLboolean _FrontBit;
13219 GLboolean CullFlag;
13220 GLboolean SmoothFlag;
13221 GLboolean StippleFlag;
13222 GLenum CullFaceMode;
13223 GLfloat OffsetFactor;
13224 GLfloat OffsetUnits;
13225 GLboolean OffsetPoint;
13226 GLboolean OffsetLine;
13227 GLboolean OffsetFill;
13228};
13229
13230
13231
13232
13233
13234struct gl_scissor_attrib
13235{
13236 GLboolean Enabled;
13237 GLint X, Y;
13238 GLsizei Width, Height;
13239};
13240# 1124 "../../src/mesa/main/mtypes.h"
13241struct gl_stencil_attrib
13242{
13243 GLboolean Enabled;
13244 GLboolean TestTwoSide;
13245 GLubyte ActiveFace;
13246 GLboolean _Enabled;
13247 GLboolean _TestTwoSide;
13248 GLubyte _BackFace;
13249 GLenum Function[3];
13250 GLenum FailFunc[3];
13251 GLenum ZPassFunc[3];
13252 GLenum ZFailFunc[3];
13253 GLint Ref[3];
13254 GLuint ValueMask[3];
13255 GLuint WriteMask[3];
13256 GLuint Clear;
13257};
13258
13259
13260
13261
13262
13263
13264
13265typedef enum
13266{
13267 TEXTURE_BUFFER_INDEX,
13268 TEXTURE_2D_ARRAY_INDEX,
13269 TEXTURE_1D_ARRAY_INDEX,
13270 TEXTURE_CUBE_INDEX,
13271 TEXTURE_3D_INDEX,
13272 TEXTURE_RECT_INDEX,
13273 TEXTURE_2D_INDEX,
13274 TEXTURE_1D_INDEX,
13275 NUM_TEXTURE_TARGETS
13276} gl_texture_index;
13277# 1230 "../../src/mesa/main/mtypes.h"
13278typedef void (*FetchTexelFuncC)( const struct gl_texture_image *texImage,
13279 GLint col, GLint row, GLint img,
13280 GLchan *texelOut );
13281
13282
13283
13284
13285
13286
13287typedef void (*FetchTexelFuncF)( const struct gl_texture_image *texImage,
13288 GLint col, GLint row, GLint img,
13289 GLfloat *texelOut );
13290
13291
13292typedef void (*StoreTexelFunc)(struct gl_texture_image *texImage,
13293 GLint col, GLint row, GLint img,
13294 const void *texel);
13295
13296
13297
13298
13299
13300
13301struct gl_texture_image
13302{
13303 GLint InternalFormat;
13304 GLenum _BaseFormat;
13305
13306
13307
13308
13309
13310 gl_format TexFormat;
13311
13312 GLuint Border;
13313 GLuint Width;
13314 GLuint Height;
13315 GLuint Depth;
13316 GLuint Width2;
13317 GLuint Height2;
13318 GLuint Depth2;
13319 GLuint WidthLog2;
13320 GLuint HeightLog2;
13321 GLuint DepthLog2;
13322 GLuint MaxLog2;
13323 GLfloat WidthScale;
13324 GLfloat HeightScale;
13325 GLfloat DepthScale;
13326 GLboolean IsClientData;
13327 GLboolean _IsPowerOfTwo;
13328
13329 struct gl_texture_object *TexObject;
13330
13331 FetchTexelFuncC FetchTexelc;
13332 FetchTexelFuncF FetchTexelf;
13333
13334 GLuint RowStride;
13335 GLuint *ImageOffsets;
13336
13337 GLvoid *Data;
13338
13339
13340
13341
13342
13343 void *DriverData;
13344
13345};
13346
13347
13348
13349
13350
13351typedef enum
13352{
13353 FACE_POS_X = 0,
13354 FACE_NEG_X = 1,
13355 FACE_POS_Y = 2,
13356 FACE_NEG_Y = 3,
13357 FACE_POS_Z = 4,
13358 FACE_NEG_Z = 5,
13359 MAX_FACES = 6
13360} gl_face_index;
13361
13362
13363
13364
13365
13366
13367struct gl_sampler_object
13368{
13369 GLuint Name;
13370 GLint RefCount;
13371
13372 GLenum WrapS;
13373 GLenum WrapT;
13374 GLenum WrapR;
13375 GLenum MinFilter;
13376 GLenum MagFilter;
13377 union {
13378 GLfloat f[4];
13379 GLuint ui[4];
13380 GLint i[4];
13381 } BorderColor;
13382 GLfloat MinLod;
13383 GLfloat MaxLod;
13384 GLfloat LodBias;
13385 GLfloat MaxAnisotropy;
13386 GLenum CompareMode;
13387 GLenum CompareFunc;
13388 GLfloat CompareFailValue;
13389 GLenum sRGBDecode;
13390 GLboolean CubeMapSeamless;
13391
13392
13393 GLenum DepthMode;
13394
13395
13396 GLboolean _CompleteTexture;
13397};
13398
13399
13400
13401
13402
13403
13404
13405struct gl_texture_object
13406{
13407 _glthread_Mutex Mutex;
13408 GLint RefCount;
13409 GLuint Name;
13410 GLenum Target;
13411
13412 struct gl_sampler_object Sampler;
13413
13414 GLfloat Priority;
13415 GLint BaseLevel;
13416 GLint MaxLevel;
13417 GLint _MaxLevel;
13418 GLfloat _MaxLambda;
13419 GLint CropRect[4];
13420 GLenum Swizzle[4];
13421 GLuint _Swizzle;
13422 GLboolean GenerateMipmap;
13423 GLboolean _Complete;
13424 GLboolean _RenderToTexture;
13425 GLboolean Purgeable;
13426
13427
13428 struct gl_texture_image *Image[MAX_FACES][15];
13429
13430
13431 struct gl_buffer_object *BufferObject;
13432 GLenum BufferObjectFormat;
13433
13434
13435 struct gl_color_table Palette;
13436# 1396 "../../src/mesa/main/mtypes.h"
13437 void *DriverData;
13438};
13439# 1407 "../../src/mesa/main/mtypes.h"
13440struct gl_tex_env_combine_state
13441{
13442 GLenum ModeRGB;
13443 GLenum ModeA;
13444
13445 GLenum SourceRGB[4];
13446 GLenum SourceA[4];
13447
13448 GLenum OperandRGB[4];
13449 GLenum OperandA[4];
13450 GLuint ScaleShiftRGB;
13451 GLuint ScaleShiftA;
13452 GLuint _NumArgsRGB;
13453 GLuint _NumArgsA;
13454};
13455
13456
13457
13458
13459
13460struct gl_texgen
13461{
13462 GLenum Mode;
13463 GLbitfield _ModeBit;
13464 GLfloat ObjectPlane[4];
13465 GLfloat EyePlane[4];
13466};
13467
13468
13469
13470
13471
13472
13473struct gl_texture_unit
13474{
13475 GLbitfield Enabled;
13476 GLbitfield _ReallyEnabled;
13477
13478 GLenum EnvMode;
13479 GLclampf EnvColor[4];
13480 GLfloat EnvColorUnclamped[4];
13481
13482 struct gl_texgen GenS;
13483 struct gl_texgen GenT;
13484 struct gl_texgen GenR;
13485 struct gl_texgen GenQ;
13486 GLbitfield TexGenEnabled;
13487 GLbitfield _GenFlags;
13488
13489 GLfloat LodBias;
13490 GLenum BumpTarget;
13491 GLfloat RotMatrix[4];
13492
13493
13494 struct gl_sampler_object *Sampler;
13495
13496
13497
13498
13499 struct gl_tex_env_combine_state Combine;
13500
13501
13502
13503
13504
13505 struct gl_tex_env_combine_state _EnvMode;
13506
13507
13508
13509
13510
13511 struct gl_tex_env_combine_state *_CurrentCombine;
13512
13513
13514 struct gl_texture_object *CurrentTex[NUM_TEXTURE_TARGETS];
13515
13516
13517 struct gl_texture_object *_Current;
13518};
13519
13520
13521
13522
13523
13524struct gl_texture_attrib
13525{
13526 GLuint CurrentUnit;
13527 struct gl_texture_unit Unit[(16 + 16)];
13528
13529 struct gl_texture_object *ProxyTex[NUM_TEXTURE_TARGETS];
13530
13531
13532 struct gl_buffer_object *BufferObject;
13533
13534
13535 GLboolean CubeMapSeamless;
13536
13537
13538 GLboolean SharedPalette;
13539 struct gl_color_table Palette;
13540
13541
13542 GLbitfield _EnabledUnits;
13543
13544
13545 GLbitfield _EnabledCoordUnits;
13546
13547
13548 GLbitfield _TexGenEnabled;
13549
13550
13551 GLbitfield _TexMatEnabled;
13552
13553
13554 GLbitfield _GenFlags;
13555};
13556
13557
13558
13559
13560
13561struct gl_transform_attrib
13562{
13563 GLenum MatrixMode;
13564 GLfloat EyeUserPlane[6][4];
13565 GLfloat _ClipUserPlane[6][4];
13566 GLbitfield ClipPlanesEnabled;
13567 GLboolean Normalize;
13568 GLboolean RescaleNormals;
13569 GLboolean RasterPositionUnclipped;
13570 GLboolean DepthClamp;
13571
13572 GLfloat CullEyePos[4];
13573 GLfloat CullObjPos[4];
13574};
13575
13576
13577
13578
13579
13580struct gl_viewport_attrib
13581{
13582 GLint X, Y;
13583 GLsizei Width, Height;
13584 GLfloat Near, Far;
13585 GLmatrix _WindowMap;
13586};
13587
13588
13589
13590
13591
13592struct gl_buffer_object
13593{
13594 _glthread_Mutex Mutex;
13595 GLint RefCount;
13596 GLuint Name;
13597 GLenum Usage;
13598 GLsizeiptrARB Size;
13599 GLubyte *Data;
13600
13601
13602 GLbitfield AccessFlags;
13603 GLvoid *Pointer;
13604 GLintptr Offset;
13605 GLsizeiptr Length;
13606
13607 GLboolean Written;
13608 GLboolean Purgeable;
13609};
13610
13611
13612
13613
13614
13615struct gl_pixelstore_attrib
13616{
13617 GLint Alignment;
13618 GLint RowLength;
13619 GLint SkipPixels;
13620 GLint SkipRows;
13621 GLint ImageHeight;
13622 GLint SkipImages;
13623 GLboolean SwapBytes;
13624 GLboolean LsbFirst;
13625 GLboolean ClientStorage;
13626 GLboolean Invert;
13627 struct gl_buffer_object *BufferObj;
13628};
13629
13630
13631
13632
13633
13634struct gl_client_array
13635{
13636 GLint Size;
13637 GLenum Type;
13638 GLenum Format;
13639 GLsizei Stride;
13640 GLsizei StrideB;
13641 const GLubyte *Ptr;
13642 GLboolean Enabled;
13643 GLboolean Normalized;
13644 GLboolean Integer;
13645 GLuint InstanceDivisor;
13646 GLuint _ElementSize;
13647
13648 struct gl_buffer_object *BufferObj;
13649 GLuint _MaxElement;
13650};
13651
13652
13653
13654
13655
13656
13657struct gl_array_object
13658{
13659
13660 GLuint Name;
13661
13662 GLint RefCount;
13663 _glthread_Mutex Mutex;
13664 GLboolean VBOonly;
13665
13666
13667
13668 struct gl_client_array Vertex;
13669 struct gl_client_array Weight;
13670 struct gl_client_array Normal;
13671 struct gl_client_array Color;
13672 struct gl_client_array SecondaryColor;
13673 struct gl_client_array FogCoord;
13674 struct gl_client_array Index;
13675 struct gl_client_array EdgeFlag;
13676 struct gl_client_array TexCoord[8];
13677 struct gl_client_array PointSize;
13678# 1653 "../../src/mesa/main/mtypes.h"
13679 struct gl_client_array VertexAttrib[16];
13680
13681
13682 GLbitfield _Enabled;
13683
13684
13685
13686
13687
13688 GLuint _MaxElement;
13689};
13690
13691
13692
13693
13694
13695struct gl_array_attrib
13696{
13697
13698 struct gl_array_object *ArrayObj;
13699
13700
13701 struct gl_array_object *DefaultArrayObj;
13702
13703
13704 struct _mesa_HashTable *Objects;
13705
13706 GLint ActiveTexture;
13707 GLuint LockFirst;
13708 GLuint LockCount;
13709
13710
13711 GLboolean PrimitiveRestart;
13712 GLuint RestartIndex;
13713
13714 GLbitfield NewState;
13715 GLboolean RebindArrays;
13716
13717
13718 struct gl_buffer_object *ArrayBufferObj;
13719 struct gl_buffer_object *ElementArrayBufferObj;
13720};
13721
13722
13723
13724
13725
13726struct gl_feedback
13727{
13728 GLenum Type;
13729 GLbitfield _Mask;
13730 GLfloat *Buffer;
13731 GLuint BufferSize;
13732 GLuint Count;
13733};
13734
13735
13736
13737
13738
13739struct gl_selection
13740{
13741 GLuint *Buffer;
13742 GLuint BufferSize;
13743 GLuint BufferCount;
13744 GLuint Hits;
13745 GLuint NameStackDepth;
13746 GLuint NameStack[64];
13747 GLboolean HitFlag;
13748 GLfloat HitMinZ;
13749 GLfloat HitMaxZ;
13750};
13751
13752
13753
13754
13755
13756struct gl_1d_map
13757{
13758 GLuint Order;
13759 GLfloat u1, u2, du;
13760 GLfloat *Points;
13761};
13762
13763
13764
13765
13766
13767struct gl_2d_map
13768{
13769 GLuint Uorder;
13770 GLuint Vorder;
13771 GLfloat u1, u2, du;
13772 GLfloat v1, v2, dv;
13773 GLfloat *Points;
13774};
13775
13776
13777
13778
13779
13780struct gl_evaluators
13781{
13782
13783
13784
13785
13786 struct gl_1d_map Map1Vertex3;
13787 struct gl_1d_map Map1Vertex4;
13788 struct gl_1d_map Map1Index;
13789 struct gl_1d_map Map1Color4;
13790 struct gl_1d_map Map1Normal;
13791 struct gl_1d_map Map1Texture1;
13792 struct gl_1d_map Map1Texture2;
13793 struct gl_1d_map Map1Texture3;
13794 struct gl_1d_map Map1Texture4;
13795 struct gl_1d_map Map1Attrib[16];
13796
13797
13798
13799
13800
13801
13802 struct gl_2d_map Map2Vertex3;
13803 struct gl_2d_map Map2Vertex4;
13804 struct gl_2d_map Map2Index;
13805 struct gl_2d_map Map2Color4;
13806 struct gl_2d_map Map2Normal;
13807 struct gl_2d_map Map2Texture1;
13808 struct gl_2d_map Map2Texture2;
13809 struct gl_2d_map Map2Texture3;
13810 struct gl_2d_map Map2Texture4;
13811 struct gl_2d_map Map2Attrib[16];
13812
13813};
13814# 1801 "../../src/mesa/main/mtypes.h"
13815typedef enum
13816{
13817 PROGRAM_TEMPORARY,
13818 PROGRAM_INPUT,
13819 PROGRAM_OUTPUT,
13820 PROGRAM_VARYING,
13821 PROGRAM_LOCAL_PARAM,
13822 PROGRAM_ENV_PARAM,
13823 PROGRAM_STATE_VAR,
13824 PROGRAM_NAMED_PARAM,
13825 PROGRAM_CONSTANT,
13826 PROGRAM_UNIFORM,
13827 PROGRAM_WRITE_ONLY,
13828 PROGRAM_ADDRESS,
13829 PROGRAM_SAMPLER,
13830 PROGRAM_SYSTEM_VALUE,
13831 PROGRAM_UNDEFINED,
13832 PROGRAM_FILE_MAX
13833} gl_register_file;
13834
13835
13836
13837
13838
13839
13840typedef enum
13841{
13842 SYSTEM_VALUE_FRONT_FACE,
13843 SYSTEM_VALUE_INSTANCE_ID,
13844 SYSTEM_VALUE_MAX
13845} gl_system_value;
13846
13847
13848
13849struct prog_instruction;
13850struct gl_program_parameter_list;
13851struct gl_uniform_list;
13852
13853
13854
13855
13856
13857struct gl_program
13858{
13859 GLuint Id;
13860 GLubyte *String;
13861 GLint RefCount;
13862 GLenum Target;
13863 GLenum Format;
13864 GLboolean Resident;
13865
13866 struct prog_instruction *Instructions;
13867
13868 GLbitfield InputsRead;
13869 GLbitfield64 OutputsWritten;
13870 GLbitfield SystemValuesRead;
13871 GLbitfield InputFlags[32];
13872 GLbitfield OutputFlags[64];
13873 GLbitfield TexturesUsed[((8 > 16) ? 8 : 16)];
13874 GLbitfield SamplersUsed;
13875 GLbitfield ShadowSamplers;
13876
13877
13878
13879 struct gl_program_parameter_list *Parameters;
13880
13881 GLfloat LocalParams[1024][4];
13882
13883
13884 struct gl_program_parameter_list *Varying;
13885
13886 struct gl_program_parameter_list *Attributes;
13887
13888
13889 GLubyte SamplerUnits[16];
13890
13891 gl_texture_index SamplerTargets[16];
13892
13893
13894
13895
13896 GLbitfield IndirectRegisterFiles;
13897
13898
13899
13900 GLuint NumInstructions;
13901 GLuint NumTemporaries;
13902 GLuint NumParameters;
13903 GLuint NumAttributes;
13904 GLuint NumAddressRegs;
13905 GLuint NumAluInstructions;
13906 GLuint NumTexInstructions;
13907 GLuint NumTexIndirections;
13908
13909
13910
13911 GLuint NumNativeInstructions;
13912 GLuint NumNativeTemporaries;
13913 GLuint NumNativeParameters;
13914 GLuint NumNativeAttributes;
13915 GLuint NumNativeAddressRegs;
13916 GLuint NumNativeAluInstructions;
13917 GLuint NumNativeTexInstructions;
13918 GLuint NumNativeTexIndirections;
13919
13920};
13921
13922
13923
13924struct gl_vertex_program
13925{
13926 struct gl_program Base;
13927 GLboolean IsNVProgram;
13928 GLboolean IsPositionInvariant;
13929};
13930
13931
13932
13933struct gl_geometry_program
13934{
13935 struct gl_program Base;
13936
13937 GLint VerticesOut;
13938 GLenum InputType;
13939
13940 GLenum OutputType;
13941};
13942
13943
13944
13945struct gl_fragment_program
13946{
13947 struct gl_program Base;
13948 GLboolean UsesKill;
13949 GLboolean OriginUpperLeft;
13950 GLboolean PixelCenterInteger;
13951 enum gl_frag_depth_layout FragDepthLayout;
13952};
13953
13954
13955
13956
13957
13958struct gl_program_state
13959{
13960 GLint ErrorPos;
13961 const char *ErrorString;
13962};
13963
13964
13965
13966
13967
13968struct gl_vertex_program_state
13969{
13970 GLboolean Enabled;
13971 GLboolean _Enabled;
13972 GLboolean PointSizeEnabled;
13973 GLboolean TwoSideEnabled;
13974 struct gl_vertex_program *Current;
13975
13976
13977
13978
13979
13980 struct gl_vertex_program *_Current;
13981
13982 GLfloat Parameters[256][4];
13983
13984
13985 GLenum TrackMatrix[256 / 4];
13986 GLenum TrackMatrixTransform[256 / 4];
13987
13988
13989 GLboolean _MaintainTnlProgram;
13990
13991
13992 struct gl_vertex_program *_TnlProgram;
13993
13994
13995 struct gl_program_cache *Cache;
13996
13997 GLboolean _Overriden;
13998};
13999
14000
14001
14002
14003
14004struct gl_geometry_program_state
14005{
14006 GLboolean Enabled;
14007 GLboolean _Enabled;
14008 struct gl_geometry_program *Current;
14009
14010
14011
14012
14013 struct gl_geometry_program *_Current;
14014
14015 GLfloat Parameters[256][4];
14016
14017
14018 struct gl_program_cache *Cache;
14019};
14020
14021
14022
14023
14024struct gl_fragment_program_state
14025{
14026 GLboolean Enabled;
14027 GLboolean _Enabled;
14028 struct gl_fragment_program *Current;
14029
14030
14031
14032
14033
14034 struct gl_fragment_program *_Current;
14035
14036 GLfloat Parameters[256][4];
14037
14038
14039 GLboolean _MaintainTexEnvProgram;
14040
14041
14042 struct gl_fragment_program *_TexEnvProgram;
14043
14044
14045 struct gl_program_cache *Cache;
14046};
14047# 2041 "../../src/mesa/main/mtypes.h"
14048struct atifs_instruction;
14049struct atifs_setupinst;
14050
14051
14052
14053
14054struct ati_fragment_shader
14055{
14056 GLuint Id;
14057 GLint RefCount;
14058 struct atifs_instruction *Instructions[2];
14059 struct atifs_setupinst *SetupInst[2];
14060 GLfloat Constants[8][4];
14061 GLbitfield LocalConstDef;
14062 GLubyte numArithInstr[2];
14063 GLubyte regsAssigned[2];
14064 GLubyte NumPasses;
14065 GLubyte cur_pass;
14066 GLubyte last_optype;
14067 GLboolean interpinp1;
14068 GLboolean isValid;
14069 GLuint swizzlerq;
14070};
14071
14072
14073
14074
14075struct gl_ati_fragment_shader_state
14076{
14077 GLboolean Enabled;
14078 GLboolean _Enabled;
14079 GLboolean Compiling;
14080 GLfloat GlobalConstants[8][4];
14081 struct ati_fragment_shader *Current;
14082};
14083
14084
14085
14086
14087
14088struct gl_query_object
14089{
14090 GLenum Target;
14091 GLuint Id;
14092 GLuint64EXT Result;
14093 GLboolean Active;
14094 GLboolean Ready;
14095};
14096
14097
14098
14099
14100
14101struct gl_query_state
14102{
14103 struct _mesa_HashTable *QueryObjects;
14104 struct gl_query_object *CurrentOcclusionObject;
14105 struct gl_query_object *CurrentTimerObject;
14106
14107
14108 struct gl_query_object *CondRenderQuery;
14109
14110
14111 struct gl_query_object *PrimitivesGenerated;
14112 struct gl_query_object *PrimitivesWritten;
14113
14114
14115 struct gl_query_object *TimeElapsed;
14116
14117 GLenum CondRenderMode;
14118};
14119
14120
14121
14122struct gl_sync_object {
14123 struct simple_node link;
14124 GLenum Type;
14125 GLuint Name;
14126 GLint RefCount;
14127 GLboolean DeletePending;
14128
14129
14130 GLenum SyncCondition;
14131 GLbitfield Flags;
14132 GLuint StatusFlag:1;
14133};
14134
14135
14136
14137struct gl_sl_pragmas
14138{
14139 GLboolean IgnoreOptimize;
14140 GLboolean IgnoreDebug;
14141 GLboolean Optimize;
14142 GLboolean Debug;
14143};
14144
14145
14146
14147
14148
14149struct gl_shader
14150{
14151 GLenum Type;
14152 GLuint Name;
14153 GLint RefCount;
14154 GLboolean DeletePending;
14155 GLboolean CompileStatus;
14156 const GLchar *Source;
14157 GLuint SourceChecksum;
14158 struct gl_program *Program;
14159 GLchar *InfoLog;
14160 struct gl_sl_pragmas Pragmas;
14161
14162 unsigned Version;
14163
14164 struct exec_list *ir;
14165 struct glsl_symbol_table *symbols;
14166
14167
14168 struct gl_shader *builtins_to_link[16];
14169 unsigned num_builtins_to_link;
14170};
14171
14172
14173
14174
14175
14176
14177struct gl_shader_program
14178{
14179 GLenum Type;
14180 GLuint Name;
14181 GLint RefCount;
14182 GLboolean DeletePending;
14183
14184 GLuint NumShaders;
14185 struct gl_shader **Shaders;
14186
14187
14188 struct gl_program_parameter_list *Attributes;
14189
14190
14191 struct {
14192 GLenum BufferMode;
14193 GLuint NumVarying;
14194 GLchar **VaryingNames;
14195 } TransformFeedback;
14196
14197
14198 struct {
14199 GLint VerticesOut;
14200 GLenum InputType;
14201
14202 GLenum OutputType;
14203 } Geom;
14204
14205
14206 struct gl_vertex_program *VertexProgram;
14207 struct gl_fragment_program *FragmentProgram;
14208 struct gl_geometry_program *GeometryProgram;
14209 struct gl_uniform_list *Uniforms;
14210 struct gl_program_parameter_list *Varying;
14211 GLboolean LinkStatus;
14212 GLboolean Validated;
14213 GLboolean _Used;
14214 GLchar *InfoLog;
14215
14216 unsigned Version;
14217# 2218 "../../src/mesa/main/mtypes.h"
14218 struct gl_shader *_LinkedShaders[MESA_SHADER_TYPES];
14219};
14220# 2235 "../../src/mesa/main/mtypes.h"
14221struct gl_shader_state
14222{
14223
14224
14225
14226
14227
14228
14229
14230 struct gl_shader_program *CurrentVertexProgram;
14231 struct gl_shader_program *CurrentGeometryProgram;
14232 struct gl_shader_program *CurrentFragmentProgram;
14233
14234
14235
14236
14237
14238
14239 struct gl_shader_program *ActiveProgram;
14240
14241 void *MemPool;
14242
14243 GLbitfield Flags;
14244};
14245
14246
14247
14248
14249struct gl_shader_compiler_options
14250{
14251
14252 GLboolean EmitCondCodes;
14253 GLboolean EmitNVTempInitialization;
14254
14255
14256
14257
14258 GLboolean EmitNoIfs;
14259 GLboolean EmitNoLoops;
14260 GLboolean EmitNoFunctions;
14261 GLboolean EmitNoCont;
14262 GLboolean EmitNoMainReturn;
14263 GLboolean EmitNoNoise;
14264 GLboolean EmitNoPow;
14265
14266
14267
14268
14269
14270 GLboolean EmitNoIndirectInput;
14271 GLboolean EmitNoIndirectOutput;
14272 GLboolean EmitNoIndirectTemp;
14273 GLboolean EmitNoIndirectUniform;
14274
14275
14276 GLuint MaxUnrollIterations;
14277
14278 struct gl_sl_pragmas DefaultPragmas;
14279};
14280
14281
14282
14283
14284struct gl_transform_feedback_object
14285{
14286 GLuint Name;
14287 GLint RefCount;
14288 GLboolean Active;
14289 GLboolean Paused;
14290
14291
14292 GLuint BufferNames[32];
14293 struct gl_buffer_object *Buffers[32];
14294
14295
14296 GLintptr Offset[32];
14297
14298 GLsizeiptr Size[32];
14299};
14300
14301
14302
14303
14304
14305struct gl_transform_feedback
14306{
14307 GLenum Mode;
14308
14309 GLboolean RasterDiscard;
14310
14311
14312 struct gl_buffer_object *CurrentBuffer;
14313
14314
14315 struct _mesa_HashTable *Objects;
14316
14317
14318 struct gl_transform_feedback_object *CurrentObject;
14319
14320
14321 struct gl_transform_feedback_object *DefaultObject;
14322};
14323
14324
14325
14326
14327
14328
14329struct gl_shared_state
14330{
14331 _glthread_Mutex Mutex;
14332 GLint RefCount;
14333 struct _mesa_HashTable *DisplayList;
14334 struct _mesa_HashTable *TexObjects;
14335
14336
14337 struct gl_texture_object *DefaultTex[NUM_TEXTURE_TARGETS];
14338
14339
14340 struct gl_texture_object *FallbackTex;
14341# 2363 "../../src/mesa/main/mtypes.h"
14342 _glthread_Mutex TexMutex;
14343 GLuint TextureStateStamp;
14344
14345
14346
14347 struct gl_buffer_object *NullBufferObj;
14348
14349
14350
14351
14352
14353 struct _mesa_HashTable *Programs;
14354 struct gl_vertex_program *DefaultVertexProgram;
14355 struct gl_fragment_program *DefaultFragmentProgram;
14356 struct gl_geometry_program *DefaultGeometryProgram;
14357
14358
14359
14360 struct _mesa_HashTable *ATIShaders;
14361 struct ati_fragment_shader *DefaultFragmentShader;
14362
14363 struct _mesa_HashTable *BufferObjects;
14364
14365
14366 struct _mesa_HashTable *ShaderObjects;
14367
14368
14369 struct _mesa_HashTable *RenderBuffers;
14370 struct _mesa_HashTable *FrameBuffers;
14371
14372
14373 struct simple_node SyncObjects;
14374
14375
14376 struct _mesa_HashTable *SamplerObjects;
14377
14378 void *DriverData;
14379};
14380# 2414 "../../src/mesa/main/mtypes.h"
14381struct gl_renderbuffer
14382{
14383 _glthread_Mutex Mutex;
14384 GLuint ClassID;
14385 GLuint Name;
14386 GLint RefCount;
14387 GLuint Width, Height;
14388 GLint RowStride;
14389 GLboolean Purgeable;
14390
14391 GLboolean AttachedAnytime;
14392
14393 GLubyte NumSamples;
14394
14395 GLenum InternalFormat;
14396 GLenum _BaseFormat;
14397
14398 gl_format Format;
14399
14400 GLenum DataType;
14401 GLvoid *Data;
14402
14403
14404 struct gl_renderbuffer *Wrapped;
14405
14406
14407 void (*Delete)(struct gl_renderbuffer *rb);
14408
14409
14410 GLboolean (*AllocStorage)(struct gl_context *ctx, struct gl_renderbuffer *rb,
14411 GLenum internalFormat,
14412 GLuint width, GLuint height);
14413# 2456 "../../src/mesa/main/mtypes.h"
14414 void *(*GetPointer)(struct gl_context *ctx, struct gl_renderbuffer *rb,
14415 GLint x, GLint y);
14416
14417
14418
14419
14420 void (*GetRow)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count,
14421 GLint x, GLint y, void *values);
14422
14423
14424
14425
14426 void (*GetValues)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count,
14427 const GLint x[], const GLint y[], void *values);
14428
14429
14430
14431
14432 void (*PutRow)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count,
14433 GLint x, GLint y, const void *values, const GLubyte *mask);
14434
14435
14436
14437
14438
14439
14440 void (*PutRowRGB)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count,
14441 GLint x, GLint y, const void *values, const GLubyte *mask);
14442
14443
14444
14445
14446
14447 void (*PutMonoRow)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count,
14448 GLint x, GLint y, const void *value, const GLubyte *mask);
14449
14450
14451
14452
14453 void (*PutValues)(struct gl_context *ctx, struct gl_renderbuffer *rb, GLuint count,
14454 const GLint x[], const GLint y[], const void *values,
14455 const GLubyte *mask);
14456
14457
14458
14459 void (*PutMonoValues)(struct gl_context *ctx, struct gl_renderbuffer *rb,
14460 GLuint count, const GLint x[], const GLint y[],
14461 const void *value, const GLubyte *mask);
14462};
14463
14464
14465
14466
14467
14468
14469struct gl_renderbuffer_attachment
14470{
14471 GLenum Type;
14472 GLboolean Complete;
14473
14474
14475
14476
14477
14478 struct gl_renderbuffer *Renderbuffer;
14479
14480
14481
14482
14483
14484 struct gl_texture_object *Texture;
14485 GLuint TextureLevel;
14486 GLuint CubeMapFace;
14487 GLuint Zoffset;
14488
14489};
14490
14491
14492
14493
14494
14495
14496
14497struct gl_framebuffer
14498{
14499 _glthread_Mutex Mutex;
14500
14501
14502
14503
14504
14505
14506
14507 GLuint Name;
14508
14509 GLint RefCount;
14510 GLboolean DeletePending;
14511
14512
14513
14514
14515
14516 struct gl_config Visual;
14517
14518 GLboolean Initialized;
14519
14520 GLuint Width, Height;
14521
14522
14523
14524 GLint _Xmin, _Xmax;
14525 GLint _Ymin, _Ymax;
14526
14527
14528
14529
14530 GLuint _DepthMax;
14531 GLfloat _DepthMaxF;
14532 GLfloat _MRD;
14533
14534
14535
14536 GLenum _Status;
14537
14538
14539 GLboolean _IntegerColor;
14540
14541
14542 struct gl_renderbuffer_attachment Attachment[BUFFER_COUNT];
14543
14544
14545
14546
14547 GLenum ColorDrawBuffer[8];
14548 GLenum ColorReadBuffer;
14549
14550
14551 GLuint _NumColorDrawBuffers;
14552 GLint _ColorDrawBufferIndexes[8];
14553 GLint _ColorReadBufferIndex;
14554 struct gl_renderbuffer *_ColorDrawBuffers[8];
14555 struct gl_renderbuffer *_ColorReadBuffer;
14556
14557
14558
14559 struct gl_renderbuffer *_DepthBuffer;
14560 struct gl_renderbuffer *_StencilBuffer;
14561
14562
14563 void (*Delete)(struct gl_framebuffer *fb);
14564};
14565
14566
14567
14568
14569
14570struct gl_precision
14571{
14572 GLushort RangeMin;
14573 GLushort RangeMax;
14574 GLushort Precision;
14575};
14576
14577
14578
14579
14580
14581struct gl_program_constants
14582{
14583
14584 GLuint MaxInstructions;
14585 GLuint MaxAluInstructions;
14586 GLuint MaxTexInstructions;
14587 GLuint MaxTexIndirections;
14588 GLuint MaxAttribs;
14589 GLuint MaxTemps;
14590 GLuint MaxAddressRegs;
14591 GLuint MaxAddressOffset;
14592 GLuint MaxParameters;
14593 GLuint MaxLocalParams;
14594 GLuint MaxEnvParams;
14595
14596 GLuint MaxNativeInstructions;
14597 GLuint MaxNativeAluInstructions;
14598 GLuint MaxNativeTexInstructions;
14599 GLuint MaxNativeTexIndirections;
14600 GLuint MaxNativeAttribs;
14601 GLuint MaxNativeTemps;
14602 GLuint MaxNativeAddressRegs;
14603 GLuint MaxNativeParameters;
14604
14605 GLuint MaxUniformComponents;
14606
14607 struct gl_precision LowFloat, MediumFloat, HighFloat;
14608 struct gl_precision LowInt, MediumInt, HighInt;
14609};
14610
14611
14612
14613
14614
14615
14616struct gl_constants
14617{
14618 GLint MaxTextureMbytes;
14619 GLint MaxTextureLevels;
14620 GLint Max3DTextureLevels;
14621 GLint MaxCubeTextureLevels;
14622 GLint MaxArrayTextureLayers;
14623 GLint MaxTextureRectSize;
14624 GLuint MaxTextureCoordUnits;
14625 GLuint MaxTextureImageUnits;
14626 GLuint MaxVertexTextureImageUnits;
14627 GLuint MaxCombinedTextureImageUnits;
14628 GLuint MaxGeometryTextureImageUnits;
14629 GLuint MaxTextureUnits;
14630 GLfloat MaxTextureMaxAnisotropy;
14631 GLfloat MaxTextureLodBias;
14632 GLuint MaxTextureBufferSize;
14633
14634 GLuint MaxArrayLockSize;
14635
14636 GLint SubPixelBits;
14637
14638 GLfloat MinPointSize, MaxPointSize;
14639 GLfloat MinPointSizeAA, MaxPointSizeAA;
14640 GLfloat PointSizeGranularity;
14641 GLfloat MinLineWidth, MaxLineWidth;
14642 GLfloat MinLineWidthAA, MaxLineWidthAA;
14643 GLfloat LineWidthGranularity;
14644
14645 GLuint MaxColorTableSize;
14646
14647 GLuint MaxClipPlanes;
14648 GLuint MaxLights;
14649 GLfloat MaxShininess;
14650 GLfloat MaxSpotExponent;
14651
14652 GLuint MaxViewportWidth, MaxViewportHeight;
14653
14654 struct gl_program_constants VertexProgram;
14655 struct gl_program_constants FragmentProgram;
14656 struct gl_program_constants GeometryProgram;
14657 GLuint MaxProgramMatrices;
14658 GLuint MaxProgramMatrixStackDepth;
14659
14660
14661 GLboolean CheckArrayBounds;
14662
14663 GLuint MaxDrawBuffers;
14664
14665 GLuint MaxColorAttachments;
14666 GLuint MaxRenderbufferSize;
14667 GLuint MaxSamples;
14668
14669
14670 GLuint MaxVarying;
14671 GLuint MaxVertexVaryingComponents;
14672 GLuint MaxGeometryVaryingComponents;
14673
14674
14675 GLuint MaxGeometryOutputVertices;
14676 GLuint MaxGeometryTotalOutputComponents;
14677
14678 GLuint GLSLVersion;
14679
14680
14681 GLbitfield SupportedBumpUnits;
14682
14683
14684
14685
14686 GLuint64 MaxServerWaitTimeout;
14687
14688
14689 GLboolean QuadsFollowProvokingVertexConvention;
14690
14691
14692 GLbitfield ContextFlags;
14693
14694
14695 GLbitfield ProfileMask;
14696
14697
14698 GLuint MaxTransformFeedbackSeparateAttribs;
14699 GLuint MaxTransformFeedbackSeparateComponents;
14700 GLuint MaxTransformFeedbackInterleavedComponents;
14701
14702
14703 GLint MinProgramTexelOffset, MaxProgramTexelOffset;
14704
14705
14706 GLboolean sRGBCapable;
14707
14708
14709 GLenum ResetStrategy;
14710};
14711
14712
14713
14714
14715
14716
14717struct gl_extensions
14718{
14719 GLboolean dummy;
14720 GLboolean dummy_true;
14721 GLboolean dummy_false;
14722 GLboolean ARB_ES2_compatibility;
14723 GLboolean ARB_blend_func_extended;
14724 GLboolean ARB_color_buffer_float;
14725 GLboolean ARB_copy_buffer;
14726 GLboolean ARB_depth_buffer_float;
14727 GLboolean ARB_depth_clamp;
14728 GLboolean ARB_depth_texture;
14729 GLboolean ARB_draw_buffers;
14730 GLboolean ARB_draw_buffers_blend;
14731 GLboolean ARB_draw_elements_base_vertex;
14732 GLboolean ARB_draw_instanced;
14733 GLboolean ARB_fragment_coord_conventions;
14734 GLboolean ARB_fragment_program;
14735 GLboolean ARB_fragment_program_shadow;
14736 GLboolean ARB_fragment_shader;
14737 GLboolean ARB_framebuffer_object;
14738 GLboolean ARB_explicit_attrib_location;
14739 GLboolean ARB_geometry_shader4;
14740 GLboolean ARB_half_float_pixel;
14741 GLboolean ARB_half_float_vertex;
14742 GLboolean ARB_instanced_arrays;
14743 GLboolean ARB_map_buffer_range;
14744 GLboolean ARB_multisample;
14745 GLboolean ARB_multitexture;
14746 GLboolean ARB_occlusion_query;
14747 GLboolean ARB_occlusion_query2;
14748 GLboolean ARB_point_sprite;
14749 GLboolean ARB_sampler_objects;
14750 GLboolean ARB_seamless_cube_map;
14751 GLboolean ARB_shader_objects;
14752 GLboolean ARB_shader_stencil_export;
14753 GLboolean ARB_shader_texture_lod;
14754 GLboolean ARB_shading_language_100;
14755 GLboolean ARB_shadow;
14756 GLboolean ARB_shadow_ambient;
14757 GLboolean ARB_sync;
14758 GLboolean ARB_texture_border_clamp;
14759 GLboolean ARB_texture_buffer_object;
14760 GLboolean ARB_texture_compression;
14761 GLboolean ARB_texture_compression_rgtc;
14762 GLboolean ARB_texture_cube_map;
14763 GLboolean ARB_texture_env_combine;
14764 GLboolean ARB_texture_env_crossbar;
14765 GLboolean ARB_texture_env_dot3;
14766 GLboolean ARB_texture_float;
14767 GLboolean ARB_texture_mirrored_repeat;
14768 GLboolean ARB_texture_multisample;
14769 GLboolean ARB_texture_non_power_of_two;
14770 GLboolean ARB_texture_rg;
14771 GLboolean ARB_texture_rgb10_a2ui;
14772 GLboolean ARB_timer_query;
14773 GLboolean ARB_transform_feedback2;
14774 GLboolean ARB_transpose_matrix;
14775 GLboolean ARB_uniform_buffer_object;
14776 GLboolean ARB_vertex_array_object;
14777 GLboolean ARB_vertex_buffer_object;
14778 GLboolean ARB_vertex_program;
14779 GLboolean ARB_vertex_shader;
14780 GLboolean ARB_vertex_type_2_10_10_10_rev;
14781 GLboolean ARB_window_pos;
14782 GLboolean EXT_abgr;
14783 GLboolean EXT_bgra;
14784 GLboolean EXT_blend_color;
14785 GLboolean EXT_blend_equation_separate;
14786 GLboolean EXT_blend_func_separate;
14787 GLboolean EXT_blend_logic_op;
14788 GLboolean EXT_blend_minmax;
14789 GLboolean EXT_blend_subtract;
14790 GLboolean EXT_clip_volume_hint;
14791 GLboolean EXT_compiled_vertex_array;
14792 GLboolean EXT_copy_texture;
14793 GLboolean EXT_depth_bounds_test;
14794 GLboolean EXT_draw_buffers2;
14795 GLboolean EXT_draw_range_elements;
14796 GLboolean EXT_fog_coord;
14797 GLboolean EXT_framebuffer_blit;
14798 GLboolean EXT_framebuffer_multisample;
14799 GLboolean EXT_framebuffer_object;
14800 GLboolean EXT_framebuffer_sRGB;
14801 GLboolean EXT_gpu_program_parameters;
14802 GLboolean EXT_gpu_shader4;
14803 GLboolean EXT_multi_draw_arrays;
14804 GLboolean EXT_paletted_texture;
14805 GLboolean EXT_packed_depth_stencil;
14806 GLboolean EXT_packed_float;
14807 GLboolean EXT_packed_pixels;
14808 GLboolean EXT_pixel_buffer_object;
14809 GLboolean EXT_point_parameters;
14810 GLboolean EXT_polygon_offset;
14811 GLboolean EXT_provoking_vertex;
14812 GLboolean EXT_rescale_normal;
14813 GLboolean EXT_shadow_funcs;
14814 GLboolean EXT_secondary_color;
14815 GLboolean EXT_separate_shader_objects;
14816 GLboolean EXT_separate_specular_color;
14817 GLboolean EXT_shared_texture_palette;
14818 GLboolean EXT_stencil_wrap;
14819 GLboolean EXT_stencil_two_side;
14820 GLboolean EXT_subtexture;
14821 GLboolean EXT_texture;
14822 GLboolean EXT_texture_object;
14823 GLboolean EXT_texture3D;
14824 GLboolean EXT_texture_array;
14825 GLboolean EXT_texture_compression_latc;
14826 GLboolean EXT_texture_compression_s3tc;
14827 GLboolean EXT_texture_env_add;
14828 GLboolean EXT_texture_env_combine;
14829 GLboolean EXT_texture_env_dot3;
14830 GLboolean EXT_texture_filter_anisotropic;
14831 GLboolean EXT_texture_integer;
14832 GLboolean EXT_texture_lod_bias;
14833 GLboolean EXT_texture_mirror_clamp;
14834 GLboolean EXT_texture_shared_exponent;
14835 GLboolean EXT_texture_snorm;
14836 GLboolean EXT_texture_sRGB;
14837 GLboolean EXT_texture_sRGB_decode;
14838 GLboolean EXT_texture_swizzle;
14839 GLboolean EXT_transform_feedback;
14840 GLboolean EXT_timer_query;
14841 GLboolean EXT_vertex_array;
14842 GLboolean EXT_vertex_array_bgra;
14843 GLboolean EXT_vertex_array_set;
14844 GLboolean OES_standard_derivatives;
14845
14846 GLboolean AMD_conservative_depth;
14847 GLboolean AMD_seamless_cubemap_per_texture;
14848 GLboolean APPLE_client_storage;
14849 GLboolean APPLE_packed_pixels;
14850 GLboolean APPLE_vertex_array_object;
14851 GLboolean APPLE_object_purgeable;
14852 GLboolean ATI_envmap_bumpmap;
14853 GLboolean ATI_texture_compression_3dc;
14854 GLboolean ATI_texture_mirror_once;
14855 GLboolean ATI_texture_env_combine3;
14856 GLboolean ATI_fragment_shader;
14857 GLboolean ATI_separate_stencil;
14858 GLboolean IBM_rasterpos_clip;
14859 GLboolean IBM_multimode_draw_arrays;
14860 GLboolean MESA_pack_invert;
14861 GLboolean MESA_resize_buffers;
14862 GLboolean MESA_ycbcr_texture;
14863 GLboolean MESA_texture_array;
14864 GLboolean NV_blend_square;
14865 GLboolean NV_conditional_render;
14866 GLboolean NV_fragment_program;
14867 GLboolean NV_fragment_program_option;
14868 GLboolean NV_light_max_exponent;
14869 GLboolean NV_point_sprite;
14870 GLboolean NV_primitive_restart;
14871 GLboolean NV_texture_barrier;
14872 GLboolean NV_texgen_reflection;
14873 GLboolean NV_texture_env_combine4;
14874 GLboolean NV_texture_rectangle;
14875 GLboolean NV_vertex_program;
14876 GLboolean NV_vertex_program1_1;
14877 GLboolean OES_read_format;
14878 GLboolean SGIS_generate_mipmap;
14879 GLboolean SGIS_texture_edge_clamp;
14880 GLboolean SGIS_texture_lod;
14881 GLboolean TDFX_texture_compression_FXT1;
14882 GLboolean S3_s3tc;
14883 GLboolean OES_EGL_image;
14884 GLboolean OES_draw_texture;
14885 GLboolean EXT_texture_format_BGRA8888;
14886 GLboolean extension_sentinel;
14887
14888 const GLubyte *String;
14889
14890 GLuint Count;
14891};
14892
14893
14894
14895
14896
14897struct gl_matrix_stack
14898{
14899 GLmatrix *Top;
14900 GLmatrix *Stack;
14901 GLuint Depth;
14902 GLuint MaxDepth;
14903 GLuint DirtyFlag;
14904};
14905# 3094 "../../src/mesa/main/mtypes.h"
14906# 1 "../../src/mesa/main/dd.h" 1
14907# 38 "../../src/mesa/main/dd.h"
14908struct gl_buffer_object;
14909struct gl_context;
14910struct gl_display_list;
14911struct gl_framebuffer;
14912struct gl_pixelstore_attrib;
14913struct gl_program;
14914struct gl_renderbuffer;
14915struct gl_renderbuffer_attachment;
14916struct gl_shader;
14917struct gl_shader_program;
14918struct gl_texture_image;
14919struct gl_texture_object;
14920# 79 "../../src/mesa/main/dd.h"
14921struct dd_function_table {
14922
14923
14924
14925
14926
14927 const GLubyte * (*GetString)( struct gl_context *ctx, GLenum name );
14928
14929
14930
14931
14932
14933
14934
14935 void (*UpdateState)( struct gl_context *ctx, GLbitfield new_state );
14936
14937
14938
14939
14940
14941
14942
14943 void (*GetBufferSize)( struct gl_framebuffer *buffer,
14944 GLuint *width, GLuint *height );
14945
14946
14947
14948
14949
14950 void (*ResizeBuffers)( struct gl_context *ctx, struct gl_framebuffer *fb,
14951 GLuint width, GLuint height);
14952
14953
14954
14955
14956
14957 void (*Error)( struct gl_context *ctx );
14958
14959
14960
14961
14962 void (*Finish)( struct gl_context *ctx );
14963
14964
14965
14966
14967 void (*Flush)( struct gl_context *ctx );
14968
14969
14970
14971
14972
14973
14974 void (*Clear)( struct gl_context *ctx, GLbitfield buffers );
14975
14976
14977
14978
14979 void (*Accum)( struct gl_context *ctx, GLenum op, GLfloat value );
14980
14981
14982
14983
14984
14985 void (*RasterPos)( struct gl_context *ctx, const GLfloat v[4] );
14986# 154 "../../src/mesa/main/dd.h"
14987 void (*DrawPixels)( struct gl_context *ctx,
14988 GLint x, GLint y, GLsizei width, GLsizei height,
14989 GLenum format, GLenum type,
14990 const struct gl_pixelstore_attrib *unpack,
14991 const GLvoid *pixels );
14992
14993
14994
14995
14996 void (*ReadPixels)( struct gl_context *ctx,
14997 GLint x, GLint y, GLsizei width, GLsizei height,
14998 GLenum format, GLenum type,
14999 const struct gl_pixelstore_attrib *unpack,
15000 GLvoid *dest );
15001
15002
15003
15004
15005 void (*CopyPixels)( struct gl_context *ctx, GLint srcx, GLint srcy,
15006 GLsizei width, GLsizei height,
15007 GLint dstx, GLint dsty, GLenum type );
15008
15009
15010
15011
15012 void (*Bitmap)( struct gl_context *ctx,
15013 GLint x, GLint y, GLsizei width, GLsizei height,
15014 const struct gl_pixelstore_attrib *unpack,
15015 const GLubyte *bitmap );
15016# 198 "../../src/mesa/main/dd.h"
15017 GLuint (*ChooseTextureFormat)( struct gl_context *ctx, GLint internalFormat,
15018 GLenum srcFormat, GLenum srcType );
15019# 218 "../../src/mesa/main/dd.h"
15020 void (*TexImage1D)( struct gl_context *ctx, GLenum target, GLint level,
15021 GLint internalFormat,
15022 GLint width, GLint border,
15023 GLenum format, GLenum type, const GLvoid *pixels,
15024 const struct gl_pixelstore_attrib *packing,
15025 struct gl_texture_object *texObj,
15026 struct gl_texture_image *texImage );
15027
15028
15029
15030
15031
15032
15033 void (*TexImage2D)( struct gl_context *ctx, GLenum target, GLint level,
15034 GLint internalFormat,
15035 GLint width, GLint height, GLint border,
15036 GLenum format, GLenum type, const GLvoid *pixels,
15037 const struct gl_pixelstore_attrib *packing,
15038 struct gl_texture_object *texObj,
15039 struct gl_texture_image *texImage );
15040
15041
15042
15043
15044
15045
15046 void (*TexImage3D)( struct gl_context *ctx, GLenum target, GLint level,
15047 GLint internalFormat,
15048 GLint width, GLint height, GLint depth, GLint border,
15049 GLenum format, GLenum type, const GLvoid *pixels,
15050 const struct gl_pixelstore_attrib *packing,
15051 struct gl_texture_object *texObj,
15052 struct gl_texture_image *texImage );
15053# 273 "../../src/mesa/main/dd.h"
15054 void (*TexSubImage1D)( struct gl_context *ctx, GLenum target, GLint level,
15055 GLint xoffset, GLsizei width,
15056 GLenum format, GLenum type,
15057 const GLvoid *pixels,
15058 const struct gl_pixelstore_attrib *packing,
15059 struct gl_texture_object *texObj,
15060 struct gl_texture_image *texImage );
15061
15062
15063
15064
15065
15066
15067 void (*TexSubImage2D)( struct gl_context *ctx, GLenum target, GLint level,
15068 GLint xoffset, GLint yoffset,
15069 GLsizei width, GLsizei height,
15070 GLenum format, GLenum type,
15071 const GLvoid *pixels,
15072 const struct gl_pixelstore_attrib *packing,
15073 struct gl_texture_object *texObj,
15074 struct gl_texture_image *texImage );
15075
15076
15077
15078
15079
15080
15081 void (*TexSubImage3D)( struct gl_context *ctx, GLenum target, GLint level,
15082 GLint xoffset, GLint yoffset, GLint zoffset,
15083 GLsizei width, GLsizei height, GLint depth,
15084 GLenum format, GLenum type,
15085 const GLvoid *pixels,
15086 const struct gl_pixelstore_attrib *packing,
15087 struct gl_texture_object *texObj,
15088 struct gl_texture_image *texImage );
15089
15090
15091
15092
15093 void (*GetTexImage)( struct gl_context *ctx, GLenum target, GLint level,
15094 GLenum format, GLenum type, GLvoid *pixels,
15095 struct gl_texture_object *texObj,
15096 struct gl_texture_image *texImage );
15097
15098
15099
15100
15101
15102
15103 void (*CopyTexImage1D)( struct gl_context *ctx, GLenum target, GLint level,
15104 GLenum internalFormat, GLint x, GLint y,
15105 GLsizei width, GLint border );
15106
15107
15108
15109
15110
15111
15112 void (*CopyTexImage2D)( struct gl_context *ctx, GLenum target, GLint level,
15113 GLenum internalFormat, GLint x, GLint y,
15114 GLsizei width, GLsizei height, GLint border );
15115
15116
15117
15118
15119
15120
15121 void (*CopyTexSubImage1D)( struct gl_context *ctx, GLenum target, GLint level,
15122 GLint xoffset,
15123 GLint x, GLint y, GLsizei width );
15124
15125
15126
15127
15128
15129 void (*CopyTexSubImage2D)( struct gl_context *ctx, GLenum target, GLint level,
15130 GLint xoffset, GLint yoffset,
15131 GLint x, GLint y,
15132 GLsizei width, GLsizei height );
15133
15134
15135
15136
15137
15138 void (*CopyTexSubImage3D)( struct gl_context *ctx, GLenum target, GLint level,
15139 GLint xoffset, GLint yoffset, GLint zoffset,
15140 GLint x, GLint y,
15141 GLsizei width, GLsizei height );
15142
15143
15144
15145
15146 void (*GenerateMipmap)(struct gl_context *ctx, GLenum target,
15147 struct gl_texture_object *texObj);
15148
15149
15150
15151
15152
15153
15154
15155 GLboolean (*TestProxyTexImage)(struct gl_context *ctx, GLenum target,
15156 GLint level, GLint internalFormat,
15157 GLenum format, GLenum type,
15158 GLint width, GLint height,
15159 GLint depth, GLint border);
15160# 402 "../../src/mesa/main/dd.h"
15161 void (*CompressedTexImage1D)( struct gl_context *ctx, GLenum target,
15162 GLint level, GLint internalFormat,
15163 GLsizei width, GLint border,
15164 GLsizei imageSize, const GLvoid *data,
15165 struct gl_texture_object *texObj,
15166 struct gl_texture_image *texImage );
15167
15168
15169
15170
15171
15172 void (*CompressedTexImage2D)( struct gl_context *ctx, GLenum target,
15173 GLint level, GLint internalFormat,
15174 GLsizei width, GLsizei height, GLint border,
15175 GLsizei imageSize, const GLvoid *data,
15176 struct gl_texture_object *texObj,
15177 struct gl_texture_image *texImage );
15178
15179
15180
15181
15182
15183 void (*CompressedTexImage3D)( struct gl_context *ctx, GLenum target,
15184 GLint level, GLint internalFormat,
15185 GLsizei width, GLsizei height, GLsizei depth,
15186 GLint border,
15187 GLsizei imageSize, const GLvoid *data,
15188 struct gl_texture_object *texObj,
15189 struct gl_texture_image *texImage );
15190# 449 "../../src/mesa/main/dd.h"
15191 void (*CompressedTexSubImage1D)(struct gl_context *ctx, GLenum target, GLint level,
15192 GLint xoffset, GLsizei width,
15193 GLenum format,
15194 GLsizei imageSize, const GLvoid *data,
15195 struct gl_texture_object *texObj,
15196 struct gl_texture_image *texImage);
15197
15198
15199
15200
15201
15202 void (*CompressedTexSubImage2D)(struct gl_context *ctx, GLenum target, GLint level,
15203 GLint xoffset, GLint yoffset,
15204 GLsizei width, GLint height,
15205 GLenum format,
15206 GLsizei imageSize, const GLvoid *data,
15207 struct gl_texture_object *texObj,
15208 struct gl_texture_image *texImage);
15209
15210
15211
15212
15213
15214 void (*CompressedTexSubImage3D)(struct gl_context *ctx, GLenum target, GLint level,
15215 GLint xoffset, GLint yoffset, GLint zoffset,
15216 GLsizei width, GLint height, GLint depth,
15217 GLenum format,
15218 GLsizei imageSize, const GLvoid *data,
15219 struct gl_texture_object *texObj,
15220 struct gl_texture_image *texImage);
15221
15222
15223
15224
15225
15226 void (*GetCompressedTexImage)(struct gl_context *ctx, GLenum target, GLint level,
15227 GLvoid *img,
15228 struct gl_texture_object *texObj,
15229 struct gl_texture_image *texImage);
15230# 499 "../../src/mesa/main/dd.h"
15231 void (*BindTexture)( struct gl_context *ctx, GLenum target,
15232 struct gl_texture_object *tObj );
15233
15234
15235
15236
15237
15238
15239 struct gl_texture_object * (*NewTextureObject)( struct gl_context *ctx, GLuint name,
15240 GLenum target );
15241
15242
15243
15244
15245
15246
15247 void (*DeleteTexture)( struct gl_context *ctx, struct gl_texture_object *tObj );
15248
15249
15250
15251
15252 struct gl_texture_image * (*NewTextureImage)( struct gl_context *ctx );
15253
15254
15255
15256
15257 void (*FreeTexImageData)( struct gl_context *ctx, struct gl_texture_image *tImage );
15258
15259
15260 void (*MapTexture)( struct gl_context *ctx, struct gl_texture_object *tObj );
15261
15262 void (*UnmapTexture)( struct gl_context *ctx, struct gl_texture_object *tObj );
15263# 543 "../../src/mesa/main/dd.h"
15264 void* (*TextureMemCpy)( void *to, const void *from, size_t sz );
15265
15266
15267
15268
15269 GLboolean (*IsTextureResident)( struct gl_context *ctx,
15270 struct gl_texture_object *t );
15271
15272
15273
15274
15275
15276
15277
15278 void (*UpdateTexturePalette)( struct gl_context *ctx,
15279 struct gl_texture_object *tObj );
15280
15281
15282
15283
15284
15285
15286
15287 void (*CopyColorTable)( struct gl_context *ctx,
15288 GLenum target, GLenum internalformat,
15289 GLint x, GLint y, GLsizei width );
15290
15291 void (*CopyColorSubTable)( struct gl_context *ctx,
15292 GLenum target, GLsizei start,
15293 GLint x, GLint y, GLsizei width );
15294# 581 "../../src/mesa/main/dd.h"
15295 void (*BindProgram)(struct gl_context *ctx, GLenum target, struct gl_program *prog);
15296
15297 struct gl_program * (*NewProgram)(struct gl_context *ctx, GLenum target, GLuint id);
15298
15299 void (*DeleteProgram)(struct gl_context *ctx, struct gl_program *prog);
15300
15301
15302
15303
15304
15305 GLboolean (*ProgramStringNotify)(struct gl_context *ctx, GLenum target,
15306 struct gl_program *prog);
15307
15308
15309 GLboolean (*IsProgramNative)(struct gl_context *ctx, GLenum target,
15310 struct gl_program *prog);
15311# 610 "../../src/mesa/main/dd.h"
15312 GLboolean (*LinkShader)(struct gl_context *ctx, struct gl_shader_program *shader);
15313# 624 "../../src/mesa/main/dd.h"
15314 void (*AlphaFunc)(struct gl_context *ctx, GLenum func, GLfloat ref);
15315
15316 void (*BlendColor)(struct gl_context *ctx, const GLfloat color[4]);
15317
15318 void (*BlendEquationSeparate)(struct gl_context *ctx, GLenum modeRGB, GLenum modeA);
15319 void (*BlendEquationSeparatei)(struct gl_context *ctx, GLuint buffer,
15320 GLenum modeRGB, GLenum modeA);
15321
15322 void (*BlendFuncSeparate)(struct gl_context *ctx,
15323 GLenum sfactorRGB, GLenum dfactorRGB,
15324 GLenum sfactorA, GLenum dfactorA);
15325 void (*BlendFuncSeparatei)(struct gl_context *ctx, GLuint buffer,
15326 GLenum sfactorRGB, GLenum dfactorRGB,
15327 GLenum sfactorA, GLenum dfactorA);
15328
15329 void (*ClearColor)(struct gl_context *ctx, const GLfloat color[4]);
15330
15331 void (*ClearDepth)(struct gl_context *ctx, GLclampd d);
15332
15333 void (*ClearStencil)(struct gl_context *ctx, GLint s);
15334
15335 void (*ClipPlane)(struct gl_context *ctx, GLenum plane, const GLfloat *equation );
15336
15337 void (*ColorMask)(struct gl_context *ctx, GLboolean rmask, GLboolean gmask,
15338 GLboolean bmask, GLboolean amask );
15339 void (*ColorMaskIndexed)(struct gl_context *ctx, GLuint buf, GLboolean rmask,
15340 GLboolean gmask, GLboolean bmask, GLboolean amask);
15341
15342 void (*ColorMaterial)(struct gl_context *ctx, GLenum face, GLenum mode);
15343
15344 void (*CullFace)(struct gl_context *ctx, GLenum mode);
15345
15346 void (*FrontFace)(struct gl_context *ctx, GLenum mode);
15347
15348 void (*DepthFunc)(struct gl_context *ctx, GLenum func);
15349
15350 void (*DepthMask)(struct gl_context *ctx, GLboolean flag);
15351
15352 void (*DepthRange)(struct gl_context *ctx, GLclampd nearval, GLclampd farval);
15353
15354 void (*DrawBuffer)( struct gl_context *ctx, GLenum buffer );
15355
15356 void (*DrawBuffers)( struct gl_context *ctx, GLsizei n, const GLenum *buffers );
15357
15358 void (*Enable)(struct gl_context *ctx, GLenum cap, GLboolean state);
15359
15360 void (*Fogfv)(struct gl_context *ctx, GLenum pname, const GLfloat *params);
15361
15362 void (*Hint)(struct gl_context *ctx, GLenum target, GLenum mode);
15363
15364
15365
15366
15367 void (*Lightfv)(struct gl_context *ctx, GLenum light,
15368 GLenum pname, const GLfloat *params );
15369
15370 void (*LightModelfv)(struct gl_context *ctx, GLenum pname, const GLfloat *params);
15371
15372 void (*LineStipple)(struct gl_context *ctx, GLint factor, GLushort pattern );
15373
15374 void (*LineWidth)(struct gl_context *ctx, GLfloat width);
15375
15376 void (*LogicOpcode)(struct gl_context *ctx, GLenum opcode);
15377 void (*PointParameterfv)(struct gl_context *ctx, GLenum pname,
15378 const GLfloat *params);
15379
15380 void (*PointSize)(struct gl_context *ctx, GLfloat size);
15381
15382 void (*PolygonMode)(struct gl_context *ctx, GLenum face, GLenum mode);
15383
15384 void (*PolygonOffset)(struct gl_context *ctx, GLfloat factor, GLfloat units);
15385
15386 void (*PolygonStipple)(struct gl_context *ctx, const GLubyte *mask );
15387
15388 void (*ReadBuffer)( struct gl_context *ctx, GLenum buffer );
15389
15390 void (*RenderMode)(struct gl_context *ctx, GLenum mode );
15391
15392 void (*Scissor)(struct gl_context *ctx, GLint x, GLint y, GLsizei w, GLsizei h);
15393
15394 void (*ShadeModel)(struct gl_context *ctx, GLenum mode);
15395
15396 void (*StencilFuncSeparate)(struct gl_context *ctx, GLenum face, GLenum func,
15397 GLint ref, GLuint mask);
15398
15399 void (*StencilMaskSeparate)(struct gl_context *ctx, GLenum face, GLuint mask);
15400
15401 void (*StencilOpSeparate)(struct gl_context *ctx, GLenum face, GLenum fail,
15402 GLenum zfail, GLenum zpass);
15403
15404 void (*TexGen)(struct gl_context *ctx, GLenum coord, GLenum pname,
15405 const GLfloat *params);
15406
15407 void (*TexEnv)(struct gl_context *ctx, GLenum target, GLenum pname,
15408 const GLfloat *param);
15409
15410 void (*TexParameter)(struct gl_context *ctx, GLenum target,
15411 struct gl_texture_object *texObj,
15412 GLenum pname, const GLfloat *params);
15413
15414 void (*Viewport)(struct gl_context *ctx, GLint x, GLint y, GLsizei w, GLsizei h);
15415
15416
15417
15418
15419
15420
15421
15422 void (*BindBuffer)( struct gl_context *ctx, GLenum target,
15423 struct gl_buffer_object *obj );
15424
15425 struct gl_buffer_object * (*NewBufferObject)( struct gl_context *ctx, GLuint buffer,
15426 GLenum target );
15427
15428 void (*DeleteBuffer)( struct gl_context *ctx, struct gl_buffer_object *obj );
15429
15430 GLboolean (*BufferData)( struct gl_context *ctx, GLenum target, GLsizeiptrARB size,
15431 const GLvoid *data, GLenum usage,
15432 struct gl_buffer_object *obj );
15433
15434 void (*BufferSubData)( struct gl_context *ctx, GLenum target, GLintptrARB offset,
15435 GLsizeiptrARB size, const GLvoid *data,
15436 struct gl_buffer_object *obj );
15437
15438 void (*GetBufferSubData)( struct gl_context *ctx, GLenum target,
15439 GLintptrARB offset, GLsizeiptrARB size,
15440 GLvoid *data, struct gl_buffer_object *obj );
15441
15442 void * (*MapBuffer)( struct gl_context *ctx, GLenum target, GLenum access,
15443 struct gl_buffer_object *obj );
15444
15445 void (*CopyBufferSubData)( struct gl_context *ctx,
15446 struct gl_buffer_object *src,
15447 struct gl_buffer_object *dst,
15448 GLintptr readOffset, GLintptr writeOffset,
15449 GLsizeiptr size );
15450
15451
15452
15453 void * (*MapBufferRange)( struct gl_context *ctx, GLenum target, GLintptr offset,
15454 GLsizeiptr length, GLbitfield access,
15455 struct gl_buffer_object *obj);
15456
15457 void (*FlushMappedBufferRange)(struct gl_context *ctx, GLenum target,
15458 GLintptr offset, GLsizeiptr length,
15459 struct gl_buffer_object *obj);
15460
15461 GLboolean (*UnmapBuffer)( struct gl_context *ctx, GLenum target,
15462 struct gl_buffer_object *obj );
15463
15464
15465
15466
15467
15468
15469
15470 GLenum (*BufferObjectPurgeable)( struct gl_context *ctx, struct gl_buffer_object *obj, GLenum option );
15471 GLenum (*RenderObjectPurgeable)( struct gl_context *ctx, struct gl_renderbuffer *obj, GLenum option );
15472 GLenum (*TextureObjectPurgeable)( struct gl_context *ctx, struct gl_texture_object *obj, GLenum option );
15473
15474
15475 GLenum (*BufferObjectUnpurgeable)( struct gl_context *ctx, struct gl_buffer_object *obj, GLenum option );
15476 GLenum (*RenderObjectUnpurgeable)( struct gl_context *ctx, struct gl_renderbuffer *obj, GLenum option );
15477 GLenum (*TextureObjectUnpurgeable)( struct gl_context *ctx, struct gl_texture_object *obj, GLenum option );
15478
15479
15480
15481
15482
15483
15484 struct gl_framebuffer * (*NewFramebuffer)(struct gl_context *ctx, GLuint name);
15485 struct gl_renderbuffer * (*NewRenderbuffer)(struct gl_context *ctx, GLuint name);
15486 void (*BindFramebuffer)(struct gl_context *ctx, GLenum target,
15487 struct gl_framebuffer *drawFb,
15488 struct gl_framebuffer *readFb);
15489 void (*FramebufferRenderbuffer)(struct gl_context *ctx,
15490 struct gl_framebuffer *fb,
15491 GLenum attachment,
15492 struct gl_renderbuffer *rb);
15493 void (*RenderTexture)(struct gl_context *ctx,
15494 struct gl_framebuffer *fb,
15495 struct gl_renderbuffer_attachment *att);
15496 void (*FinishRenderTexture)(struct gl_context *ctx,
15497 struct gl_renderbuffer_attachment *att);
15498 void (*ValidateFramebuffer)(struct gl_context *ctx,
15499 struct gl_framebuffer *fb);
15500
15501 void (*BlitFramebuffer)(struct gl_context *ctx,
15502 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
15503 GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1,
15504 GLbitfield mask, GLenum filter);
15505
15506
15507
15508
15509
15510 struct gl_query_object * (*NewQueryObject)(struct gl_context *ctx, GLuint id);
15511 void (*DeleteQuery)(struct gl_context *ctx, struct gl_query_object *q);
15512 void (*BeginQuery)(struct gl_context *ctx, struct gl_query_object *q);
15513 void (*EndQuery)(struct gl_context *ctx, struct gl_query_object *q);
15514 void (*CheckQuery)(struct gl_context *ctx, struct gl_query_object *q);
15515 void (*WaitQuery)(struct gl_context *ctx, struct gl_query_object *q);
15516
15517
15518
15519
15520
15521
15522
15523 struct gl_array_object * (*NewArrayObject)(struct gl_context *ctx, GLuint id);
15524 void (*DeleteArrayObject)(struct gl_context *ctx, struct gl_array_object *obj);
15525 void (*BindArrayObject)(struct gl_context *ctx, struct gl_array_object *obj);
15526
15527
15528
15529
15530
15531
15532 struct gl_shader *(*NewShader)(struct gl_context *ctx, GLuint name, GLenum type);
15533 void (*DeleteShader)(struct gl_context *ctx, struct gl_shader *shader);
15534 struct gl_shader_program *(*NewShaderProgram)(struct gl_context *ctx, GLuint name);
15535 void (*DeleteShaderProgram)(struct gl_context *ctx,
15536 struct gl_shader_program *shProg);
15537 void (*UseProgram)(struct gl_context *ctx, struct gl_shader_program *shProg);
15538# 860 "../../src/mesa/main/dd.h"
15539 GLuint NeedValidate;
15540# 873 "../../src/mesa/main/dd.h"
15541 void (*ValidateTnlModule)( struct gl_context *ctx, GLuint new_state );
15542
15543
15544
15545
15546
15547
15548 GLuint CurrentExecPrimitive;
15549
15550
15551
15552
15553
15554
15555
15556 GLuint CurrentSavePrimitive;
15557# 901 "../../src/mesa/main/dd.h"
15558 GLuint NeedFlush;
15559 GLuint SaveNeedFlush;
15560
15561
15562
15563
15564
15565 void (*BeginVertices)( struct gl_context *ctx );
15566# 919 "../../src/mesa/main/dd.h"
15567 void (*FlushVertices)( struct gl_context *ctx, GLuint flags );
15568 void (*SaveFlushVertices)( struct gl_context *ctx );
15569
15570
15571
15572
15573
15574
15575 GLboolean (*NotifySaveBegin)( struct gl_context *ctx, GLenum mode );
15576
15577
15578
15579
15580
15581 void (*LightingSpaceChange)( struct gl_context *ctx );
15582
15583
15584
15585
15586
15587
15588
15589 void (*NewList)( struct gl_context *ctx, GLuint list, GLenum mode );
15590
15591
15592
15593
15594
15595 void (*EndList)( struct gl_context *ctx );
15596
15597
15598
15599
15600
15601
15602 void (*BeginCallList)( struct gl_context *ctx,
15603 struct gl_display_list *dlist );
15604
15605
15606
15607
15608
15609 void (*EndCallList)( struct gl_context *ctx );
15610
15611
15612
15613
15614
15615
15616 struct gl_sync_object * (*NewSyncObject)(struct gl_context *, GLenum);
15617 void (*FenceSync)(struct gl_context *, struct gl_sync_object *, GLenum, GLbitfield);
15618 void (*DeleteSyncObject)(struct gl_context *, struct gl_sync_object *);
15619 void (*CheckSync)(struct gl_context *, struct gl_sync_object *);
15620 void (*ClientWaitSync)(struct gl_context *, struct gl_sync_object *,
15621 GLbitfield, GLuint64);
15622 void (*ServerWaitSync)(struct gl_context *, struct gl_sync_object *,
15623 GLbitfield, GLuint64);
15624
15625
15626
15627 void (*BeginConditionalRender)(struct gl_context *ctx, struct gl_query_object *q,
15628 GLenum mode);
15629 void (*EndConditionalRender)(struct gl_context *ctx, struct gl_query_object *q);
15630
15631
15632
15633
15634
15635 void (*DrawTex)(struct gl_context *ctx, GLfloat x, GLfloat y, GLfloat z,
15636 GLfloat width, GLfloat height);
15637
15638
15639
15640
15641
15642 void (*EGLImageTargetTexture2D)(struct gl_context *ctx, GLenum target,
15643 struct gl_texture_object *texObj,
15644 struct gl_texture_image *texImage,
15645 GLeglImageOES image_handle);
15646 void (*EGLImageTargetRenderbufferStorage)(struct gl_context *ctx,
15647 struct gl_renderbuffer *rb,
15648 void *image_handle);
15649
15650
15651
15652
15653 struct gl_transform_feedback_object *
15654 (*NewTransformFeedback)(struct gl_context *ctx, GLuint name);
15655 void (*DeleteTransformFeedback)(struct gl_context *ctx,
15656 struct gl_transform_feedback_object *obj);
15657 void (*BeginTransformFeedback)(struct gl_context *ctx, GLenum mode,
15658 struct gl_transform_feedback_object *obj);
15659 void (*EndTransformFeedback)(struct gl_context *ctx,
15660 struct gl_transform_feedback_object *obj);
15661 void (*PauseTransformFeedback)(struct gl_context *ctx,
15662 struct gl_transform_feedback_object *obj);
15663 void (*ResumeTransformFeedback)(struct gl_context *ctx,
15664 struct gl_transform_feedback_object *obj);
15665 void (*DrawTransformFeedback)(struct gl_context *ctx, GLenum mode,
15666 struct gl_transform_feedback_object *obj);
15667
15668
15669
15670
15671 void (*TextureBarrier)(struct gl_context *ctx);
15672
15673
15674
15675
15676 struct gl_sampler_object * (*NewSamplerObject)(struct gl_context *ctx,
15677 GLuint name);
15678 void (*DeleteSamplerObject)(struct gl_context *ctx,
15679 struct gl_sampler_object *samp);
15680};
15681# 1053 "../../src/mesa/main/dd.h"
15682typedef struct {
15683
15684
15685
15686
15687 void ( * ArrayElement)( GLint );
15688 void ( * Color3f)( GLfloat, GLfloat, GLfloat );
15689 void ( * Color3fv)( const GLfloat * );
15690 void ( * Color4f)( GLfloat, GLfloat, GLfloat, GLfloat );
15691 void ( * Color4fv)( const GLfloat * );
15692 void ( * EdgeFlag)( GLboolean );
15693 void ( * EvalCoord1f)( GLfloat );
15694 void ( * EvalCoord1fv)( const GLfloat * );
15695 void ( * EvalCoord2f)( GLfloat, GLfloat );
15696 void ( * EvalCoord2fv)( const GLfloat * );
15697 void ( * EvalPoint1)( GLint );
15698 void ( * EvalPoint2)( GLint, GLint );
15699 void ( * FogCoordfEXT)( GLfloat );
15700 void ( * FogCoordfvEXT)( const GLfloat * );
15701 void ( * Indexf)( GLfloat );
15702 void ( * Indexfv)( const GLfloat * );
15703 void ( * Materialfv)( GLenum face, GLenum pname, const GLfloat * );
15704 void ( * MultiTexCoord1fARB)( GLenum, GLfloat );
15705 void ( * MultiTexCoord1fvARB)( GLenum, const GLfloat * );
15706 void ( * MultiTexCoord2fARB)( GLenum, GLfloat, GLfloat );
15707 void ( * MultiTexCoord2fvARB)( GLenum, const GLfloat * );
15708 void ( * MultiTexCoord3fARB)( GLenum, GLfloat, GLfloat, GLfloat );
15709 void ( * MultiTexCoord3fvARB)( GLenum, const GLfloat * );
15710 void ( * MultiTexCoord4fARB)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat );
15711 void ( * MultiTexCoord4fvARB)( GLenum, const GLfloat * );
15712 void ( * Normal3f)( GLfloat, GLfloat, GLfloat );
15713 void ( * Normal3fv)( const GLfloat * );
15714 void ( * SecondaryColor3fEXT)( GLfloat, GLfloat, GLfloat );
15715 void ( * SecondaryColor3fvEXT)( const GLfloat * );
15716 void ( * TexCoord1f)( GLfloat );
15717 void ( * TexCoord1fv)( const GLfloat * );
15718 void ( * TexCoord2f)( GLfloat, GLfloat );
15719 void ( * TexCoord2fv)( const GLfloat * );
15720 void ( * TexCoord3f)( GLfloat, GLfloat, GLfloat );
15721 void ( * TexCoord3fv)( const GLfloat * );
15722 void ( * TexCoord4f)( GLfloat, GLfloat, GLfloat, GLfloat );
15723 void ( * TexCoord4fv)( const GLfloat * );
15724 void ( * Vertex2f)( GLfloat, GLfloat );
15725 void ( * Vertex2fv)( const GLfloat * );
15726 void ( * Vertex3f)( GLfloat, GLfloat, GLfloat );
15727 void ( * Vertex3fv)( const GLfloat * );
15728 void ( * Vertex4f)( GLfloat, GLfloat, GLfloat, GLfloat );
15729 void ( * Vertex4fv)( const GLfloat * );
15730 void ( * CallList)( GLuint );
15731 void ( * CallLists)( GLsizei, GLenum, const GLvoid * );
15732 void ( * Begin)( GLenum );
15733 void ( * End)( void );
15734 void ( * PrimitiveRestartNV)( void );
15735
15736 void ( * VertexAttrib1fNV)( GLuint index, GLfloat x );
15737 void ( * VertexAttrib1fvNV)( GLuint index, const GLfloat *v );
15738 void ( * VertexAttrib2fNV)( GLuint index, GLfloat x, GLfloat y );
15739 void ( * VertexAttrib2fvNV)( GLuint index, const GLfloat *v );
15740 void ( * VertexAttrib3fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z );
15741 void ( * VertexAttrib3fvNV)( GLuint index, const GLfloat *v );
15742 void ( * VertexAttrib4fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w );
15743 void ( * VertexAttrib4fvNV)( GLuint index, const GLfloat *v );
15744
15745 void ( * VertexAttrib1fARB)( GLuint index, GLfloat x );
15746 void ( * VertexAttrib1fvARB)( GLuint index, const GLfloat *v );
15747 void ( * VertexAttrib2fARB)( GLuint index, GLfloat x, GLfloat y );
15748 void ( * VertexAttrib2fvARB)( GLuint index, const GLfloat *v );
15749 void ( * VertexAttrib3fARB)( GLuint index, GLfloat x, GLfloat y, GLfloat z );
15750 void ( * VertexAttrib3fvARB)( GLuint index, const GLfloat *v );
15751 void ( * VertexAttrib4fARB)( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w );
15752 void ( * VertexAttrib4fvARB)( GLuint index, const GLfloat *v );
15753
15754
15755 void ( * VertexAttribI1i)( GLuint index, GLint x);
15756 void ( * VertexAttribI2i)( GLuint index, GLint x, GLint y);
15757 void ( * VertexAttribI3i)( GLuint index, GLint x, GLint y, GLint z);
15758 void ( * VertexAttribI4i)( GLuint index, GLint x, GLint y, GLint z, GLint w);
15759 void ( * VertexAttribI2iv)( GLuint index, const GLint *v);
15760 void ( * VertexAttribI3iv)( GLuint index, const GLint *v);
15761 void ( * VertexAttribI4iv)( GLuint index, const GLint *v);
15762
15763 void ( * VertexAttribI1ui)( GLuint index, GLuint x);
15764 void ( * VertexAttribI2ui)( GLuint index, GLuint x, GLuint y);
15765 void ( * VertexAttribI3ui)( GLuint index, GLuint x, GLuint y, GLuint z);
15766 void ( * VertexAttribI4ui)( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
15767 void ( * VertexAttribI2uiv)( GLuint index, const GLuint *v);
15768 void ( * VertexAttribI3uiv)( GLuint index, const GLuint *v);
15769 void ( * VertexAttribI4uiv)( GLuint index, const GLuint *v);
15770
15771
15772
15773 void ( * Rectf)( GLfloat, GLfloat, GLfloat, GLfloat );
15774
15775
15776
15777
15778
15779 void ( * DrawArrays)( GLenum mode, GLint start, GLsizei count );
15780 void ( * DrawElements)( GLenum mode, GLsizei count, GLenum type,
15781 const GLvoid *indices );
15782 void ( * DrawRangeElements)( GLenum mode, GLuint start,
15783 GLuint end, GLsizei count,
15784 GLenum type, const GLvoid *indices );
15785 void ( * MultiDrawElementsEXT)( GLenum mode, const GLsizei *count,
15786 GLenum type,
15787 const GLvoid **indices,
15788 GLsizei primcount);
15789 void ( * DrawElementsBaseVertex)( GLenum mode, GLsizei count,
15790 GLenum type,
15791 const GLvoid *indices,
15792 GLint basevertex );
15793 void ( * DrawRangeElementsBaseVertex)( GLenum mode, GLuint start,
15794 GLuint end, GLsizei count,
15795 GLenum type,
15796 const GLvoid *indices,
15797 GLint basevertex);
15798 void ( * MultiDrawElementsBaseVertex)( GLenum mode,
15799 const GLsizei *count,
15800 GLenum type,
15801 const GLvoid **indices,
15802 GLsizei primcount,
15803 const GLint *basevertex);
15804 void ( * DrawArraysInstanced)(GLenum mode, GLint first,
15805 GLsizei count, GLsizei primcount);
15806 void ( * DrawElementsInstanced)(GLenum mode, GLsizei count,
15807 GLenum type, const GLvoid *indices,
15808 GLsizei primcount);
15809 void ( * DrawElementsInstancedBaseVertex)(GLenum mode, GLsizei count,
15810 GLenum type, const GLvoid *indices,
15811 GLsizei primcount, GLint basevertex);
15812# 1196 "../../src/mesa/main/dd.h"
15813 void ( * EvalMesh1)( GLenum mode, GLint i1, GLint i2 );
15814 void ( * EvalMesh2)( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 );
15815
15816
15817} GLvertexformat;
15818# 3095 "../../src/mesa/main/mtypes.h" 2
15819# 3107 "../../src/mesa/main/mtypes.h"
15820union gl_dlist_node;
15821
15822
15823
15824
15825
15826
15827
15828struct gl_display_list
15829{
15830 GLuint Name;
15831 GLbitfield Flags;
15832
15833 union gl_dlist_node *Head;
15834};
15835
15836
15837
15838
15839
15840struct gl_dlist_state
15841{
15842 GLuint CallDepth;
15843
15844 struct gl_display_list *CurrentList;
15845 union gl_dlist_node *CurrentBlock;
15846 GLuint CurrentPos;
15847
15848 GLvertexformat ListVtxfmt;
15849
15850 GLubyte ActiveAttribSize[VERT_ATTRIB_MAX];
15851 GLfloat CurrentAttrib[VERT_ATTRIB_MAX][4];
15852
15853 GLubyte ActiveMaterialSize[12];
15854 GLfloat CurrentMaterial[12][4];
15855
15856 GLubyte ActiveIndex;
15857 GLfloat CurrentIndex;
15858
15859 GLubyte ActiveEdgeFlag;
15860 GLboolean CurrentEdgeFlag;
15861
15862 struct {
15863
15864
15865
15866 GLenum ShadeModel;
15867 } Current;
15868};
15869
15870
15871
15872
15873
15874typedef enum
15875{
15876 API_OPENGL,
15877 API_OPENGLES,
15878 API_OPENGLES2
15879} gl_api;
15880# 3179 "../../src/mesa/main/mtypes.h"
15881struct gl_context
15882{
15883
15884 struct gl_shared_state *Shared;
15885
15886
15887
15888 gl_api API;
15889 struct _glapi_table *Save;
15890 struct _glapi_table *Exec;
15891 struct _glapi_table *CurrentDispatch;
15892
15893
15894 struct gl_config Visual;
15895 struct gl_framebuffer *DrawBuffer;
15896 struct gl_framebuffer *ReadBuffer;
15897 struct gl_framebuffer *WinSysDrawBuffer;
15898 struct gl_framebuffer *WinSysReadBuffer;
15899
15900
15901
15902
15903 struct dd_function_table Driver;
15904
15905 void *DriverCtx;
15906
15907
15908 struct gl_constants Const;
15909
15910
15911
15912 struct gl_matrix_stack ModelviewMatrixStack;
15913 struct gl_matrix_stack ProjectionMatrixStack;
15914 struct gl_matrix_stack TextureMatrixStack[((8 > 16) ? 8 : 16)];
15915 struct gl_matrix_stack ProgramMatrixStack[8];
15916 struct gl_matrix_stack *CurrentStack;
15917
15918
15919
15920 GLmatrix _ModelProjectMatrix;
15921
15922
15923 struct gl_dlist_state ListState;
15924
15925 GLboolean ExecuteFlag;
15926 GLboolean CompileFlag;
15927
15928
15929 struct gl_extensions Extensions;
15930
15931
15932 GLuint VersionMajor, VersionMinor;
15933 char *VersionString;
15934
15935
15936
15937 GLuint AttribStackDepth;
15938 struct gl_attrib_node *AttribStack[16];
15939# 3245 "../../src/mesa/main/mtypes.h"
15940 struct gl_accum_attrib Accum;
15941 struct gl_colorbuffer_attrib Color;
15942 struct gl_current_attrib Current;
15943 struct gl_depthbuffer_attrib Depth;
15944 struct gl_eval_attrib Eval;
15945 struct gl_fog_attrib Fog;
15946 struct gl_hint_attrib Hint;
15947 struct gl_light_attrib Light;
15948 struct gl_line_attrib Line;
15949 struct gl_list_attrib List;
15950 struct gl_multisample_attrib Multisample;
15951 struct gl_pixel_attrib Pixel;
15952 struct gl_point_attrib Point;
15953 struct gl_polygon_attrib Polygon;
15954 GLuint PolygonStipple[32];
15955 struct gl_scissor_attrib Scissor;
15956 struct gl_stencil_attrib Stencil;
15957 struct gl_texture_attrib Texture;
15958 struct gl_transform_attrib Transform;
15959 struct gl_viewport_attrib Viewport;
15960
15961
15962
15963
15964 GLuint ClientAttribStackDepth;
15965 struct gl_attrib_node *ClientAttribStack[16];
15966
15967
15968
15969
15970 struct gl_array_attrib Array;
15971 struct gl_pixelstore_attrib Pack;
15972 struct gl_pixelstore_attrib Unpack;
15973 struct gl_pixelstore_attrib DefaultPacking;
15974
15975
15976
15977
15978 struct gl_pixelmaps PixelMaps;
15979
15980 struct gl_evaluators EvalMap;
15981 struct gl_feedback Feedback;
15982 struct gl_selection Select;
15983
15984 struct gl_program_state Program;
15985 struct gl_vertex_program_state VertexProgram;
15986 struct gl_fragment_program_state FragmentProgram;
15987 struct gl_geometry_program_state GeometryProgram;
15988 struct gl_ati_fragment_shader_state ATIFragmentShader;
15989
15990 struct gl_shader_state Shader;
15991 struct gl_shader_compiler_options ShaderCompilerOptions[MESA_SHADER_TYPES];
15992
15993 struct gl_query_state Query;
15994
15995 struct gl_transform_feedback TransformFeedback;
15996
15997 struct gl_buffer_object *CopyReadBuffer;
15998 struct gl_buffer_object *CopyWriteBuffer;
15999
16000
16001 struct gl_meta_state *Meta;
16002
16003
16004 struct gl_renderbuffer *CurrentRenderbuffer;
16005
16006 GLenum ErrorValue;
16007
16008
16009 GLenum ResetStatus;
16010
16011
16012
16013
16014 const char *ErrorDebugFmtString;
16015 GLuint ErrorDebugCount;
16016
16017 GLenum RenderMode;
16018 GLbitfield NewState;
16019
16020 GLboolean ViewportInitialized;
16021
16022 GLbitfield varying_vp_inputs;
16023
16024
16025
16026
16027
16028
16029 GLbitfield _TriangleCaps;
16030 GLbitfield _ImageTransferState;
16031 GLfloat _EyeZDir[3];
16032 GLfloat _ModelViewInvScale;
16033 GLboolean _NeedEyeCoords;
16034 GLboolean _ForceEyeCoords;
16035
16036 GLuint TextureStateTimestamp;
16037
16038 struct gl_shine_tab *_ShineTable[2];
16039 struct gl_shine_tab *_ShineTabList;
16040
16041
16042 struct gl_list_extensions *ListExt;
16043
16044
16045
16046 GLboolean FirstTimeCurrent;
16047
16048
16049
16050 GLboolean Mesa_DXTn;
16051
16052 GLboolean TextureFormatSupported[MESA_FORMAT_COUNT];
16053
16054
16055
16056
16057
16058 GLboolean mvp_with_dp4;
16059
16060
16061
16062
16063
16064
16065
16066 void *swrast_context;
16067 void *swsetup_context;
16068 void *swtnl_context;
16069 void *swtnl_im;
16070 struct st_context *st;
16071 void *aelt_context;
16072
16073};
16074# 3396 "../../src/mesa/main/mtypes.h"
16075enum _verbose
16076{
16077 VERBOSE_VARRAY = 0x0001,
16078 VERBOSE_TEXTURE = 0x0002,
16079 VERBOSE_MATERIAL = 0x0004,
16080 VERBOSE_PIPELINE = 0x0008,
16081 VERBOSE_DRIVER = 0x0010,
16082 VERBOSE_STATE = 0x0020,
16083 VERBOSE_API = 0x0040,
16084 VERBOSE_DISPLAY_LIST = 0x0100,
16085 VERBOSE_LIGHTING = 0x0200,
16086 VERBOSE_PRIMS = 0x0400,
16087 VERBOSE_VERTS = 0x0800,
16088 VERBOSE_DISASSEM = 0x1000,
16089 VERBOSE_DRAW = 0x2000,
16090 VERBOSE_SWAPBUFFERS = 0x4000
16091};
16092
16093
16094
16095enum _debug
16096{
16097 DEBUG_ALWAYS_FLUSH = 0x1
16098};
16099# 54 "../../src/mesa/main/context.h" 2
16100
16101
16102struct _glapi_table;
16103
16104
16105
16106
16107
16108extern struct gl_config *
16109_mesa_create_visual( GLboolean dbFlag,
16110 GLboolean stereoFlag,
16111 GLint redBits,
16112 GLint greenBits,
16113 GLint blueBits,
16114 GLint alphaBits,
16115 GLint depthBits,
16116 GLint stencilBits,
16117 GLint accumRedBits,
16118 GLint accumGreenBits,
16119 GLint accumBlueBits,
16120 GLint accumAlphaBits,
16121 GLint numSamples );
16122
16123extern GLboolean
16124_mesa_initialize_visual( struct gl_config *v,
16125 GLboolean dbFlag,
16126 GLboolean stereoFlag,
16127 GLint redBits,
16128 GLint greenBits,
16129 GLint blueBits,
16130 GLint alphaBits,
16131 GLint depthBits,
16132 GLint stencilBits,
16133 GLint accumRedBits,
16134 GLint accumGreenBits,
16135 GLint accumBlueBits,
16136 GLint accumAlphaBits,
16137 GLint numSamples );
16138
16139extern void
16140_mesa_destroy_visual( struct gl_config *vis );
16141
16142
16143
16144
16145
16146
16147
16148extern GLboolean
16149_mesa_initialize_context( struct gl_context *ctx,
16150 gl_api api,
16151 const struct gl_config *visual,
16152 struct gl_context *share_list,
16153 const struct dd_function_table *driverFunctions,
16154 void *driverContext );
16155
16156extern struct gl_context *
16157_mesa_create_context(gl_api api,
16158 const struct gl_config *visual,
16159 struct gl_context *share_list,
16160 const struct dd_function_table *driverFunctions,
16161 void *driverContext);
16162
16163extern void
16164_mesa_free_context_data( struct gl_context *ctx );
16165
16166extern void
16167_mesa_destroy_context( struct gl_context *ctx );
16168
16169
16170extern void
16171_mesa_copy_context(const struct gl_context *src, struct gl_context *dst, GLuint mask);
16172
16173
16174extern void
16175_mesa_check_init_viewport(struct gl_context *ctx, GLuint width, GLuint height);
16176
16177extern GLboolean
16178_mesa_make_current( struct gl_context *ctx, struct gl_framebuffer *drawBuffer,
16179 struct gl_framebuffer *readBuffer );
16180
16181extern GLboolean
16182_mesa_share_state(struct gl_context *ctx, struct gl_context *ctxToShare);
16183
16184extern struct gl_context *
16185_mesa_get_current_context(void);
16186
16187
16188
16189extern void
16190_mesa_init_get_hash(struct gl_context *ctx);
16191
16192extern void
16193_mesa_notifySwapBuffers(struct gl_context *gc);
16194
16195
16196extern struct _glapi_table *
16197_mesa_get_dispatch(struct gl_context *ctx);
16198
16199
16200void
16201_mesa_set_mvp_with_dp4( struct gl_context *ctx,
16202 GLboolean flag );
16203
16204
16205extern GLboolean
16206_mesa_valid_to_render(struct gl_context *ctx, const char *where);
16207
16208
16209
16210
16211
16212
16213extern void
16214_mesa_record_error( struct gl_context *ctx, GLenum error );
16215
16216
16217extern void
16218_mesa_finish(struct gl_context *ctx);
16219
16220extern void
16221_mesa_flush(struct gl_context *ctx);
16222
16223
16224extern void
16225_mesa_Finish( void );
16226
16227extern void
16228_mesa_Flush( void );
16229# 34 "swrast/s_triangle.c" 2
16230# 1 "../../src/mesa/main/colormac.h" 1
16231# 36 "../../src/mesa/main/colormac.h"
16232# 1 "../../src/mesa/main/config.h" 1
16233# 37 "../../src/mesa/main/colormac.h" 2
16234# 1 "../../src/mesa/main/macros.h" 1
16235# 43 "../../src/mesa/main/macros.h"
16236extern GLfloat _mesa_ubyte_to_float_color_tab[256];
16237# 38 "../../src/mesa/main/colormac.h" 2
16238# 35 "swrast/s_triangle.c" 2
16239# 1 "../../src/mesa/main/imports.h" 1
16240# 36 "swrast/s_triangle.c" 2
16241# 1 "../../src/mesa/main/macros.h" 1
16242# 37 "swrast/s_triangle.c" 2
16243# 1 "../../src/mesa/main/mtypes.h" 1
16244# 38 "swrast/s_triangle.c" 2
16245# 1 "../../src/mesa/main/state.h" 1
16246# 31 "../../src/mesa/main/state.h"
16247extern void
16248_mesa_update_state(struct gl_context *ctx);
16249
16250
16251
16252
16253extern void
16254_mesa_update_state_locked(struct gl_context *ctx);
16255
16256
16257extern void
16258_mesa_set_varying_vp_inputs(struct gl_context *ctx, GLbitfield varying_inputs);
16259
16260
16261extern void
16262_mesa_set_vp_override(struct gl_context *ctx, GLboolean flag);
16263
16264
16265
16266
16267
16268static __inline__ GLboolean
16269_mesa_need_secondary_color(const struct gl_context *ctx)
16270{
16271 if (ctx->Light.Enabled &&
16272 ctx->Light.Model.ColorControl == 0x81FA)
16273 return 0x1;
16274
16275 if (ctx->Fog.ColorSumEnabled)
16276 return 0x1;
16277
16278 if (ctx->VertexProgram._Current &&
16279 (ctx->VertexProgram._Current != ctx->VertexProgram._TnlProgram) &&
16280 (ctx->VertexProgram._Current->Base.InputsRead & (1 << VERT_ATTRIB_COLOR1)))
16281 return 0x1;
16282
16283 if (ctx->FragmentProgram._Current &&
16284 (ctx->FragmentProgram._Current != ctx->FragmentProgram._TexEnvProgram) &&
16285 (ctx->FragmentProgram._Current->Base.InputsRead & (1 << FRAG_ATTRIB_COL1)))
16286 return 0x1;
16287
16288 return 0x0;
16289}
16290
16291
16292
16293
16294
16295static __inline__ GLboolean
16296_mesa_rgba_logicop_enabled(const struct gl_context *ctx)
16297{
16298 return ctx->Color.ColorLogicOpEnabled ||
16299 (ctx->Color.BlendEnabled && ctx->Color.Blend[0].EquationRGB == 0x0BF1);
16300}
16301# 39 "swrast/s_triangle.c" 2
16302# 1 "../../src/mesa/program/prog_instruction.h" 1
16303# 144 "../../src/mesa/program/prog_instruction.h"
16304typedef enum prog_opcode {
16305
16306
16307 OPCODE_NOP = 0,
16308 OPCODE_ABS,
16309 OPCODE_ADD,
16310 OPCODE_AND,
16311 OPCODE_ARA,
16312 OPCODE_ARL,
16313 OPCODE_ARL_NV,
16314 OPCODE_ARR,
16315 OPCODE_BGNLOOP,
16316 OPCODE_BGNSUB,
16317 OPCODE_BRA,
16318 OPCODE_BRK,
16319 OPCODE_CAL,
16320 OPCODE_CMP,
16321 OPCODE_CONT,
16322 OPCODE_COS,
16323 OPCODE_DDX,
16324 OPCODE_DDY,
16325 OPCODE_DP2,
16326 OPCODE_DP2A,
16327 OPCODE_DP3,
16328 OPCODE_DP4,
16329 OPCODE_DPH,
16330 OPCODE_DST,
16331 OPCODE_ELSE,
16332 OPCODE_EMIT_VERTEX,
16333 OPCODE_END,
16334 OPCODE_END_PRIMITIVE,
16335 OPCODE_ENDIF,
16336 OPCODE_ENDLOOP,
16337 OPCODE_ENDSUB,
16338 OPCODE_EX2,
16339 OPCODE_EXP,
16340 OPCODE_FLR,
16341 OPCODE_FRC,
16342 OPCODE_IF,
16343 OPCODE_KIL,
16344 OPCODE_KIL_NV,
16345 OPCODE_LG2,
16346 OPCODE_LIT,
16347 OPCODE_LOG,
16348 OPCODE_LRP,
16349 OPCODE_MAD,
16350 OPCODE_MAX,
16351 OPCODE_MIN,
16352 OPCODE_MOV,
16353 OPCODE_MUL,
16354 OPCODE_NOISE1,
16355 OPCODE_NOISE2,
16356 OPCODE_NOISE3,
16357 OPCODE_NOISE4,
16358 OPCODE_NOT,
16359 OPCODE_NRM3,
16360 OPCODE_NRM4,
16361 OPCODE_OR,
16362 OPCODE_PK2H,
16363 OPCODE_PK2US,
16364 OPCODE_PK4B,
16365 OPCODE_PK4UB,
16366 OPCODE_POW,
16367 OPCODE_POPA,
16368 OPCODE_PRINT,
16369 OPCODE_PUSHA,
16370 OPCODE_RCC,
16371 OPCODE_RCP,
16372 OPCODE_RET,
16373 OPCODE_RFL,
16374 OPCODE_RSQ,
16375 OPCODE_SCS,
16376 OPCODE_SEQ,
16377 OPCODE_SFL,
16378 OPCODE_SGE,
16379 OPCODE_SGT,
16380 OPCODE_SIN,
16381 OPCODE_SLE,
16382 OPCODE_SLT,
16383 OPCODE_SNE,
16384 OPCODE_SSG,
16385 OPCODE_STR,
16386 OPCODE_SUB,
16387 OPCODE_SWZ,
16388 OPCODE_TEX,
16389 OPCODE_TXB,
16390 OPCODE_TXD,
16391 OPCODE_TXL,
16392 OPCODE_TXP,
16393 OPCODE_TXP_NV,
16394 OPCODE_TRUNC,
16395 OPCODE_UP2H,
16396 OPCODE_UP2US,
16397 OPCODE_UP4B,
16398 OPCODE_UP4UB,
16399 OPCODE_X2D,
16400 OPCODE_XOR,
16401 OPCODE_XPD,
16402 MAX_OPCODE
16403} gl_inst_opcode;
16404# 256 "../../src/mesa/program/prog_instruction.h"
16405struct prog_src_register
16406{
16407 GLuint File:4;
16408 GLint Index:(12 +1);
16409
16410
16411 GLuint Swizzle:12;
16412 GLuint RelAddr:1;
16413
16414
16415 GLuint Abs:1;
16416
16417
16418
16419
16420
16421
16422 GLuint Negate:4;
16423# 285 "../../src/mesa/program/prog_instruction.h"
16424 GLuint HasIndex2:1;
16425 GLuint RelAddr2:1;
16426 GLint Index2:(12 +1);
16427
16428
16429};
16430
16431
16432
16433
16434
16435struct prog_dst_register
16436{
16437 GLuint File:4;
16438 GLuint Index:12;
16439 GLuint WriteMask:4;
16440 GLuint RelAddr:1;
16441# 317 "../../src/mesa/program/prog_instruction.h"
16442 GLuint CondMask:4;
16443
16444
16445
16446
16447 GLuint CondSwizzle:12;
16448
16449
16450
16451
16452
16453
16454
16455 GLuint CondSrc:1;
16456
16457};
16458
16459
16460
16461
16462
16463struct prog_instruction
16464{
16465 gl_inst_opcode Opcode;
16466 struct prog_src_register SrcReg[3];
16467 struct prog_dst_register DstReg;
16468# 352 "../../src/mesa/program/prog_instruction.h"
16469 GLuint CondUpdate:1;
16470# 366 "../../src/mesa/program/prog_instruction.h"
16471 GLuint CondDst:1;
16472# 377 "../../src/mesa/program/prog_instruction.h"
16473 GLuint SaturateMode:2;
16474
16475
16476
16477
16478
16479
16480
16481 GLuint Precision:3;
16482
16483
16484
16485
16486
16487
16488 GLuint TexSrcUnit:5;
16489
16490
16491 GLuint TexSrcTarget:3;
16492
16493
16494 GLuint TexShadow:1;
16495# 408 "../../src/mesa/program/prog_instruction.h"
16496 GLint BranchTarget;
16497
16498
16499 const char *Comment;
16500
16501
16502 void *Data;
16503
16504
16505 GLint Aux;
16506};
16507
16508
16509extern void
16510_mesa_init_instructions(struct prog_instruction *inst, GLuint count);
16511
16512extern struct prog_instruction *
16513_mesa_alloc_instructions(GLuint numInst);
16514
16515extern struct prog_instruction *
16516_mesa_realloc_instructions(struct prog_instruction *oldInst,
16517 GLuint numOldInst, GLuint numNewInst);
16518
16519extern struct prog_instruction *
16520_mesa_copy_instructions(struct prog_instruction *dest,
16521 const struct prog_instruction *src, GLuint n);
16522
16523extern void
16524_mesa_free_instructions(struct prog_instruction *inst, GLuint count);
16525
16526extern GLuint
16527_mesa_num_inst_src_regs(gl_inst_opcode opcode);
16528
16529extern GLuint
16530_mesa_num_inst_dst_regs(gl_inst_opcode opcode);
16531
16532extern GLboolean
16533_mesa_is_tex_instruction(gl_inst_opcode opcode);
16534
16535extern GLboolean
16536_mesa_check_soa_dependencies(const struct prog_instruction *inst);
16537
16538extern const char *
16539_mesa_opcode_string(gl_inst_opcode opcode);
16540# 40 "swrast/s_triangle.c" 2
16541
16542# 1 "swrast/s_aatriangle.h" 1
16543# 31 "swrast/s_aatriangle.h"
16544struct gl_context;
16545
16546
16547extern void
16548_swrast_set_aa_triangle_function(struct gl_context *ctx);
16549# 42 "swrast/s_triangle.c" 2
16550# 1 "swrast/s_context.h" 1
16551# 46 "swrast/s_context.h"
16552# 1 "../../src/mesa/main/compiler.h" 1
16553# 47 "swrast/s_context.h" 2
16554
16555# 1 "../../src/mesa/program/prog_execute.h" 1
16556# 32 "../../src/mesa/program/prog_execute.h"
16557typedef void (*FetchTexelLodFunc)(struct gl_context *ctx, const GLfloat texcoord[4],
16558 GLfloat lambda, GLuint unit, GLfloat color[4]);
16559
16560typedef void (*FetchTexelDerivFunc)(struct gl_context *ctx, const GLfloat texcoord[4],
16561 const GLfloat texdx[4],
16562 const GLfloat texdy[4],
16563 GLfloat lodBias,
16564 GLuint unit, GLfloat color[4]);
16565
16566
16567
16568
16569
16570struct gl_program_machine
16571{
16572 const struct gl_program *CurProgram;
16573
16574
16575 GLfloat (*Attribs)[16384][4];
16576 GLfloat (*DerivX)[4];
16577 GLfloat (*DerivY)[4];
16578 GLuint NumDeriv;
16579 GLuint CurElement;
16580
16581
16582 GLfloat VertAttribs[VERT_ATTRIB_MAX][4];
16583
16584 GLfloat Temporaries[256][4];
16585 GLfloat Outputs[64][4];
16586 GLfloat (*EnvParams)[4];
16587 GLuint CondCodes[4];
16588 GLint AddressReg[2][4];
16589 GLfloat SystemValues[SYSTEM_VALUE_MAX][4];
16590
16591 const GLubyte *Samplers;
16592
16593 GLuint CallStack[8];
16594 GLuint StackDepth;
16595
16596
16597 FetchTexelLodFunc FetchTexelLod;
16598 FetchTexelDerivFunc FetchTexelDeriv;
16599};
16600
16601
16602extern void
16603_mesa_get_program_register(struct gl_context *ctx, gl_register_file file,
16604 GLuint index, GLfloat val[4]);
16605
16606extern GLboolean
16607_mesa_execute_program(struct gl_context *ctx,
16608 const struct gl_program *program,
16609 struct gl_program_machine *machine);
16610# 49 "swrast/s_context.h" 2
16611# 1 "swrast/swrast.h" 1
16612# 71 "swrast/swrast.h"
16613typedef struct {
16614 GLfloat attrib[FRAG_ATTRIB_MAX][4];
16615 GLchan color[4];
16616 GLfloat pointSize;
16617} SWvertex;
16618
16619
16620
16621
16622
16623struct swrast_device_driver;
16624
16625
16626
16627
16628
16629extern GLboolean
16630_swrast_CreateContext( struct gl_context *ctx );
16631
16632extern void
16633_swrast_DestroyContext( struct gl_context *ctx );
16634
16635
16636
16637extern struct swrast_device_driver *
16638_swrast_GetDeviceDriverReference( struct gl_context *ctx );
16639
16640extern void
16641_swrast_Bitmap( struct gl_context *ctx,
16642 GLint px, GLint py,
16643 GLsizei width, GLsizei height,
16644 const struct gl_pixelstore_attrib *unpack,
16645 const GLubyte *bitmap );
16646
16647extern void
16648_swrast_CopyPixels( struct gl_context *ctx,
16649 GLint srcx, GLint srcy,
16650 GLint destx, GLint desty,
16651 GLsizei width, GLsizei height,
16652 GLenum type );
16653
16654extern void
16655_swrast_DrawPixels( struct gl_context *ctx,
16656 GLint x, GLint y,
16657 GLsizei width, GLsizei height,
16658 GLenum format, GLenum type,
16659 const struct gl_pixelstore_attrib *unpack,
16660 const GLvoid *pixels );
16661
16662extern void
16663_swrast_ReadPixels( struct gl_context *ctx,
16664 GLint x, GLint y, GLsizei width, GLsizei height,
16665 GLenum format, GLenum type,
16666 const struct gl_pixelstore_attrib *unpack,
16667 GLvoid *pixels );
16668
16669extern void
16670_swrast_BlitFramebuffer(struct gl_context *ctx,
16671 GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
16672 GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1,
16673 GLbitfield mask, GLenum filter);
16674
16675extern void
16676_swrast_Clear(struct gl_context *ctx, GLbitfield buffers);
16677
16678extern void
16679_swrast_Accum(struct gl_context *ctx, GLenum op, GLfloat value);
16680
16681
16682
16683
16684
16685extern void
16686_swrast_ResetLineStipple( struct gl_context *ctx );
16687
16688
16689
16690
16691
16692extern void
16693_swrast_SetFacing(struct gl_context *ctx, GLuint facing);
16694
16695
16696
16697
16698
16699
16700extern void
16701_swrast_Point( struct gl_context *ctx, const SWvertex *v );
16702
16703extern void
16704_swrast_Line( struct gl_context *ctx, const SWvertex *v0, const SWvertex *v1 );
16705
16706extern void
16707_swrast_Triangle( struct gl_context *ctx, const SWvertex *v0,
16708 const SWvertex *v1, const SWvertex *v2 );
16709
16710extern void
16711_swrast_Quad( struct gl_context *ctx,
16712 const SWvertex *v0, const SWvertex *v1,
16713 const SWvertex *v2, const SWvertex *v3);
16714
16715extern void
16716_swrast_flush( struct gl_context *ctx );
16717
16718extern void
16719_swrast_render_primitive( struct gl_context *ctx, GLenum mode );
16720
16721extern void
16722_swrast_render_start( struct gl_context *ctx );
16723
16724extern void
16725_swrast_render_finish( struct gl_context *ctx );
16726
16727
16728
16729extern void
16730_swrast_InvalidateState( struct gl_context *ctx, GLbitfield new_state );
16731
16732
16733
16734extern void
16735_swrast_allow_vertex_fog( struct gl_context *ctx, GLboolean value );
16736
16737extern void
16738_swrast_allow_pixel_fog( struct gl_context *ctx, GLboolean value );
16739
16740
16741
16742extern void
16743_swrast_print_vertex( struct gl_context *ctx, const SWvertex *v );
16744
16745
16746
16747extern void
16748_swrast_eject_texture_images(struct gl_context *ctx);
16749
16750
16751extern void
16752_swrast_render_texture(struct gl_context *ctx,
16753 struct gl_framebuffer *fb,
16754 struct gl_renderbuffer_attachment *att);
16755
16756extern void
16757_swrast_finish_render_texture(struct gl_context *ctx,
16758 struct gl_renderbuffer_attachment *att);
16759# 225 "swrast/swrast.h"
16760struct swrast_device_driver {
16761# 236 "swrast/swrast.h"
16762 void (*SpanRenderStart)(struct gl_context *ctx);
16763 void (*SpanRenderFinish)(struct gl_context *ctx);
16764};
16765# 50 "swrast/s_context.h" 2
16766# 1 "swrast/s_span.h" 1
16767# 35 "swrast/s_span.h"
16768struct gl_context;
16769struct gl_renderbuffer;
16770# 66 "swrast/s_span.h"
16771typedef struct sw_span_arrays
16772{
16773
16774
16775
16776
16777 GLfloat attribs[FRAG_ATTRIB_MAX][16384][4];
16778
16779
16780 GLubyte mask[16384];
16781
16782 GLenum ChanType;
16783
16784
16785
16786 GLubyte rgba8[16384][4];
16787 GLushort rgba16[16384][4];
16788 GLchan (*rgba)[4];
16789 GLint x[16384];
16790 GLint y[16384];
16791 GLuint z[16384];
16792 GLuint index[16384];
16793 GLfloat lambda[8][16384];
16794 GLfloat coverage[16384];
16795
16796} SWspanarrays;
16797# 106 "swrast/s_span.h"
16798typedef struct sw_span
16799{
16800
16801 GLint x, y;
16802
16803
16804 GLuint end;
16805
16806
16807 GLuint leftClip;
16808
16809
16810 GLboolean writeAll;
16811
16812
16813 GLenum primitive;
16814
16815
16816 GLuint facing;
16817
16818
16819
16820
16821
16822 GLbitfield interpMask;
16823
16824
16825 GLfloat attrStart[FRAG_ATTRIB_MAX][4];
16826 GLfloat attrStepX[FRAG_ATTRIB_MAX][4];
16827 GLfloat attrStepY[FRAG_ATTRIB_MAX][4];
16828
16829
16830
16831
16832
16833
16834 GLfixed red, redStep;
16835 GLfixed green, greenStep;
16836 GLfixed blue, blueStep;
16837 GLfixed alpha, alphaStep;
16838 GLfixed index, indexStep;
16839 GLfixed z, zStep;
16840 GLfixed intTex[2], intTexStep[2];
16841
16842
16843
16844
16845
16846 GLbitfield arrayMask;
16847
16848 GLbitfield arrayAttribs;
16849
16850
16851
16852
16853
16854
16855
16856 SWspanarrays *array;
16857} SWspan;
16858# 183 "swrast/s_span.h"
16859extern void
16860_swrast_span_default_attribs(struct gl_context *ctx, SWspan *span);
16861
16862extern void
16863_swrast_span_interpolate_z( const struct gl_context *ctx, SWspan *span );
16864
16865extern GLfloat
16866_swrast_compute_lambda(GLfloat dsdx, GLfloat dsdy, GLfloat dtdx, GLfloat dtdy,
16867 GLfloat dqdx, GLfloat dqdy, GLfloat texW, GLfloat texH,
16868 GLfloat s, GLfloat t, GLfloat q, GLfloat invQ);
16869
16870
16871extern void
16872_swrast_write_rgba_span( struct gl_context *ctx, SWspan *span);
16873
16874
16875extern void
16876_swrast_read_rgba_span(struct gl_context *ctx, struct gl_renderbuffer *rb,
16877 GLuint n, GLint x, GLint y, GLenum type, GLvoid *rgba);
16878
16879extern void
16880_swrast_get_values(struct gl_context *ctx, struct gl_renderbuffer *rb,
16881 GLuint count, const GLint x[], const GLint y[],
16882 void *values, GLuint valueSize);
16883
16884extern void
16885_swrast_put_row(struct gl_context *ctx, struct gl_renderbuffer *rb,
16886 GLuint count, GLint x, GLint y,
16887 const GLvoid *values, GLuint valueSize);
16888
16889extern void
16890_swrast_get_row(struct gl_context *ctx, struct gl_renderbuffer *rb,
16891 GLuint count, GLint x, GLint y,
16892 GLvoid *values, GLuint valueSize);
16893
16894
16895extern void *
16896_swrast_get_dest_rgba(struct gl_context *ctx, struct gl_renderbuffer *rb,
16897 SWspan *span);
16898# 51 "swrast/s_context.h" 2
16899
16900
16901typedef void (*texture_sample_func)(struct gl_context *ctx,
16902 const struct gl_texture_object *tObj,
16903 GLuint n, const GLfloat texcoords[][4],
16904 const GLfloat lambda[], GLfloat rgba[][4]);
16905
16906typedef void ( * blend_func)( struct gl_context *ctx, GLuint n,
16907 const GLubyte mask[],
16908 GLvoid *src, const GLvoid *dst,
16909 GLenum chanType);
16910
16911typedef void (*swrast_point_func)( struct gl_context *ctx, const SWvertex *);
16912
16913typedef void (*swrast_line_func)( struct gl_context *ctx,
16914 const SWvertex *, const SWvertex *);
16915
16916typedef void (*swrast_tri_func)( struct gl_context *ctx, const SWvertex *,
16917 const SWvertex *, const SWvertex *);
16918
16919
16920typedef void (*validate_texture_image_func)(struct gl_context *ctx,
16921 struct gl_texture_object *texObj,
16922 GLuint face, GLuint level);
16923# 116 "swrast/s_context.h"
16924typedef struct
16925{
16926
16927
16928 struct swrast_device_driver Driver;
16929
16930
16931
16932
16933 GLboolean AllowVertexFog;
16934 GLboolean AllowPixelFog;
16935
16936
16937
16938
16939 GLbitfield _RasterMask;
16940 GLfloat _BackfaceSign;
16941 GLfloat _BackfaceCullSign;
16942 GLboolean _PreferPixelFog;
16943 GLboolean _TextureCombinePrimary;
16944 GLboolean _FogEnabled;
16945 GLboolean _DeferredTexture;
16946
16947
16948 GLuint _ActiveAttribs[FRAG_ATTRIB_MAX];
16949
16950 GLbitfield _ActiveAttribMask;
16951
16952 GLuint _NumActiveAttribs;
16953
16954 GLenum _InterpMode[FRAG_ATTRIB_MAX];
16955
16956
16957
16958 GLboolean _IntegerAccumMode;
16959 GLfloat _IntegerAccumScaler;
16960
16961
16962
16963 GLuint StippleCounter;
16964 GLuint PointLineFacing;
16965 GLbitfield NewState;
16966 GLuint StateChanges;
16967 GLenum Primitive;
16968 GLboolean SpecularVertexAdd;
16969
16970 void (*InvalidateState)( struct gl_context *ctx, GLbitfield new_state );
16971
16972
16973
16974
16975
16976
16977 GLbitfield InvalidatePointMask;
16978 GLbitfield InvalidateLineMask;
16979 GLbitfield InvalidateTriangleMask;
16980
16981
16982
16983
16984
16985
16986
16987 void (*choose_point)( struct gl_context * );
16988 void (*choose_line)( struct gl_context * );
16989 void (*choose_triangle)( struct gl_context * );
16990
16991
16992
16993
16994
16995
16996 swrast_point_func Point;
16997 swrast_line_func Line;
16998 swrast_tri_func Triangle;
16999
17000
17001
17002
17003
17004
17005
17006 swrast_point_func SpecPoint;
17007 swrast_line_func SpecLine;
17008 swrast_tri_func SpecTriangle;
17009# 209 "swrast/s_context.h"
17010 SWspanarrays *SpanArrays;
17011 SWspanarrays *ZoomedArrays;
17012
17013
17014
17015
17016 SWspan PointSpan;
17017
17018
17019
17020 blend_func BlendFunc;
17021 texture_sample_func TextureSample[16];
17022
17023
17024
17025
17026 GLfloat *TexelBuffer;
17027
17028 validate_texture_image_func ValidateTextureImage;
17029
17030
17031 struct gl_program_machine FragProgMachine;
17032
17033} SWcontext;
17034
17035
17036extern void
17037_swrast_validate_derived( struct gl_context *ctx );
17038
17039extern void
17040_swrast_update_texture_samplers(struct gl_context *ctx);
17041
17042
17043
17044static __inline__ SWcontext *
17045SWRAST_CONTEXT(struct gl_context *ctx)
17046{
17047 return (SWcontext *) ctx->swrast_context;
17048}
17049
17050
17051static __inline__ const SWcontext *
17052CONST_SWRAST_CONTEXT(const struct gl_context *ctx)
17053{
17054 return (const SWcontext *) ctx->swrast_context;
17055}
17056
17057
17058
17059
17060
17061
17062
17063static __inline__ void
17064swrast_render_start(struct gl_context *ctx)
17065{
17066 SWcontext *swrast = SWRAST_CONTEXT(ctx);
17067 if (swrast->Driver.SpanRenderStart)
17068 swrast->Driver.SpanRenderStart(ctx);
17069}
17070
17071
17072
17073static __inline__ void
17074swrast_render_finish(struct gl_context *ctx)
17075{
17076 SWcontext *swrast = SWRAST_CONTEXT(ctx);
17077 if (swrast->Driver.SpanRenderFinish)
17078 swrast->Driver.SpanRenderFinish(ctx);
17079}
17080# 43 "swrast/s_triangle.c" 2
17081# 1 "swrast/s_feedback.h" 1
17082# 34 "swrast/s_feedback.h"
17083extern void _swrast_feedback_point( struct gl_context *ctx, const SWvertex *v );
17084
17085extern void _swrast_feedback_line( struct gl_context *ctx,
17086 const SWvertex *v1, const SWvertex *v2 );
17087
17088extern void _swrast_feedback_triangle( struct gl_context *ctx, const SWvertex *v0,
17089 const SWvertex *v1, const SWvertex *v2 );
17090
17091extern void _swrast_select_point( struct gl_context *ctx, const SWvertex *v );
17092
17093extern void _swrast_select_line( struct gl_context *ctx,
17094 const SWvertex *v1, const SWvertex *v2 );
17095
17096extern void _swrast_select_triangle( struct gl_context *ctx, const SWvertex *v0,
17097 const SWvertex *v1, const SWvertex *v2 );
17098# 44 "swrast/s_triangle.c" 2
17099
17100# 1 "swrast/s_triangle.h" 1
17101# 34 "swrast/s_triangle.h"
17102extern GLboolean
17103_swrast_culltriangle( struct gl_context *ctx,
17104 const SWvertex *v0,
17105 const SWvertex *v1,
17106 const SWvertex *v2);
17107
17108extern void
17109_swrast_choose_triangle( struct gl_context *ctx );
17110
17111extern void
17112_swrast_add_spec_terms_triangle( struct gl_context *ctx,
17113 const SWvertex *v0,
17114 const SWvertex *v1,
17115 const SWvertex *v2 );
17116# 46 "swrast/s_triangle.c" 2
17117
17118
17119
17120
17121
17122
17123GLboolean
17124_swrast_culltriangle( struct gl_context *ctx,
17125 const SWvertex *v0,
17126 const SWvertex *v1,
17127 const SWvertex *v2 )
17128{
17129 SWcontext *swrast = SWRAST_CONTEXT(ctx);
17130 GLfloat ex = v1->attrib[FRAG_ATTRIB_WPOS][0] - v0->attrib[FRAG_ATTRIB_WPOS][0];
17131 GLfloat ey = v1->attrib[FRAG_ATTRIB_WPOS][1] - v0->attrib[FRAG_ATTRIB_WPOS][1];
17132 GLfloat fx = v2->attrib[FRAG_ATTRIB_WPOS][0] - v0->attrib[FRAG_ATTRIB_WPOS][0];
17133 GLfloat fy = v2->attrib[FRAG_ATTRIB_WPOS][1] - v0->attrib[FRAG_ATTRIB_WPOS][1];
17134 GLfloat c = ex*fy-ey*fx;
17135
17136 if (c * swrast->_BackfaceSign * swrast->_BackfaceCullSign <= 0.0F)
17137 return 0x0;
17138
17139 return 0x1;
17140}
17141# 91 "swrast/s_triangle.c"
17142# 1 "swrast/s_tritemp.h" 1
17143# 111 "swrast/s_tritemp.h"
17144static void flat_rgba_triangle(struct gl_context *ctx, const SWvertex *v0,
17145 const SWvertex *v1,
17146 const SWvertex *v2 )
17147{
17148 typedef struct {
17149 const SWvertex *v0, *v1;
17150 GLfloat dx;
17151 GLfloat dy;
17152 GLfloat dxdy;
17153 GLfixed fdxdy;
17154 GLfloat adjy;
17155 GLfixed fsx;
17156 GLfixed fsy;
17157 GLfixed fx0;
17158 GLint lines;
17159 } EdgeT;
17160
17161 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
17162
17163 const GLint depthBits = ctx->DrawBuffer->Visual.depthBits;
17164 const GLint fixedToDepthShift = depthBits <= 16 ? 11 : 0;
17165 const GLfloat maxDepth = ctx->DrawBuffer->_DepthMaxF;
17166
17167
17168 EdgeT eMaj, eTop, eBot;
17169 GLfloat oneOverArea;
17170 const SWvertex *vMin, *vMid, *vMax;
17171 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
17172 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
17173 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
17174
17175 SWspan span;
17176
17177 (void) swrast;
17178
17179 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
17180 span.y = 0;
17181
17182
17183 (void) fixedToDepthShift;
17184# 172 "swrast/s_tritemp.h"
17185 {
17186 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17187 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17188 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17189 if (fy0 <= fy1) {
17190 if (fy1 <= fy2) {
17191
17192 vMin = v0; vMid = v1; vMax = v2;
17193 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
17194 }
17195 else if (fy2 <= fy0) {
17196
17197 vMin = v2; vMid = v0; vMax = v1;
17198 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
17199 }
17200 else {
17201
17202 vMin = v0; vMid = v2; vMax = v1;
17203 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
17204 bf = -bf;
17205 }
17206 }
17207 else {
17208 if (fy0 <= fy2) {
17209
17210 vMin = v1; vMid = v0; vMax = v2;
17211 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
17212 bf = -bf;
17213 }
17214 else if (fy2 <= fy1) {
17215
17216 vMin = v2; vMid = v1; vMax = v0;
17217 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
17218 bf = -bf;
17219 }
17220 else {
17221
17222 vMin = v1; vMid = v2; vMax = v0;
17223 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
17224 }
17225 }
17226
17227
17228 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17229 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17230 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17231 }
17232
17233
17234 eMaj.v0 = vMin; eMaj.v1 = vMax;
17235 eTop.v0 = vMid; eTop.v1 = vMax;
17236 eBot.v0 = vMin; eBot.v1 = vMid;
17237
17238
17239 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
17240 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
17241 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
17242 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
17243 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
17244 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
17245
17246
17247 {
17248 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
17249
17250 if (IS_INF_OR_NAN(area) || area == 0.0F)
17251 return;
17252
17253 if (area * bf * swrast->_BackfaceCullSign < 0.0)
17254 return;
17255
17256 oneOverArea = 1.0F / area;
17257
17258
17259 span.facing = oneOverArea * bf > 0.0F;
17260 }
17261
17262
17263 {
17264 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17265 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
17266 if (eMaj.lines > 0) {
17267 eMaj.dxdy = eMaj.dx / eMaj.dy;
17268 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
17269 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
17270 eMaj.fx0 = vMin_fx;
17271 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
17272 }
17273 else {
17274 return;
17275 }
17276
17277 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17278 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
17279 if (eTop.lines > 0) {
17280 eTop.dxdy = eTop.dx / eTop.dy;
17281 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
17282 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
17283 eTop.fx0 = vMid_fx;
17284 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
17285 }
17286
17287 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17288 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
17289 if (eBot.lines > 0) {
17290 eBot.dxdy = eBot.dx / eBot.dy;
17291 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
17292 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
17293 eBot.fx0 = vMin_fx;
17294 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
17295 }
17296 }
17297# 319 "swrast/s_tritemp.h"
17298 {
17299 GLint scan_from_left_to_right;
17300
17301
17302
17303
17304
17305 ; ; span.interpMask |= 0x01; span.red = ((v2->color[0]) << 11); span.green = ((v2->color[1]) << 11); span.blue = ((v2->color[2]) << 11); span.alpha = ((v2->color[3]) << 11); span.redStep = 0; span.greenStep = 0; span.blueStep = 0; span.alphaStep = 0;
17306
17307
17308 scan_from_left_to_right = (oneOverArea < 0.0F);
17309
17310
17311
17312
17313 span.interpMask |= 0x02;
17314 {
17315 GLfloat eMaj_dz = vMax->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
17316 GLfloat eBot_dz = vMid->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
17317 span.attrStepX[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj_dz * eBot.dy - eMaj.dy * eBot_dz);
17318 if (span.attrStepX[FRAG_ATTRIB_WPOS][2] > maxDepth ||
17319 span.attrStepX[FRAG_ATTRIB_WPOS][2] < -maxDepth) {
17320
17321 span.attrStepX[FRAG_ATTRIB_WPOS][2] = 0.0;
17322 span.attrStepY[FRAG_ATTRIB_WPOS][2] = 0.0;
17323 }
17324 else {
17325 span.attrStepY[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj.dx * eBot_dz - eMaj_dz * eBot.dx);
17326 }
17327 if (depthBits <= 16)
17328 span.zStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))));
17329 else
17330 span.zStep = (GLint) span.attrStepX[FRAG_ATTRIB_WPOS][2];
17331 }
17332# 488 "swrast/s_tritemp.h"
17333 {
17334 GLint subTriangle;
17335 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
17336 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
17337 GLfixed fError = 0, fdError = 0;
17338# 504 "swrast/s_tritemp.h"
17339 GLuint zLeft = 0;
17340 GLfixed fdzOuter = 0, fdzInner;
17341# 525 "swrast/s_tritemp.h"
17342 for (subTriangle=0; subTriangle<=1; subTriangle++) {
17343 EdgeT *eLeft, *eRight;
17344 int setupLeft, setupRight;
17345 int lines;
17346
17347 if (subTriangle==0) {
17348
17349 if (scan_from_left_to_right) {
17350 eLeft = &eMaj;
17351 eRight = &eBot;
17352 lines = eRight->lines;
17353 setupLeft = 1;
17354 setupRight = 1;
17355 }
17356 else {
17357 eLeft = &eBot;
17358 eRight = &eMaj;
17359 lines = eLeft->lines;
17360 setupLeft = 1;
17361 setupRight = 1;
17362 }
17363 }
17364 else {
17365
17366 if (scan_from_left_to_right) {
17367 eLeft = &eMaj;
17368 eRight = &eTop;
17369 lines = eRight->lines;
17370 setupLeft = 0;
17371 setupRight = 1;
17372 }
17373 else {
17374 eLeft = &eTop;
17375 eRight = &eMaj;
17376 lines = eLeft->lines;
17377 setupLeft = 1;
17378 setupRight = 0;
17379 }
17380 if (lines == 0)
17381 return;
17382 }
17383
17384 if (setupLeft && eLeft->lines > 0) {
17385 const SWvertex *vLower = eLeft->v0;
17386 const GLfixed fsy = eLeft->fsy;
17387 const GLfixed fsx = eLeft->fsx;
17388 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17389 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
17390 const GLfixed adjy = (GLfixed) eLeft->adjy;
17391 GLint idxOuter;
17392 GLfloat dxOuter;
17393 GLfixed fdxOuter;
17394
17395 fError = fx - fsx - (1 << 11);
17396 fxLeftEdge = fsx - 1;
17397 fdxLeftEdge = eLeft->fdxdy;
17398 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
17399 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
17400 idxOuter = ((fdxOuter) >> 11);
17401 dxOuter = (GLfloat) idxOuter;
17402 span.y = ((fsy) >> 11);
17403
17404
17405 (void) dxOuter;
17406 (void) adjx;
17407 (void) adjy;
17408 (void) vLower;
17409# 611 "swrast/s_tritemp.h"
17410 {
17411 GLfloat z0 = vLower->attrib[FRAG_ATTRIB_WPOS][2];
17412 if (depthBits <= 16) {
17413
17414 GLfloat tmp = (z0 * ((float) (1 << 11))
17415 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * adjx
17416 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * adjy) + (1 << (11 -1));
17417 if (tmp < 0xffffffff / 2)
17418 zLeft = (GLfixed) tmp;
17419 else
17420 zLeft = 0xffffffff / 2;
17421 fdzOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))))
17422 ;
17423 }
17424 else {
17425
17426 zLeft = (GLuint) (z0 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * ((adjx) * (1.0F / ((float) (1 << 11))))
17427 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * ((adjy) * (1.0F / ((float) (1 << 11)))));
17428 fdzOuter = (GLint) (span.attrStepY[FRAG_ATTRIB_WPOS][2] +
17429 dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]);
17430 }
17431
17432
17433
17434
17435
17436 }
17437# 722 "swrast/s_tritemp.h"
17438 }
17439
17440
17441 if (setupRight && eRight->lines>0) {
17442 fxRightEdge = eRight->fsx - 1;
17443 fdxRightEdge = eRight->fdxdy;
17444 }
17445
17446 if (lines==0) {
17447 continue;
17448 }
17449# 743 "swrast/s_tritemp.h"
17450 fdzInner = fdzOuter + span.zStep;
17451# 767 "swrast/s_tritemp.h"
17452 while (lines > 0) {
17453
17454
17455 const GLint right = ((fxRightEdge) >> 11);
17456 span.x = ((fxLeftEdge) >> 11);
17457 if (right <= span.x)
17458 span.end = 0;
17459 else
17460 span.end = right - span.x;
17461
17462
17463 span.z = zLeft;
17464# 807 "swrast/s_tritemp.h"
17465 if (span.end > 0 && span.y >= 0) {
17466 const GLint len = span.end - 1;
17467 (void) len;
17468# 818 "swrast/s_tritemp.h"
17469 {
17470 _swrast_write_rgba_span(ctx, &span);;
17471 }
17472 }
17473
17474
17475
17476
17477
17478
17479
17480 span.y++;
17481 lines--;
17482
17483 fxLeftEdge += fdxLeftEdge;
17484 fxRightEdge += fdxRightEdge;
17485
17486 fError += fdError;
17487 if (fError >= 0) {
17488 fError -= (1 << 11);
17489# 846 "swrast/s_tritemp.h"
17490 zLeft += fdzOuter;
17491# 869 "swrast/s_tritemp.h"
17492 }
17493 else {
17494
17495
17496
17497
17498
17499
17500
17501 zLeft += fdzInner;
17502# 901 "swrast/s_tritemp.h"
17503 }
17504 }
17505
17506 }
17507
17508 }
17509 }
17510}
17511# 92 "swrast/s_triangle.c" 2
17512# 109 "swrast/s_triangle.c"
17513# 1 "swrast/s_tritemp.h" 1
17514# 111 "swrast/s_tritemp.h"
17515static void smooth_rgba_triangle(struct gl_context *ctx, const SWvertex *v0,
17516 const SWvertex *v1,
17517 const SWvertex *v2 )
17518{
17519 typedef struct {
17520 const SWvertex *v0, *v1;
17521 GLfloat dx;
17522 GLfloat dy;
17523 GLfloat dxdy;
17524 GLfixed fdxdy;
17525 GLfloat adjy;
17526 GLfixed fsx;
17527 GLfixed fsy;
17528 GLfixed fx0;
17529 GLint lines;
17530 } EdgeT;
17531
17532 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
17533
17534 const GLint depthBits = ctx->DrawBuffer->Visual.depthBits;
17535 const GLint fixedToDepthShift = depthBits <= 16 ? 11 : 0;
17536 const GLfloat maxDepth = ctx->DrawBuffer->_DepthMaxF;
17537
17538
17539 EdgeT eMaj, eTop, eBot;
17540 GLfloat oneOverArea;
17541 const SWvertex *vMin, *vMid, *vMax;
17542 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
17543 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
17544 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
17545
17546 SWspan span;
17547
17548 (void) swrast;
17549
17550 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
17551 span.y = 0;
17552
17553
17554 (void) fixedToDepthShift;
17555# 172 "swrast/s_tritemp.h"
17556 {
17557 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17558 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17559 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17560 if (fy0 <= fy1) {
17561 if (fy1 <= fy2) {
17562
17563 vMin = v0; vMid = v1; vMax = v2;
17564 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
17565 }
17566 else if (fy2 <= fy0) {
17567
17568 vMin = v2; vMid = v0; vMax = v1;
17569 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
17570 }
17571 else {
17572
17573 vMin = v0; vMid = v2; vMax = v1;
17574 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
17575 bf = -bf;
17576 }
17577 }
17578 else {
17579 if (fy0 <= fy2) {
17580
17581 vMin = v1; vMid = v0; vMax = v2;
17582 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
17583 bf = -bf;
17584 }
17585 else if (fy2 <= fy1) {
17586
17587 vMin = v2; vMid = v1; vMax = v0;
17588 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
17589 bf = -bf;
17590 }
17591 else {
17592
17593 vMin = v1; vMid = v2; vMax = v0;
17594 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
17595 }
17596 }
17597
17598
17599 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17600 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17601 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
17602 }
17603
17604
17605 eMaj.v0 = vMin; eMaj.v1 = vMax;
17606 eTop.v0 = vMid; eTop.v1 = vMax;
17607 eBot.v0 = vMin; eBot.v1 = vMid;
17608
17609
17610 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
17611 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
17612 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
17613 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
17614 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
17615 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
17616
17617
17618 {
17619 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
17620
17621 if (IS_INF_OR_NAN(area) || area == 0.0F)
17622 return;
17623
17624 if (area * bf * swrast->_BackfaceCullSign < 0.0)
17625 return;
17626
17627 oneOverArea = 1.0F / area;
17628
17629
17630 span.facing = oneOverArea * bf > 0.0F;
17631 }
17632
17633
17634 {
17635 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17636 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
17637 if (eMaj.lines > 0) {
17638 eMaj.dxdy = eMaj.dx / eMaj.dy;
17639 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
17640 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
17641 eMaj.fx0 = vMin_fx;
17642 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
17643 }
17644 else {
17645 return;
17646 }
17647
17648 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17649 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
17650 if (eTop.lines > 0) {
17651 eTop.dxdy = eTop.dx / eTop.dy;
17652 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
17653 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
17654 eTop.fx0 = vMid_fx;
17655 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
17656 }
17657
17658 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17659 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
17660 if (eBot.lines > 0) {
17661 eBot.dxdy = eBot.dx / eBot.dy;
17662 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
17663 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
17664 eBot.fx0 = vMin_fx;
17665 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
17666 }
17667 }
17668# 319 "swrast/s_tritemp.h"
17669 {
17670 GLint scan_from_left_to_right;
17671
17672
17673
17674
17675
17676 { ; ; }
17677
17678
17679 scan_from_left_to_right = (oneOverArea < 0.0F);
17680
17681
17682
17683
17684 span.interpMask |= 0x02;
17685 {
17686 GLfloat eMaj_dz = vMax->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
17687 GLfloat eBot_dz = vMid->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
17688 span.attrStepX[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj_dz * eBot.dy - eMaj.dy * eBot_dz);
17689 if (span.attrStepX[FRAG_ATTRIB_WPOS][2] > maxDepth ||
17690 span.attrStepX[FRAG_ATTRIB_WPOS][2] < -maxDepth) {
17691
17692 span.attrStepX[FRAG_ATTRIB_WPOS][2] = 0.0;
17693 span.attrStepY[FRAG_ATTRIB_WPOS][2] = 0.0;
17694 }
17695 else {
17696 span.attrStepY[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj.dx * eBot_dz - eMaj_dz * eBot.dx);
17697 }
17698 if (depthBits <= 16)
17699 span.zStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))));
17700 else
17701 span.zStep = (GLint) span.attrStepX[FRAG_ATTRIB_WPOS][2];
17702 }
17703
17704
17705 span.interpMask |= 0x01;
17706 if (ctx->Light.ShadeModel == 0x1D01) {
17707 GLfloat eMaj_dr = (GLfloat) (vMax->color[0] - vMin->color[0]);
17708 GLfloat eBot_dr = (GLfloat) (vMid->color[0] - vMin->color[0]);
17709 GLfloat eMaj_dg = (GLfloat) (vMax->color[1] - vMin->color[1]);
17710 GLfloat eBot_dg = (GLfloat) (vMid->color[1] - vMin->color[1]);
17711 GLfloat eMaj_db = (GLfloat) (vMax->color[2] - vMin->color[2]);
17712 GLfloat eBot_db = (GLfloat) (vMid->color[2] - vMin->color[2]);
17713
17714 GLfloat eMaj_da = (GLfloat) (vMax->color[3] - vMin->color[3]);
17715 GLfloat eBot_da = (GLfloat) (vMid->color[3] - vMin->color[3]);
17716
17717 span.attrStepX[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj_dr * eBot.dy - eMaj.dy * eBot_dr);
17718 span.attrStepY[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
17719 span.attrStepX[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg);
17720 span.attrStepY[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
17721 span.attrStepX[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
17722 span.attrStepY[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
17723 span.redStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))));
17724 span.greenStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))));
17725 span.blueStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))));
17726
17727 span.attrStepX[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
17728 span.attrStepY[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj.dx * eBot_da - eMaj_da * eBot.dx);
17729 span.alphaStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))));
17730
17731 }
17732 else {
17733 ;
17734 span.interpMask |= 0x04;
17735 span.attrStepX[FRAG_ATTRIB_COL0][0] = span.attrStepY[FRAG_ATTRIB_COL0][0] = 0.0F;
17736 span.attrStepX[FRAG_ATTRIB_COL0][1] = span.attrStepY[FRAG_ATTRIB_COL0][1] = 0.0F;
17737 span.attrStepX[FRAG_ATTRIB_COL0][2] = span.attrStepY[FRAG_ATTRIB_COL0][2] = 0.0F;
17738 span.redStep = 0;
17739 span.greenStep = 0;
17740 span.blueStep = 0;
17741
17742 span.attrStepX[FRAG_ATTRIB_COL0][3] = span.attrStepY[FRAG_ATTRIB_COL0][3] = 0.0F;
17743 span.alphaStep = 0;
17744
17745 }
17746# 488 "swrast/s_tritemp.h"
17747 {
17748 GLint subTriangle;
17749 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
17750 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
17751 GLfixed fError = 0, fdError = 0;
17752# 504 "swrast/s_tritemp.h"
17753 GLuint zLeft = 0;
17754 GLfixed fdzOuter = 0, fdzInner;
17755
17756
17757 GLint rLeft = 0, fdrOuter = 0, fdrInner;
17758 GLint gLeft = 0, fdgOuter = 0, fdgInner;
17759 GLint bLeft = 0, fdbOuter = 0, fdbInner;
17760
17761
17762 GLint aLeft = 0, fdaOuter = 0, fdaInner;
17763# 525 "swrast/s_tritemp.h"
17764 for (subTriangle=0; subTriangle<=1; subTriangle++) {
17765 EdgeT *eLeft, *eRight;
17766 int setupLeft, setupRight;
17767 int lines;
17768
17769 if (subTriangle==0) {
17770
17771 if (scan_from_left_to_right) {
17772 eLeft = &eMaj;
17773 eRight = &eBot;
17774 lines = eRight->lines;
17775 setupLeft = 1;
17776 setupRight = 1;
17777 }
17778 else {
17779 eLeft = &eBot;
17780 eRight = &eMaj;
17781 lines = eLeft->lines;
17782 setupLeft = 1;
17783 setupRight = 1;
17784 }
17785 }
17786 else {
17787
17788 if (scan_from_left_to_right) {
17789 eLeft = &eMaj;
17790 eRight = &eTop;
17791 lines = eRight->lines;
17792 setupLeft = 0;
17793 setupRight = 1;
17794 }
17795 else {
17796 eLeft = &eTop;
17797 eRight = &eMaj;
17798 lines = eLeft->lines;
17799 setupLeft = 1;
17800 setupRight = 0;
17801 }
17802 if (lines == 0)
17803 return;
17804 }
17805
17806 if (setupLeft && eLeft->lines > 0) {
17807 const SWvertex *vLower = eLeft->v0;
17808 const GLfixed fsy = eLeft->fsy;
17809 const GLfixed fsx = eLeft->fsx;
17810 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
17811 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
17812 const GLfixed adjy = (GLfixed) eLeft->adjy;
17813 GLint idxOuter;
17814 GLfloat dxOuter;
17815 GLfixed fdxOuter;
17816
17817 fError = fx - fsx - (1 << 11);
17818 fxLeftEdge = fsx - 1;
17819 fdxLeftEdge = eLeft->fdxdy;
17820 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
17821 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
17822 idxOuter = ((fdxOuter) >> 11);
17823 dxOuter = (GLfloat) idxOuter;
17824 span.y = ((fsy) >> 11);
17825
17826
17827 (void) dxOuter;
17828 (void) adjx;
17829 (void) adjy;
17830 (void) vLower;
17831# 611 "swrast/s_tritemp.h"
17832 {
17833 GLfloat z0 = vLower->attrib[FRAG_ATTRIB_WPOS][2];
17834 if (depthBits <= 16) {
17835
17836 GLfloat tmp = (z0 * ((float) (1 << 11))
17837 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * adjx
17838 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * adjy) + (1 << (11 -1));
17839 if (tmp < 0xffffffff / 2)
17840 zLeft = (GLfixed) tmp;
17841 else
17842 zLeft = 0xffffffff / 2;
17843 fdzOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))))
17844 ;
17845 }
17846 else {
17847
17848 zLeft = (GLuint) (z0 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * ((adjx) * (1.0F / ((float) (1 << 11))))
17849 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * ((adjy) * (1.0F / ((float) (1 << 11)))));
17850 fdzOuter = (GLint) (span.attrStepY[FRAG_ATTRIB_WPOS][2] +
17851 dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]);
17852 }
17853
17854
17855
17856
17857
17858 }
17859
17860
17861 if (ctx->Light.ShadeModel == 0x1D01) {
17862 rLeft = (GLint)(((vLower->color[0]) << 11)
17863 + span.attrStepX[FRAG_ATTRIB_COL0][0] * adjx
17864 + span.attrStepY[FRAG_ATTRIB_COL0][0] * adjy) + (1 << (11 -1));
17865 gLeft = (GLint)(((vLower->color[1]) << 11)
17866 + span.attrStepX[FRAG_ATTRIB_COL0][1] * adjx
17867 + span.attrStepY[FRAG_ATTRIB_COL0][1] * adjy) + (1 << (11 -1));
17868 bLeft = (GLint)(((vLower->color[2]) << 11)
17869 + span.attrStepX[FRAG_ATTRIB_COL0][2] * adjx
17870 + span.attrStepY[FRAG_ATTRIB_COL0][2] * adjy) + (1 << (11 -1));
17871 fdrOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))))
17872 ;
17873 fdgOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))))
17874 ;
17875 fdbOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))))
17876 ;
17877
17878 aLeft = (GLint)(((vLower->color[3]) << 11)
17879 + span.attrStepX[FRAG_ATTRIB_COL0][3] * adjx
17880 + span.attrStepY[FRAG_ATTRIB_COL0][3] * adjy) + (1 << (11 -1));
17881 fdaOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))))
17882 ;
17883
17884 }
17885 else {
17886 ;
17887 rLeft = ((v2->color[0]) << 11);
17888 gLeft = ((v2->color[1]) << 11);
17889 bLeft = ((v2->color[2]) << 11);
17890 fdrOuter = fdgOuter = fdbOuter = 0;
17891
17892 aLeft = ((v2->color[3]) << 11);
17893 fdaOuter = 0;
17894
17895 }
17896# 722 "swrast/s_tritemp.h"
17897 }
17898
17899
17900 if (setupRight && eRight->lines>0) {
17901 fxRightEdge = eRight->fsx - 1;
17902 fdxRightEdge = eRight->fdxdy;
17903 }
17904
17905 if (lines==0) {
17906 continue;
17907 }
17908# 743 "swrast/s_tritemp.h"
17909 fdzInner = fdzOuter + span.zStep;
17910
17911
17912 fdrInner = fdrOuter + span.redStep;
17913 fdgInner = fdgOuter + span.greenStep;
17914 fdbInner = fdbOuter + span.blueStep;
17915
17916
17917 fdaInner = fdaOuter + span.alphaStep;
17918# 767 "swrast/s_tritemp.h"
17919 while (lines > 0) {
17920
17921
17922 const GLint right = ((fxRightEdge) >> 11);
17923 span.x = ((fxLeftEdge) >> 11);
17924 if (right <= span.x)
17925 span.end = 0;
17926 else
17927 span.end = right - span.x;
17928
17929
17930 span.z = zLeft;
17931
17932
17933 span.red = rLeft;
17934 span.green = gLeft;
17935 span.blue = bLeft;
17936
17937
17938 span.alpha = aLeft;
17939# 807 "swrast/s_tritemp.h"
17940 if (span.end > 0 && span.y >= 0) {
17941 const GLint len = span.end - 1;
17942 (void) len;
17943
17944 do { GLfixed endVal = span.red + (len) * span.redStep; if (endVal < 0) { span.red -= endVal; } if (span.red < 0) { span.red = 0; } } while (0);
17945 do { GLfixed endVal = span.green + (len) * span.greenStep; if (endVal < 0) { span.green -= endVal; } if (span.green < 0) { span.green = 0; } } while (0);
17946 do { GLfixed endVal = span.blue + (len) * span.blueStep; if (endVal < 0) { span.blue -= endVal; } if (span.blue < 0) { span.blue = 0; } } while (0);
17947
17948
17949 do { GLfixed endVal = span.alpha + (len) * span.alphaStep; if (endVal < 0) { span.alpha -= endVal; } if (span.alpha < 0) { span.alpha = 0; } } while (0);
17950
17951 {
17952 _swrast_write_rgba_span(ctx, &span);;
17953 }
17954 }
17955
17956
17957
17958
17959
17960
17961
17962 span.y++;
17963 lines--;
17964
17965 fxLeftEdge += fdxLeftEdge;
17966 fxRightEdge += fdxRightEdge;
17967
17968 fError += fdError;
17969 if (fError >= 0) {
17970 fError -= (1 << 11);
17971# 846 "swrast/s_tritemp.h"
17972 zLeft += fdzOuter;
17973
17974
17975 rLeft += fdrOuter;
17976 gLeft += fdgOuter;
17977 bLeft += fdbOuter;
17978
17979
17980 aLeft += fdaOuter;
17981# 869 "swrast/s_tritemp.h"
17982 }
17983 else {
17984
17985
17986
17987
17988
17989
17990
17991 zLeft += fdzInner;
17992
17993
17994 rLeft += fdrInner;
17995 gLeft += fdgInner;
17996 bLeft += fdbInner;
17997
17998
17999 aLeft += fdaInner;
18000# 901 "swrast/s_tritemp.h"
18001 }
18002 }
18003
18004 }
18005
18006 }
18007 }
18008}
18009# 110 "swrast/s_triangle.c" 2
18010# 159 "swrast/s_triangle.c"
18011# 1 "swrast/s_tritemp.h" 1
18012# 111 "swrast/s_tritemp.h"
18013static void simple_textured_triangle(struct gl_context *ctx, const SWvertex *v0,
18014 const SWvertex *v1,
18015 const SWvertex *v2 )
18016{
18017 typedef struct {
18018 const SWvertex *v0, *v1;
18019 GLfloat dx;
18020 GLfloat dy;
18021 GLfloat dxdy;
18022 GLfixed fdxdy;
18023 GLfloat adjy;
18024 GLfixed fsx;
18025 GLfixed fsy;
18026 GLfixed fx0;
18027 GLint lines;
18028 } EdgeT;
18029
18030 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
18031
18032
18033
18034
18035
18036
18037 EdgeT eMaj, eTop, eBot;
18038 GLfloat oneOverArea;
18039 const SWvertex *vMin, *vMid, *vMax;
18040 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
18041 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
18042 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
18043
18044 SWspan span;
18045
18046 (void) swrast;
18047
18048 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
18049 span.y = 0;
18050# 172 "swrast/s_tritemp.h"
18051 {
18052 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18053 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18054 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18055 if (fy0 <= fy1) {
18056 if (fy1 <= fy2) {
18057
18058 vMin = v0; vMid = v1; vMax = v2;
18059 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
18060 }
18061 else if (fy2 <= fy0) {
18062
18063 vMin = v2; vMid = v0; vMax = v1;
18064 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
18065 }
18066 else {
18067
18068 vMin = v0; vMid = v2; vMax = v1;
18069 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
18070 bf = -bf;
18071 }
18072 }
18073 else {
18074 if (fy0 <= fy2) {
18075
18076 vMin = v1; vMid = v0; vMax = v2;
18077 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
18078 bf = -bf;
18079 }
18080 else if (fy2 <= fy1) {
18081
18082 vMin = v2; vMid = v1; vMax = v0;
18083 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
18084 bf = -bf;
18085 }
18086 else {
18087
18088 vMin = v1; vMid = v2; vMax = v0;
18089 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
18090 }
18091 }
18092
18093
18094 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18095 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18096 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18097 }
18098
18099
18100 eMaj.v0 = vMin; eMaj.v1 = vMax;
18101 eTop.v0 = vMid; eTop.v1 = vMax;
18102 eBot.v0 = vMin; eBot.v1 = vMid;
18103
18104
18105 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
18106 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
18107 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
18108 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
18109 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
18110 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
18111
18112
18113 {
18114 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
18115
18116 if (IS_INF_OR_NAN(area) || area == 0.0F)
18117 return;
18118
18119 if (area * bf * swrast->_BackfaceCullSign < 0.0)
18120 return;
18121
18122 oneOverArea = 1.0F / area;
18123
18124
18125 span.facing = oneOverArea * bf > 0.0F;
18126 }
18127
18128
18129 {
18130 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18131 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
18132 if (eMaj.lines > 0) {
18133 eMaj.dxdy = eMaj.dx / eMaj.dy;
18134 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
18135 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
18136 eMaj.fx0 = vMin_fx;
18137 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
18138 }
18139 else {
18140 return;
18141 }
18142
18143 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18144 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
18145 if (eTop.lines > 0) {
18146 eTop.dxdy = eTop.dx / eTop.dy;
18147 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
18148 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
18149 eTop.fx0 = vMid_fx;
18150 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
18151 }
18152
18153 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18154 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
18155 if (eBot.lines > 0) {
18156 eBot.dxdy = eBot.dx / eBot.dy;
18157 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
18158 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
18159 eBot.fx0 = vMin_fx;
18160 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
18161 }
18162 }
18163# 319 "swrast/s_tritemp.h"
18164 {
18165 GLint scan_from_left_to_right;
18166
18167
18168
18169
18170
18171 struct gl_renderbuffer *rb = ctx->DrawBuffer->_ColorDrawBuffers[0]; const struct gl_texture_object *obj = ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; const struct gl_texture_image *texImg = obj->Image[0][obj->BaseLevel]; const GLfloat twidth = (GLfloat) texImg->Width; const GLfloat theight = (GLfloat) texImg->Height; const GLint twidth_log2 = texImg->WidthLog2; const GLubyte *texture = (const GLubyte *) texImg->Data; const GLint smask = texImg->Width - 1; const GLint tmask = texImg->Height - 1; ; if (!rb || !texture) { return; }
18172
18173
18174 scan_from_left_to_right = (oneOverArea < 0.0F);
18175# 398 "swrast/s_tritemp.h"
18176 {
18177 GLfloat eMaj_ds = (vMax->attrib[FRAG_ATTRIB_TEX0][0] - vMin->attrib[FRAG_ATTRIB_TEX0][0]) * twidth;
18178 GLfloat eBot_ds = (vMid->attrib[FRAG_ATTRIB_TEX0][0] - vMin->attrib[FRAG_ATTRIB_TEX0][0]) * twidth;
18179 GLfloat eMaj_dt = (vMax->attrib[FRAG_ATTRIB_TEX0][1] - vMin->attrib[FRAG_ATTRIB_TEX0][1]) * theight;
18180 GLfloat eBot_dt = (vMid->attrib[FRAG_ATTRIB_TEX0][1] - vMin->attrib[FRAG_ATTRIB_TEX0][1]) * theight;
18181 span.attrStepX[FRAG_ATTRIB_TEX0][0] = oneOverArea * (eMaj_ds * eBot.dy - eMaj.dy * eBot_ds);
18182 span.attrStepY[FRAG_ATTRIB_TEX0][0] = oneOverArea * (eMaj.dx * eBot_ds - eMaj_ds * eBot.dx);
18183 span.attrStepX[FRAG_ATTRIB_TEX0][1] = oneOverArea * (eMaj_dt * eBot.dy - eMaj.dy * eBot_dt);
18184 span.attrStepY[FRAG_ATTRIB_TEX0][1] = oneOverArea * (eMaj.dx * eBot_dt - eMaj_dt * eBot.dx);
18185 span.intTexStep[0] = (((int) ((((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) - 0.5F))));
18186 span.intTexStep[1] = (((int) ((((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) - 0.5F))));
18187 }
18188# 488 "swrast/s_tritemp.h"
18189 {
18190 GLint subTriangle;
18191 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
18192 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
18193 GLfixed fError = 0, fdError = 0;
18194# 516 "swrast/s_tritemp.h"
18195 GLfixed sLeft=0, dsOuter=0, dsInner;
18196 GLfixed tLeft=0, dtOuter=0, dtInner;
18197
18198
18199
18200
18201
18202
18203
18204 for (subTriangle=0; subTriangle<=1; subTriangle++) {
18205 EdgeT *eLeft, *eRight;
18206 int setupLeft, setupRight;
18207 int lines;
18208
18209 if (subTriangle==0) {
18210
18211 if (scan_from_left_to_right) {
18212 eLeft = &eMaj;
18213 eRight = &eBot;
18214 lines = eRight->lines;
18215 setupLeft = 1;
18216 setupRight = 1;
18217 }
18218 else {
18219 eLeft = &eBot;
18220 eRight = &eMaj;
18221 lines = eLeft->lines;
18222 setupLeft = 1;
18223 setupRight = 1;
18224 }
18225 }
18226 else {
18227
18228 if (scan_from_left_to_right) {
18229 eLeft = &eMaj;
18230 eRight = &eTop;
18231 lines = eRight->lines;
18232 setupLeft = 0;
18233 setupRight = 1;
18234 }
18235 else {
18236 eLeft = &eTop;
18237 eRight = &eMaj;
18238 lines = eLeft->lines;
18239 setupLeft = 1;
18240 setupRight = 0;
18241 }
18242 if (lines == 0)
18243 return;
18244 }
18245
18246 if (setupLeft && eLeft->lines > 0) {
18247 const SWvertex *vLower = eLeft->v0;
18248 const GLfixed fsy = eLeft->fsy;
18249 const GLfixed fsx = eLeft->fsx;
18250 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18251 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
18252 const GLfixed adjy = (GLfixed) eLeft->adjy;
18253 GLint idxOuter;
18254 GLfloat dxOuter;
18255 GLfixed fdxOuter;
18256
18257 fError = fx - fsx - (1 << 11);
18258 fxLeftEdge = fsx - 1;
18259 fdxLeftEdge = eLeft->fdxdy;
18260 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
18261 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
18262 idxOuter = ((fdxOuter) >> 11);
18263 dxOuter = (GLfloat) idxOuter;
18264 span.y = ((fsy) >> 11);
18265
18266
18267 (void) dxOuter;
18268 (void) adjx;
18269 (void) adjy;
18270 (void) vLower;
18271# 679 "swrast/s_tritemp.h"
18272 {
18273 GLfloat s0, t0;
18274 s0 = vLower->attrib[FRAG_ATTRIB_TEX0][0] * twidth;
18275 sLeft = (GLfixed)(s0 * ((float) (1 << 11)) + span.attrStepX[FRAG_ATTRIB_TEX0][0] * adjx
18276 + span.attrStepY[FRAG_ATTRIB_TEX0][0] * adjy) + (1 << (11 -1));
18277 dsOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) - 0.5F))))
18278 ;
18279
18280 t0 = vLower->attrib[FRAG_ATTRIB_TEX0][1] * theight;
18281 tLeft = (GLfixed)(t0 * ((float) (1 << 11)) + span.attrStepX[FRAG_ATTRIB_TEX0][1] * adjx
18282 + span.attrStepY[FRAG_ATTRIB_TEX0][1] * adjy) + (1 << (11 -1));
18283 dtOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) - 0.5F))))
18284 ;
18285 }
18286# 722 "swrast/s_tritemp.h"
18287 }
18288
18289
18290 if (setupRight && eRight->lines>0) {
18291 fxRightEdge = eRight->fsx - 1;
18292 fdxRightEdge = eRight->fdxdy;
18293 }
18294
18295 if (lines==0) {
18296 continue;
18297 }
18298# 754 "swrast/s_tritemp.h"
18299 dsInner = dsOuter + span.intTexStep[0];
18300 dtInner = dtOuter + span.intTexStep[1];
18301# 767 "swrast/s_tritemp.h"
18302 while (lines > 0) {
18303
18304
18305 const GLint right = ((fxRightEdge) >> 11);
18306 span.x = ((fxLeftEdge) >> 11);
18307 if (right <= span.x)
18308 span.end = 0;
18309 else
18310 span.end = right - span.x;
18311# 789 "swrast/s_tritemp.h"
18312 span.intTex[0] = sLeft;
18313 span.intTex[1] = tLeft;
18314# 807 "swrast/s_tritemp.h"
18315 if (span.end > 0 && span.y >= 0) {
18316 const GLint len = span.end - 1;
18317 (void) len;
18318# 818 "swrast/s_tritemp.h"
18319 {
18320 GLuint i; GLubyte rgb[16384][3]; span.intTex[0] -= (1 << (11 -1)); span.intTex[1] -= (1 << (11 -1)); for (i = 0; i < span.end; i++) { GLint s = ((span.intTex[0]) >> 11) & smask; GLint t = ((span.intTex[1]) >> 11) & tmask; GLint pos = (t << twidth_log2) + s; pos = pos + pos + pos; rgb[i][0] = texture[pos+2]; rgb[i][1] = texture[pos+1]; rgb[i][2] = texture[pos+0]; span.intTex[0] += span.intTexStep[0]; span.intTex[1] += span.intTexStep[1]; } rb->PutRowRGB(ctx, rb, span.end, span.x, span.y, rgb, ((void *)0));;
18321 }
18322 }
18323
18324
18325
18326
18327
18328
18329
18330 span.y++;
18331 lines--;
18332
18333 fxLeftEdge += fdxLeftEdge;
18334 fxRightEdge += fdxRightEdge;
18335
18336 fError += fdError;
18337 if (fError >= 0) {
18338 fError -= (1 << 11);
18339# 857 "swrast/s_tritemp.h"
18340 sLeft += dsOuter;
18341 tLeft += dtOuter;
18342# 869 "swrast/s_tritemp.h"
18343 }
18344 else {
18345# 889 "swrast/s_tritemp.h"
18346 sLeft += dsInner;
18347 tLeft += dtInner;
18348# 901 "swrast/s_tritemp.h"
18349 }
18350 }
18351
18352 }
18353
18354 }
18355 }
18356}
18357# 160 "swrast/s_triangle.c" 2
18358# 222 "swrast/s_triangle.c"
18359# 1 "swrast/s_tritemp.h" 1
18360# 111 "swrast/s_tritemp.h"
18361static void simple_z_textured_triangle(struct gl_context *ctx, const SWvertex *v0,
18362 const SWvertex *v1,
18363 const SWvertex *v2 )
18364{
18365 typedef struct {
18366 const SWvertex *v0, *v1;
18367 GLfloat dx;
18368 GLfloat dy;
18369 GLfloat dxdy;
18370 GLfixed fdxdy;
18371 GLfloat adjy;
18372 GLfixed fsx;
18373 GLfixed fsy;
18374 GLfixed fx0;
18375 GLint lines;
18376 } EdgeT;
18377
18378 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
18379
18380 const GLint depthBits = ctx->DrawBuffer->Visual.depthBits;
18381 const GLint fixedToDepthShift = depthBits <= 16 ? 11 : 0;
18382 const GLfloat maxDepth = ctx->DrawBuffer->_DepthMaxF;
18383
18384
18385 EdgeT eMaj, eTop, eBot;
18386 GLfloat oneOverArea;
18387 const SWvertex *vMin, *vMid, *vMax;
18388 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
18389 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
18390 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
18391
18392 SWspan span;
18393
18394 (void) swrast;
18395
18396 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
18397 span.y = 0;
18398
18399
18400 (void) fixedToDepthShift;
18401# 172 "swrast/s_tritemp.h"
18402 {
18403 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18404 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18405 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18406 if (fy0 <= fy1) {
18407 if (fy1 <= fy2) {
18408
18409 vMin = v0; vMid = v1; vMax = v2;
18410 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
18411 }
18412 else if (fy2 <= fy0) {
18413
18414 vMin = v2; vMid = v0; vMax = v1;
18415 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
18416 }
18417 else {
18418
18419 vMin = v0; vMid = v2; vMax = v1;
18420 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
18421 bf = -bf;
18422 }
18423 }
18424 else {
18425 if (fy0 <= fy2) {
18426
18427 vMin = v1; vMid = v0; vMax = v2;
18428 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
18429 bf = -bf;
18430 }
18431 else if (fy2 <= fy1) {
18432
18433 vMin = v2; vMid = v1; vMax = v0;
18434 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
18435 bf = -bf;
18436 }
18437 else {
18438
18439 vMin = v1; vMid = v2; vMax = v0;
18440 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
18441 }
18442 }
18443
18444
18445 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18446 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18447 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
18448 }
18449
18450
18451 eMaj.v0 = vMin; eMaj.v1 = vMax;
18452 eTop.v0 = vMid; eTop.v1 = vMax;
18453 eBot.v0 = vMin; eBot.v1 = vMid;
18454
18455
18456 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
18457 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
18458 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
18459 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
18460 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
18461 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
18462
18463
18464 {
18465 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
18466
18467 if (IS_INF_OR_NAN(area) || area == 0.0F)
18468 return;
18469
18470 if (area * bf * swrast->_BackfaceCullSign < 0.0)
18471 return;
18472
18473 oneOverArea = 1.0F / area;
18474
18475
18476 span.facing = oneOverArea * bf > 0.0F;
18477 }
18478
18479
18480 {
18481 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18482 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
18483 if (eMaj.lines > 0) {
18484 eMaj.dxdy = eMaj.dx / eMaj.dy;
18485 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
18486 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
18487 eMaj.fx0 = vMin_fx;
18488 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
18489 }
18490 else {
18491 return;
18492 }
18493
18494 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18495 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
18496 if (eTop.lines > 0) {
18497 eTop.dxdy = eTop.dx / eTop.dy;
18498 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
18499 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
18500 eTop.fx0 = vMid_fx;
18501 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
18502 }
18503
18504 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18505 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
18506 if (eBot.lines > 0) {
18507 eBot.dxdy = eBot.dx / eBot.dy;
18508 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
18509 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
18510 eBot.fx0 = vMin_fx;
18511 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
18512 }
18513 }
18514# 319 "swrast/s_tritemp.h"
18515 {
18516 GLint scan_from_left_to_right;
18517
18518
18519
18520
18521
18522 struct gl_renderbuffer *rb = ctx->DrawBuffer->_ColorDrawBuffers[0]; const struct gl_texture_object *obj = ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; const struct gl_texture_image *texImg = obj->Image[0][obj->BaseLevel]; const GLfloat twidth = (GLfloat) texImg->Width; const GLfloat theight = (GLfloat) texImg->Height; const GLint twidth_log2 = texImg->WidthLog2; const GLubyte *texture = (const GLubyte *) texImg->Data; const GLint smask = texImg->Width - 1; const GLint tmask = texImg->Height - 1; ; if (!rb || !texture) { return; }
18523
18524
18525 scan_from_left_to_right = (oneOverArea < 0.0F);
18526
18527
18528
18529
18530 span.interpMask |= 0x02;
18531 {
18532 GLfloat eMaj_dz = vMax->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
18533 GLfloat eBot_dz = vMid->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
18534 span.attrStepX[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj_dz * eBot.dy - eMaj.dy * eBot_dz);
18535 if (span.attrStepX[FRAG_ATTRIB_WPOS][2] > maxDepth ||
18536 span.attrStepX[FRAG_ATTRIB_WPOS][2] < -maxDepth) {
18537
18538 span.attrStepX[FRAG_ATTRIB_WPOS][2] = 0.0;
18539 span.attrStepY[FRAG_ATTRIB_WPOS][2] = 0.0;
18540 }
18541 else {
18542 span.attrStepY[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj.dx * eBot_dz - eMaj_dz * eBot.dx);
18543 }
18544 if (depthBits <= 16)
18545 span.zStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))));
18546 else
18547 span.zStep = (GLint) span.attrStepX[FRAG_ATTRIB_WPOS][2];
18548 }
18549# 398 "swrast/s_tritemp.h"
18550 {
18551 GLfloat eMaj_ds = (vMax->attrib[FRAG_ATTRIB_TEX0][0] - vMin->attrib[FRAG_ATTRIB_TEX0][0]) * twidth;
18552 GLfloat eBot_ds = (vMid->attrib[FRAG_ATTRIB_TEX0][0] - vMin->attrib[FRAG_ATTRIB_TEX0][0]) * twidth;
18553 GLfloat eMaj_dt = (vMax->attrib[FRAG_ATTRIB_TEX0][1] - vMin->attrib[FRAG_ATTRIB_TEX0][1]) * theight;
18554 GLfloat eBot_dt = (vMid->attrib[FRAG_ATTRIB_TEX0][1] - vMin->attrib[FRAG_ATTRIB_TEX0][1]) * theight;
18555 span.attrStepX[FRAG_ATTRIB_TEX0][0] = oneOverArea * (eMaj_ds * eBot.dy - eMaj.dy * eBot_ds);
18556 span.attrStepY[FRAG_ATTRIB_TEX0][0] = oneOverArea * (eMaj.dx * eBot_ds - eMaj_ds * eBot.dx);
18557 span.attrStepX[FRAG_ATTRIB_TEX0][1] = oneOverArea * (eMaj_dt * eBot.dy - eMaj.dy * eBot_dt);
18558 span.attrStepY[FRAG_ATTRIB_TEX0][1] = oneOverArea * (eMaj.dx * eBot_dt - eMaj_dt * eBot.dx);
18559 span.intTexStep[0] = (((int) ((((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) - 0.5F))));
18560 span.intTexStep[1] = (((int) ((((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) - 0.5F))));
18561 }
18562# 488 "swrast/s_tritemp.h"
18563 {
18564 GLint subTriangle;
18565 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
18566 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
18567 GLfixed fError = 0, fdError = 0;
18568
18569
18570
18571
18572
18573
18574 struct gl_renderbuffer *zrb
18575 = ctx->DrawBuffer->Attachment[BUFFER_DEPTH].Renderbuffer;
18576 GLushort *zRow = ((void *)0);
18577 GLint dZRowOuter = 0, dZRowInner;
18578
18579 GLuint zLeft = 0;
18580 GLfixed fdzOuter = 0, fdzInner;
18581# 516 "swrast/s_tritemp.h"
18582 GLfixed sLeft=0, dsOuter=0, dsInner;
18583 GLfixed tLeft=0, dtOuter=0, dtInner;
18584
18585
18586
18587
18588
18589
18590
18591 for (subTriangle=0; subTriangle<=1; subTriangle++) {
18592 EdgeT *eLeft, *eRight;
18593 int setupLeft, setupRight;
18594 int lines;
18595
18596 if (subTriangle==0) {
18597
18598 if (scan_from_left_to_right) {
18599 eLeft = &eMaj;
18600 eRight = &eBot;
18601 lines = eRight->lines;
18602 setupLeft = 1;
18603 setupRight = 1;
18604 }
18605 else {
18606 eLeft = &eBot;
18607 eRight = &eMaj;
18608 lines = eLeft->lines;
18609 setupLeft = 1;
18610 setupRight = 1;
18611 }
18612 }
18613 else {
18614
18615 if (scan_from_left_to_right) {
18616 eLeft = &eMaj;
18617 eRight = &eTop;
18618 lines = eRight->lines;
18619 setupLeft = 0;
18620 setupRight = 1;
18621 }
18622 else {
18623 eLeft = &eTop;
18624 eRight = &eMaj;
18625 lines = eLeft->lines;
18626 setupLeft = 1;
18627 setupRight = 0;
18628 }
18629 if (lines == 0)
18630 return;
18631 }
18632
18633 if (setupLeft && eLeft->lines > 0) {
18634 const SWvertex *vLower = eLeft->v0;
18635 const GLfixed fsy = eLeft->fsy;
18636 const GLfixed fsx = eLeft->fsx;
18637 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
18638 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
18639 const GLfixed adjy = (GLfixed) eLeft->adjy;
18640 GLint idxOuter;
18641 GLfloat dxOuter;
18642 GLfixed fdxOuter;
18643
18644 fError = fx - fsx - (1 << 11);
18645 fxLeftEdge = fsx - 1;
18646 fdxLeftEdge = eLeft->fdxdy;
18647 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
18648 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
18649 idxOuter = ((fdxOuter) >> 11);
18650 dxOuter = (GLfloat) idxOuter;
18651 span.y = ((fsy) >> 11);
18652
18653
18654 (void) dxOuter;
18655 (void) adjx;
18656 (void) adjy;
18657 (void) vLower;
18658# 611 "swrast/s_tritemp.h"
18659 {
18660 GLfloat z0 = vLower->attrib[FRAG_ATTRIB_WPOS][2];
18661 if (depthBits <= 16) {
18662
18663 GLfloat tmp = (z0 * ((float) (1 << 11))
18664 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * adjx
18665 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * adjy) + (1 << (11 -1));
18666 if (tmp < 0xffffffff / 2)
18667 zLeft = (GLfixed) tmp;
18668 else
18669 zLeft = 0xffffffff / 2;
18670 fdzOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))))
18671 ;
18672 }
18673 else {
18674
18675 zLeft = (GLuint) (z0 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * ((adjx) * (1.0F / ((float) (1 << 11))))
18676 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * ((adjy) * (1.0F / ((float) (1 << 11)))));
18677 fdzOuter = (GLint) (span.attrStepY[FRAG_ATTRIB_WPOS][2] +
18678 dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]);
18679 }
18680
18681 zRow = (GLushort *)
18682 zrb->GetPointer(ctx, zrb, ((fxLeftEdge) >> 11), span.y);
18683 dZRowOuter = (ctx->DrawBuffer->Width + idxOuter) * sizeof(GLushort);
18684
18685 }
18686# 679 "swrast/s_tritemp.h"
18687 {
18688 GLfloat s0, t0;
18689 s0 = vLower->attrib[FRAG_ATTRIB_TEX0][0] * twidth;
18690 sLeft = (GLfixed)(s0 * ((float) (1 << 11)) + span.attrStepX[FRAG_ATTRIB_TEX0][0] * adjx
18691 + span.attrStepY[FRAG_ATTRIB_TEX0][0] * adjy) + (1 << (11 -1));
18692 dsOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) - 0.5F))))
18693 ;
18694
18695 t0 = vLower->attrib[FRAG_ATTRIB_TEX0][1] * theight;
18696 tLeft = (GLfixed)(t0 * ((float) (1 << 11)) + span.attrStepX[FRAG_ATTRIB_TEX0][1] * adjx
18697 + span.attrStepY[FRAG_ATTRIB_TEX0][1] * adjy) + (1 << (11 -1));
18698 dtOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) - 0.5F))))
18699 ;
18700 }
18701# 722 "swrast/s_tritemp.h"
18702 }
18703
18704
18705 if (setupRight && eRight->lines>0) {
18706 fxRightEdge = eRight->fsx - 1;
18707 fdxRightEdge = eRight->fdxdy;
18708 }
18709
18710 if (lines==0) {
18711 continue;
18712 }
18713# 741 "swrast/s_tritemp.h"
18714 dZRowInner = dZRowOuter + sizeof(GLushort);
18715
18716 fdzInner = fdzOuter + span.zStep;
18717# 754 "swrast/s_tritemp.h"
18718 dsInner = dsOuter + span.intTexStep[0];
18719 dtInner = dtOuter + span.intTexStep[1];
18720# 767 "swrast/s_tritemp.h"
18721 while (lines > 0) {
18722
18723
18724 const GLint right = ((fxRightEdge) >> 11);
18725 span.x = ((fxLeftEdge) >> 11);
18726 if (right <= span.x)
18727 span.end = 0;
18728 else
18729 span.end = right - span.x;
18730
18731
18732 span.z = zLeft;
18733# 789 "swrast/s_tritemp.h"
18734 span.intTex[0] = sLeft;
18735 span.intTex[1] = tLeft;
18736# 807 "swrast/s_tritemp.h"
18737 if (span.end > 0 && span.y >= 0) {
18738 const GLint len = span.end - 1;
18739 (void) len;
18740# 818 "swrast/s_tritemp.h"
18741 {
18742 GLuint i; GLubyte rgb[16384][3]; span.intTex[0] -= (1 << (11 -1)); span.intTex[1] -= (1 << (11 -1)); for (i = 0; i < span.end; i++) { const GLuint z = ((span.z) >> fixedToDepthShift); if (z < zRow[i]) { GLint s = ((span.intTex[0]) >> 11) & smask; GLint t = ((span.intTex[1]) >> 11) & tmask; GLint pos = (t << twidth_log2) + s; pos = pos + pos + pos; rgb[i][0] = texture[pos+2]; rgb[i][1] = texture[pos+1]; rgb[i][2] = texture[pos+0]; zRow[i] = z; span.array->mask[i] = 1; } else { span.array->mask[i] = 0; } span.intTex[0] += span.intTexStep[0]; span.intTex[1] += span.intTexStep[1]; span.z += span.zStep; } rb->PutRowRGB(ctx, rb, span.end, span.x, span.y, rgb, span.array->mask);;
18743 }
18744 }
18745
18746
18747
18748
18749
18750
18751
18752 span.y++;
18753 lines--;
18754
18755 fxLeftEdge += fdxLeftEdge;
18756 fxRightEdge += fdxRightEdge;
18757
18758 fError += fdError;
18759 if (fError >= 0) {
18760 fError -= (1 << 11);
18761
18762
18763
18764
18765
18766
18767 zRow = (GLushort *) ((GLubyte *) zRow + dZRowOuter);
18768
18769 zLeft += fdzOuter;
18770# 857 "swrast/s_tritemp.h"
18771 sLeft += dsOuter;
18772 tLeft += dtOuter;
18773# 869 "swrast/s_tritemp.h"
18774 }
18775 else {
18776
18777
18778
18779
18780
18781 zRow = (GLushort *) ((GLubyte *) zRow + dZRowInner);
18782
18783 zLeft += fdzInner;
18784# 889 "swrast/s_tritemp.h"
18785 sLeft += dsInner;
18786 tLeft += dtInner;
18787# 901 "swrast/s_tritemp.h"
18788 }
18789 }
18790
18791 }
18792
18793 }
18794 }
18795}
18796# 223 "swrast/s_triangle.c" 2
18797
18798
18799
18800
18801struct affine_info
18802{
18803 GLenum filter;
18804 GLenum format;
18805 GLenum envmode;
18806 GLint smask, tmask;
18807 GLint twidth_log2;
18808 const GLchan *texture;
18809 GLfixed er, eg, eb, ea;
18810 GLint tbytesline, tsize;
18811};
18812
18813
18814static __inline__ GLint
18815ilerp(GLint t, GLint a, GLint b)
18816{
18817 return a + ((t * (b - a)) >> 11);
18818}
18819
18820static __inline__ GLint
18821ilerp_2d(GLint ia, GLint ib, GLint v00, GLint v10, GLint v01, GLint v11)
18822{
18823 const GLint temp0 = ilerp(ia, v00, v10);
18824 const GLint temp1 = ilerp(ia, v01, v11);
18825 return ilerp(ib, temp0, temp1);
18826}
18827
18828
18829
18830
18831
18832
18833static __inline__ void
18834affine_span(struct gl_context *ctx, SWspan *span,
18835 struct affine_info *info)
18836{
18837 GLchan sample[4];
18838 const GLuint texEnableSave = ctx->Texture._EnabledCoordUnits;
18839# 399 "swrast/s_triangle.c"
18840 GLuint i;
18841 GLchan *dest = span->array->rgba[0];
18842
18843
18844 ctx->Texture._EnabledCoordUnits = 0x0;
18845
18846 span->intTex[0] -= (1 << (11 -1));
18847 span->intTex[1] -= (1 << (11 -1));
18848 switch (info->filter) {
18849 case 0x2600:
18850 switch (info->format) {
18851 case MESA_FORMAT_RGB888:
18852 switch (info->envmode) {
18853 case 0x2100:
18854 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;;dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18855 break;
18856 case 0x2101:
18857 case 0x1E01:
18858 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;; dest[0] = sample[0]; dest[1] = sample[1]; dest[2] = sample[2]; dest[3] = ((span->alpha) >> 11);; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18859 break;
18860 case 0x0BE2:
18861 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;;dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18862 break;
18863 case 0x0104:
18864 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;;{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18865 break;
18866 default:
18867 _mesa_problem(ctx, "bad tex env mode in SPAN_LINEAR");
18868 return;
18869 }
18870 break;
18871 case MESA_FORMAT_RGBA8888:
18872 switch(info->envmode) {
18873 case 0x2100:
18874 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18875 break;
18876 case 0x2101:
18877 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;dest[0] = ((255 - sample[3]) * span->red + ((sample[3] + 1) * sample[0] << 11)) >> (11 + 8); dest[1] = ((255 - sample[3]) * span->green + ((sample[3] + 1) * sample[1] << 11)) >> (11 + 8); dest[2] = ((255 - sample[3]) * span->blue + ((sample[3] + 1) * sample[2] << 11)) >> (11 + 8); dest[3] = ((span->alpha) >> 11); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18878 break;
18879 case 0x0BE2:
18880 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18881 break;
18882 case 0x0104:
18883 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18884 break;
18885 case 0x1E01:
18886 for (i = 0; i < span->end; i++) { GLint s = ((span->intTex[0]) >> 11) & info->smask; GLint t = ((span->intTex[1]) >> 11) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; dest[0] = tex00[3]; dest[1] = tex00[2]; dest[2] = tex00[1]; dest[3] = tex00[0]; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18887 break;
18888 default:
18889 _mesa_problem(ctx, "bad tex env mode (2) in SPAN_LINEAR");
18890 return;
18891 }
18892 break;
18893 }
18894 break;
18895
18896 case 0x2601:
18897 span->intTex[0] -= (1 << (11 -1));
18898 span->intTex[1] -= (1 << (11 -1));
18899 switch (info->format) {
18900 case MESA_FORMAT_RGB888:
18901 switch (info->envmode) {
18902 case 0x2100:
18903 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18904 break;
18905 case 0x2101:
18906 case 0x1E01:
18907 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;do { (dest)[0] = (sample)[0]; (dest)[1] = (sample)[1]; (dest)[2] = (sample)[2]; (dest)[3] = (sample)[3]; } while (0); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18908 break;
18909 case 0x0BE2:
18910 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18911 break;
18912 case 0x0104:
18913 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18914 break;
18915 default:
18916 _mesa_problem(ctx, "bad tex env mode (3) in SPAN_LINEAR");
18917 return;
18918 }
18919 break;
18920 case MESA_FORMAT_RGBA8888:
18921 switch (info->envmode) {
18922 case 0x2100:
18923 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18924 break;
18925 case 0x2101:
18926 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);dest[0] = ((255 - sample[3]) * span->red + ((sample[3] + 1) * sample[0] << 11)) >> (11 + 8); dest[1] = ((255 - sample[3]) * span->green + ((sample[3] + 1) * sample[1] << 11)) >> (11 + 8); dest[2] = ((255 - sample[3]) * span->blue + ((sample[3] + 1) * sample[2] << 11)) >> (11 + 8); dest[3] = ((span->alpha) >> 11); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18927 break;
18928 case 0x0BE2:
18929 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18930 break;
18931 case 0x0104:
18932 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18933 break;
18934 case 0x1E01:
18935 for (i = 0; i < span->end; i++) { const GLint s = ((span->intTex[0]) >> 11) & info->smask; const GLint t = ((span->intTex[1]) >> 11) & info->tmask; const GLfixed sf = span->intTex[0] & ((1 << 11) - 1); const GLfixed tf = span->intTex[1] & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);do { (dest)[0] = (sample)[0]; (dest)[1] = (sample)[1]; (dest)[2] = (sample)[2]; (dest)[3] = (sample)[3]; } while (0); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; span->intTex[0] += span->intTexStep[0]; span->intTex[1] += span->intTexStep[1]; dest += 4; };
18936 break;
18937 default:
18938 _mesa_problem(ctx, "bad tex env mode (4) in SPAN_LINEAR");
18939 return;
18940 }
18941 break;
18942 }
18943 break;
18944 }
18945 span->interpMask &= ~0x01;
18946 ;
18947
18948 _swrast_write_rgba_span(ctx, span);
18949
18950
18951 ctx->Texture._EnabledCoordUnits = texEnableSave;
18952
18953
18954
18955}
18956# 577 "swrast/s_triangle.c"
18957# 1 "swrast/s_tritemp.h" 1
18958# 111 "swrast/s_tritemp.h"
18959static void affine_textured_triangle(struct gl_context *ctx, const SWvertex *v0,
18960 const SWvertex *v1,
18961 const SWvertex *v2 )
18962{
18963 typedef struct {
18964 const SWvertex *v0, *v1;
18965 GLfloat dx;
18966 GLfloat dy;
18967 GLfloat dxdy;
18968 GLfixed fdxdy;
18969 GLfloat adjy;
18970 GLfixed fsx;
18971 GLfixed fsy;
18972 GLfixed fx0;
18973 GLint lines;
18974 } EdgeT;
18975
18976 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
18977
18978 const GLint depthBits = ctx->DrawBuffer->Visual.depthBits;
18979 const GLint fixedToDepthShift = depthBits <= 16 ? 11 : 0;
18980 const GLfloat maxDepth = ctx->DrawBuffer->_DepthMaxF;
18981
18982
18983 EdgeT eMaj, eTop, eBot;
18984 GLfloat oneOverArea;
18985 const SWvertex *vMin, *vMid, *vMax;
18986 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
18987 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
18988 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
18989
18990 SWspan span;
18991
18992 (void) swrast;
18993
18994 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
18995 span.y = 0;
18996
18997
18998 (void) fixedToDepthShift;
18999# 172 "swrast/s_tritemp.h"
19000 {
19001 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19002 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19003 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19004 if (fy0 <= fy1) {
19005 if (fy1 <= fy2) {
19006
19007 vMin = v0; vMid = v1; vMax = v2;
19008 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
19009 }
19010 else if (fy2 <= fy0) {
19011
19012 vMin = v2; vMid = v0; vMax = v1;
19013 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
19014 }
19015 else {
19016
19017 vMin = v0; vMid = v2; vMax = v1;
19018 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
19019 bf = -bf;
19020 }
19021 }
19022 else {
19023 if (fy0 <= fy2) {
19024
19025 vMin = v1; vMid = v0; vMax = v2;
19026 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
19027 bf = -bf;
19028 }
19029 else if (fy2 <= fy1) {
19030
19031 vMin = v2; vMid = v1; vMax = v0;
19032 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
19033 bf = -bf;
19034 }
19035 else {
19036
19037 vMin = v1; vMid = v2; vMax = v0;
19038 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
19039 }
19040 }
19041
19042
19043 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19044 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19045 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19046 }
19047
19048
19049 eMaj.v0 = vMin; eMaj.v1 = vMax;
19050 eTop.v0 = vMid; eTop.v1 = vMax;
19051 eBot.v0 = vMin; eBot.v1 = vMid;
19052
19053
19054 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
19055 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
19056 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
19057 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
19058 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
19059 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
19060
19061
19062 {
19063 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
19064
19065 if (IS_INF_OR_NAN(area) || area == 0.0F)
19066 return;
19067
19068 if (area * bf * swrast->_BackfaceCullSign < 0.0)
19069 return;
19070
19071 oneOverArea = 1.0F / area;
19072
19073
19074 span.facing = oneOverArea * bf > 0.0F;
19075 }
19076
19077
19078 {
19079 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19080 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
19081 if (eMaj.lines > 0) {
19082 eMaj.dxdy = eMaj.dx / eMaj.dy;
19083 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
19084 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
19085 eMaj.fx0 = vMin_fx;
19086 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
19087 }
19088 else {
19089 return;
19090 }
19091
19092 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19093 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
19094 if (eTop.lines > 0) {
19095 eTop.dxdy = eTop.dx / eTop.dy;
19096 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
19097 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
19098 eTop.fx0 = vMid_fx;
19099 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
19100 }
19101
19102 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19103 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
19104 if (eBot.lines > 0) {
19105 eBot.dxdy = eBot.dx / eBot.dy;
19106 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
19107 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
19108 eBot.fx0 = vMin_fx;
19109 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
19110 }
19111 }
19112# 319 "swrast/s_tritemp.h"
19113 {
19114 GLint scan_from_left_to_right;
19115
19116
19117
19118
19119
19120 struct affine_info info; struct gl_texture_unit *unit = ctx->Texture.Unit+0; const struct gl_texture_object *obj = ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; const struct gl_texture_image *texImg = obj->Image[0][obj->BaseLevel]; const GLfloat twidth = (GLfloat) texImg->Width; const GLfloat theight = (GLfloat) texImg->Height; info.texture = (const GLchan *) texImg->Data; info.twidth_log2 = texImg->WidthLog2; info.smask = texImg->Width - 1; info.tmask = texImg->Height - 1; info.format = texImg->TexFormat; info.filter = obj->Sampler.MinFilter; info.envmode = unit->EnvMode; info.er = 0; info.eg = 0; info.eb = 0; span.arrayMask |= 0x01; if (info.envmode == 0x0BE2) { info.er = (((int) ((((unit->EnvColor[0] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[0] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[0] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); info.eg = (((int) ((((unit->EnvColor[1] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[1] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[1] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); info.eb = (((int) ((((unit->EnvColor[2] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[2] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[2] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); info.ea = (((int) ((((unit->EnvColor[3] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[3] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[3] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); } if (!info.texture) { return; } switch (info.format) { case MESA_FORMAT_RGB888: info.tbytesline = texImg->Width * 3; break; case MESA_FORMAT_RGBA8888: info.tbytesline = texImg->Width * 4; break; default: _mesa_problem(((void *)0), "Bad texture format in affine_texture_triangle"); return; } info.tsize = texImg->Height * info.tbytesline;
19121
19122
19123 scan_from_left_to_right = (oneOverArea < 0.0F);
19124
19125
19126
19127
19128 span.interpMask |= 0x02;
19129 {
19130 GLfloat eMaj_dz = vMax->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
19131 GLfloat eBot_dz = vMid->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
19132 span.attrStepX[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj_dz * eBot.dy - eMaj.dy * eBot_dz);
19133 if (span.attrStepX[FRAG_ATTRIB_WPOS][2] > maxDepth ||
19134 span.attrStepX[FRAG_ATTRIB_WPOS][2] < -maxDepth) {
19135
19136 span.attrStepX[FRAG_ATTRIB_WPOS][2] = 0.0;
19137 span.attrStepY[FRAG_ATTRIB_WPOS][2] = 0.0;
19138 }
19139 else {
19140 span.attrStepY[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj.dx * eBot_dz - eMaj_dz * eBot.dx);
19141 }
19142 if (depthBits <= 16)
19143 span.zStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))));
19144 else
19145 span.zStep = (GLint) span.attrStepX[FRAG_ATTRIB_WPOS][2];
19146 }
19147
19148
19149 span.interpMask |= 0x01;
19150 if (ctx->Light.ShadeModel == 0x1D01) {
19151 GLfloat eMaj_dr = (GLfloat) (vMax->color[0] - vMin->color[0]);
19152 GLfloat eBot_dr = (GLfloat) (vMid->color[0] - vMin->color[0]);
19153 GLfloat eMaj_dg = (GLfloat) (vMax->color[1] - vMin->color[1]);
19154 GLfloat eBot_dg = (GLfloat) (vMid->color[1] - vMin->color[1]);
19155 GLfloat eMaj_db = (GLfloat) (vMax->color[2] - vMin->color[2]);
19156 GLfloat eBot_db = (GLfloat) (vMid->color[2] - vMin->color[2]);
19157
19158 GLfloat eMaj_da = (GLfloat) (vMax->color[3] - vMin->color[3]);
19159 GLfloat eBot_da = (GLfloat) (vMid->color[3] - vMin->color[3]);
19160
19161 span.attrStepX[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj_dr * eBot.dy - eMaj.dy * eBot_dr);
19162 span.attrStepY[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
19163 span.attrStepX[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg);
19164 span.attrStepY[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
19165 span.attrStepX[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
19166 span.attrStepY[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
19167 span.redStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))));
19168 span.greenStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))));
19169 span.blueStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))));
19170
19171 span.attrStepX[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
19172 span.attrStepY[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj.dx * eBot_da - eMaj_da * eBot.dx);
19173 span.alphaStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))));
19174
19175 }
19176 else {
19177 ;
19178 span.interpMask |= 0x04;
19179 span.attrStepX[FRAG_ATTRIB_COL0][0] = span.attrStepY[FRAG_ATTRIB_COL0][0] = 0.0F;
19180 span.attrStepX[FRAG_ATTRIB_COL0][1] = span.attrStepY[FRAG_ATTRIB_COL0][1] = 0.0F;
19181 span.attrStepX[FRAG_ATTRIB_COL0][2] = span.attrStepY[FRAG_ATTRIB_COL0][2] = 0.0F;
19182 span.redStep = 0;
19183 span.greenStep = 0;
19184 span.blueStep = 0;
19185
19186 span.attrStepX[FRAG_ATTRIB_COL0][3] = span.attrStepY[FRAG_ATTRIB_COL0][3] = 0.0F;
19187 span.alphaStep = 0;
19188
19189 }
19190
19191
19192 {
19193 GLfloat eMaj_ds = (vMax->attrib[FRAG_ATTRIB_TEX0][0] - vMin->attrib[FRAG_ATTRIB_TEX0][0]) * twidth;
19194 GLfloat eBot_ds = (vMid->attrib[FRAG_ATTRIB_TEX0][0] - vMin->attrib[FRAG_ATTRIB_TEX0][0]) * twidth;
19195 GLfloat eMaj_dt = (vMax->attrib[FRAG_ATTRIB_TEX0][1] - vMin->attrib[FRAG_ATTRIB_TEX0][1]) * theight;
19196 GLfloat eBot_dt = (vMid->attrib[FRAG_ATTRIB_TEX0][1] - vMin->attrib[FRAG_ATTRIB_TEX0][1]) * theight;
19197 span.attrStepX[FRAG_ATTRIB_TEX0][0] = oneOverArea * (eMaj_ds * eBot.dy - eMaj.dy * eBot_ds);
19198 span.attrStepY[FRAG_ATTRIB_TEX0][0] = oneOverArea * (eMaj.dx * eBot_ds - eMaj_ds * eBot.dx);
19199 span.attrStepX[FRAG_ATTRIB_TEX0][1] = oneOverArea * (eMaj_dt * eBot.dy - eMaj.dy * eBot_dt);
19200 span.attrStepY[FRAG_ATTRIB_TEX0][1] = oneOverArea * (eMaj.dx * eBot_dt - eMaj_dt * eBot.dx);
19201 span.intTexStep[0] = (((int) ((((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) - 0.5F))));
19202 span.intTexStep[1] = (((int) ((((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) - 0.5F))));
19203 }
19204# 488 "swrast/s_tritemp.h"
19205 {
19206 GLint subTriangle;
19207 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
19208 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
19209 GLfixed fError = 0, fdError = 0;
19210# 504 "swrast/s_tritemp.h"
19211 GLuint zLeft = 0;
19212 GLfixed fdzOuter = 0, fdzInner;
19213
19214
19215 GLint rLeft = 0, fdrOuter = 0, fdrInner;
19216 GLint gLeft = 0, fdgOuter = 0, fdgInner;
19217 GLint bLeft = 0, fdbOuter = 0, fdbInner;
19218
19219
19220 GLint aLeft = 0, fdaOuter = 0, fdaInner;
19221
19222
19223 GLfixed sLeft=0, dsOuter=0, dsInner;
19224 GLfixed tLeft=0, dtOuter=0, dtInner;
19225
19226
19227
19228
19229
19230
19231
19232 for (subTriangle=0; subTriangle<=1; subTriangle++) {
19233 EdgeT *eLeft, *eRight;
19234 int setupLeft, setupRight;
19235 int lines;
19236
19237 if (subTriangle==0) {
19238
19239 if (scan_from_left_to_right) {
19240 eLeft = &eMaj;
19241 eRight = &eBot;
19242 lines = eRight->lines;
19243 setupLeft = 1;
19244 setupRight = 1;
19245 }
19246 else {
19247 eLeft = &eBot;
19248 eRight = &eMaj;
19249 lines = eLeft->lines;
19250 setupLeft = 1;
19251 setupRight = 1;
19252 }
19253 }
19254 else {
19255
19256 if (scan_from_left_to_right) {
19257 eLeft = &eMaj;
19258 eRight = &eTop;
19259 lines = eRight->lines;
19260 setupLeft = 0;
19261 setupRight = 1;
19262 }
19263 else {
19264 eLeft = &eTop;
19265 eRight = &eMaj;
19266 lines = eLeft->lines;
19267 setupLeft = 1;
19268 setupRight = 0;
19269 }
19270 if (lines == 0)
19271 return;
19272 }
19273
19274 if (setupLeft && eLeft->lines > 0) {
19275 const SWvertex *vLower = eLeft->v0;
19276 const GLfixed fsy = eLeft->fsy;
19277 const GLfixed fsx = eLeft->fsx;
19278 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19279 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
19280 const GLfixed adjy = (GLfixed) eLeft->adjy;
19281 GLint idxOuter;
19282 GLfloat dxOuter;
19283 GLfixed fdxOuter;
19284
19285 fError = fx - fsx - (1 << 11);
19286 fxLeftEdge = fsx - 1;
19287 fdxLeftEdge = eLeft->fdxdy;
19288 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
19289 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
19290 idxOuter = ((fdxOuter) >> 11);
19291 dxOuter = (GLfloat) idxOuter;
19292 span.y = ((fsy) >> 11);
19293
19294
19295 (void) dxOuter;
19296 (void) adjx;
19297 (void) adjy;
19298 (void) vLower;
19299# 611 "swrast/s_tritemp.h"
19300 {
19301 GLfloat z0 = vLower->attrib[FRAG_ATTRIB_WPOS][2];
19302 if (depthBits <= 16) {
19303
19304 GLfloat tmp = (z0 * ((float) (1 << 11))
19305 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * adjx
19306 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * adjy) + (1 << (11 -1));
19307 if (tmp < 0xffffffff / 2)
19308 zLeft = (GLfixed) tmp;
19309 else
19310 zLeft = 0xffffffff / 2;
19311 fdzOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))))
19312 ;
19313 }
19314 else {
19315
19316 zLeft = (GLuint) (z0 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * ((adjx) * (1.0F / ((float) (1 << 11))))
19317 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * ((adjy) * (1.0F / ((float) (1 << 11)))));
19318 fdzOuter = (GLint) (span.attrStepY[FRAG_ATTRIB_WPOS][2] +
19319 dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]);
19320 }
19321
19322
19323
19324
19325
19326 }
19327
19328
19329 if (ctx->Light.ShadeModel == 0x1D01) {
19330 rLeft = (GLint)(((vLower->color[0]) << 11)
19331 + span.attrStepX[FRAG_ATTRIB_COL0][0] * adjx
19332 + span.attrStepY[FRAG_ATTRIB_COL0][0] * adjy) + (1 << (11 -1));
19333 gLeft = (GLint)(((vLower->color[1]) << 11)
19334 + span.attrStepX[FRAG_ATTRIB_COL0][1] * adjx
19335 + span.attrStepY[FRAG_ATTRIB_COL0][1] * adjy) + (1 << (11 -1));
19336 bLeft = (GLint)(((vLower->color[2]) << 11)
19337 + span.attrStepX[FRAG_ATTRIB_COL0][2] * adjx
19338 + span.attrStepY[FRAG_ATTRIB_COL0][2] * adjy) + (1 << (11 -1));
19339 fdrOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))))
19340 ;
19341 fdgOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))))
19342 ;
19343 fdbOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))))
19344 ;
19345
19346 aLeft = (GLint)(((vLower->color[3]) << 11)
19347 + span.attrStepX[FRAG_ATTRIB_COL0][3] * adjx
19348 + span.attrStepY[FRAG_ATTRIB_COL0][3] * adjy) + (1 << (11 -1));
19349 fdaOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))))
19350 ;
19351
19352 }
19353 else {
19354 ;
19355 rLeft = ((v2->color[0]) << 11);
19356 gLeft = ((v2->color[1]) << 11);
19357 bLeft = ((v2->color[2]) << 11);
19358 fdrOuter = fdgOuter = fdbOuter = 0;
19359
19360 aLeft = ((v2->color[3]) << 11);
19361 fdaOuter = 0;
19362
19363 }
19364
19365
19366
19367
19368 {
19369 GLfloat s0, t0;
19370 s0 = vLower->attrib[FRAG_ATTRIB_TEX0][0] * twidth;
19371 sLeft = (GLfixed)(s0 * ((float) (1 << 11)) + span.attrStepX[FRAG_ATTRIB_TEX0][0] * adjx
19372 + span.attrStepY[FRAG_ATTRIB_TEX0][0] * adjy) + (1 << (11 -1));
19373 dsOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_TEX0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][0]) * ((float) (1 << 11))) - 0.5F))))
19374 ;
19375
19376 t0 = vLower->attrib[FRAG_ATTRIB_TEX0][1] * theight;
19377 tLeft = (GLfixed)(t0 * ((float) (1 << 11)) + span.attrStepX[FRAG_ATTRIB_TEX0][1] * adjx
19378 + span.attrStepY[FRAG_ATTRIB_TEX0][1] * adjy) + (1 << (11 -1));
19379 dtOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_TEX0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_TEX0][1]) * ((float) (1 << 11))) - 0.5F))))
19380 ;
19381 }
19382# 722 "swrast/s_tritemp.h"
19383 }
19384
19385
19386 if (setupRight && eRight->lines>0) {
19387 fxRightEdge = eRight->fsx - 1;
19388 fdxRightEdge = eRight->fdxdy;
19389 }
19390
19391 if (lines==0) {
19392 continue;
19393 }
19394# 743 "swrast/s_tritemp.h"
19395 fdzInner = fdzOuter + span.zStep;
19396
19397
19398 fdrInner = fdrOuter + span.redStep;
19399 fdgInner = fdgOuter + span.greenStep;
19400 fdbInner = fdbOuter + span.blueStep;
19401
19402
19403 fdaInner = fdaOuter + span.alphaStep;
19404
19405
19406 dsInner = dsOuter + span.intTexStep[0];
19407 dtInner = dtOuter + span.intTexStep[1];
19408# 767 "swrast/s_tritemp.h"
19409 while (lines > 0) {
19410
19411
19412 const GLint right = ((fxRightEdge) >> 11);
19413 span.x = ((fxLeftEdge) >> 11);
19414 if (right <= span.x)
19415 span.end = 0;
19416 else
19417 span.end = right - span.x;
19418
19419
19420 span.z = zLeft;
19421
19422
19423 span.red = rLeft;
19424 span.green = gLeft;
19425 span.blue = bLeft;
19426
19427
19428 span.alpha = aLeft;
19429
19430
19431 span.intTex[0] = sLeft;
19432 span.intTex[1] = tLeft;
19433# 807 "swrast/s_tritemp.h"
19434 if (span.end > 0 && span.y >= 0) {
19435 const GLint len = span.end - 1;
19436 (void) len;
19437
19438 do { GLfixed endVal = span.red + (len) * span.redStep; if (endVal < 0) { span.red -= endVal; } if (span.red < 0) { span.red = 0; } } while (0);
19439 do { GLfixed endVal = span.green + (len) * span.greenStep; if (endVal < 0) { span.green -= endVal; } if (span.green < 0) { span.green = 0; } } while (0);
19440 do { GLfixed endVal = span.blue + (len) * span.blueStep; if (endVal < 0) { span.blue -= endVal; } if (span.blue < 0) { span.blue = 0; } } while (0);
19441
19442
19443 do { GLfixed endVal = span.alpha + (len) * span.alphaStep; if (endVal < 0) { span.alpha -= endVal; } if (span.alpha < 0) { span.alpha = 0; } } while (0);
19444
19445 {
19446 affine_span(ctx, &span, &info);;
19447 }
19448 }
19449
19450
19451
19452
19453
19454
19455
19456 span.y++;
19457 lines--;
19458
19459 fxLeftEdge += fdxLeftEdge;
19460 fxRightEdge += fdxRightEdge;
19461
19462 fError += fdError;
19463 if (fError >= 0) {
19464 fError -= (1 << 11);
19465# 846 "swrast/s_tritemp.h"
19466 zLeft += fdzOuter;
19467
19468
19469 rLeft += fdrOuter;
19470 gLeft += fdgOuter;
19471 bLeft += fdbOuter;
19472
19473
19474 aLeft += fdaOuter;
19475
19476
19477 sLeft += dsOuter;
19478 tLeft += dtOuter;
19479# 869 "swrast/s_tritemp.h"
19480 }
19481 else {
19482
19483
19484
19485
19486
19487
19488
19489 zLeft += fdzInner;
19490
19491
19492 rLeft += fdrInner;
19493 gLeft += fdgInner;
19494 bLeft += fdbInner;
19495
19496
19497 aLeft += fdaInner;
19498
19499
19500 sLeft += dsInner;
19501 tLeft += dtInner;
19502# 901 "swrast/s_tritemp.h"
19503 }
19504 }
19505
19506 }
19507
19508 }
19509 }
19510}
19511# 578 "swrast/s_triangle.c" 2
19512
19513
19514
19515struct persp_info
19516{
19517 GLenum filter;
19518 GLenum format;
19519 GLenum envmode;
19520 GLint smask, tmask;
19521 GLint twidth_log2;
19522 const GLchan *texture;
19523 GLfixed er, eg, eb, ea;
19524 GLint tbytesline, tsize;
19525};
19526
19527
19528static __inline__ void
19529fast_persp_span(struct gl_context *ctx, SWspan *span,
19530 struct persp_info *info)
19531{
19532 GLchan sample[4];
19533# 662 "swrast/s_triangle.c"
19534 GLuint i;
19535 GLfloat tex_coord[3], tex_step[3];
19536 GLchan *dest = span->array->rgba[0];
19537
19538 const GLuint texEnableSave = ctx->Texture._EnabledCoordUnits;
19539 ctx->Texture._EnabledCoordUnits = 0;
19540
19541 tex_coord[0] = span->attrStart[FRAG_ATTRIB_TEX0][0] * (info->smask + 1);
19542 tex_step[0] = span->attrStepX[FRAG_ATTRIB_TEX0][0] * (info->smask + 1);
19543 tex_coord[1] = span->attrStart[FRAG_ATTRIB_TEX0][1] * (info->tmask + 1);
19544 tex_step[1] = span->attrStepX[FRAG_ATTRIB_TEX0][1] * (info->tmask + 1);
19545
19546 tex_coord[2] = span->attrStart[FRAG_ATTRIB_TEX0][3];
19547 tex_step[2] = span->attrStepX[FRAG_ATTRIB_TEX0][3];
19548
19549 switch (info->filter) {
19550 case 0x2600:
19551 switch (info->format) {
19552 case MESA_FORMAT_RGB888:
19553 switch (info->envmode) {
19554 case 0x2100:
19555 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;;dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19556 break;
19557 case 0x2101:
19558 case 0x1E01:
19559 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;; dest[0] = sample[0]; dest[1] = sample[1]; dest[2] = sample[2]; dest[3] = ((span->alpha) >> 11);; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19560 break;
19561 case 0x0BE2:
19562 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;;dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19563 break;
19564 case 0x0104:
19565 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; sample[0] = tex00[2]; sample[1] = tex00[1]; sample[2] = tex00[0]; sample[3] = 255;;{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19566 break;
19567 default:
19568 _mesa_problem(ctx, "bad tex env mode (5) in SPAN_LINEAR");
19569 return;
19570 }
19571 break;
19572 case MESA_FORMAT_RGBA8888:
19573 switch(info->envmode) {
19574 case 0x2100:
19575 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19576 break;
19577 case 0x2101:
19578 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;dest[0] = ((255 - sample[3]) * span->red + ((sample[3] + 1) * sample[0] << 11)) >> (11 + 8); dest[1] = ((255 - sample[3]) * span->green + ((sample[3] + 1) * sample[1] << 11)) >> (11 + 8); dest[2] = ((255 - sample[3]) * span->blue + ((sample[3] + 1) * sample[2] << 11)) >> (11 + 8); dest[3] = ((span->alpha) >> 11); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19579 break;
19580 case 0x0BE2:
19581 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19582 break;
19583 case 0x0104:
19584 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; sample[0] = tex00[3]; sample[1] = tex00[2]; sample[2] = tex00[1]; sample[3] = tex00[0];;{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19585 break;
19586 case 0x1E01:
19587 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); GLint s = ifloor(s_tmp) & info->smask; GLint t = ifloor(t_tmp) & info->tmask; GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; dest[0] = tex00[3]; dest[1] = tex00[2]; dest[2] = tex00[1]; dest[3] = tex00[0]; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19588 break;
19589 default:
19590 _mesa_problem(ctx, "bad tex env mode (6) in SPAN_LINEAR");
19591 return;
19592 }
19593 break;
19594 }
19595 break;
19596
19597 case 0x2601:
19598 switch (info->format) {
19599 case MESA_FORMAT_RGB888:
19600 switch (info->envmode) {
19601 case 0x2100:
19602 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19603 break;
19604 case 0x2101:
19605 case 0x1E01:
19606 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;do { (dest)[0] = (sample)[0]; (dest)[1] = (sample)[1]; (dest)[2] = (sample)[2]; (dest)[3] = (sample)[3]; } while (0); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19607 break;
19608 case 0x0BE2:
19609 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19610 break;
19611 case 0x0104:
19612 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 3 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 3; const GLchan *tex11 = tex10 + 3; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[1] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[2] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]); sample[3] = 255;;{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19613 break;
19614 default:
19615 _mesa_problem(ctx, "bad tex env mode (7) in SPAN_LINEAR");
19616 return;
19617 }
19618 break;
19619 case MESA_FORMAT_RGBA8888:
19620 switch (info->envmode) {
19621 case 0x2100:
19622 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);dest[0] = span->red * (sample[0] + 1u) >> (11 + 8); dest[1] = span->green * (sample[1] + 1u) >> (11 + 8); dest[2] = span->blue * (sample[2] + 1u) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1u) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19623 break;
19624 case 0x2101:
19625 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);dest[0] = ((255 - sample[3]) * span->red + ((sample[3] + 1) * sample[0] << 11)) >> (11 + 8); dest[1] = ((255 - sample[3]) * span->green + ((sample[3] + 1) * sample[1] << 11)) >> (11 + 8); dest[2] = ((255 - sample[3]) * span->blue + ((sample[3] + 1) * sample[2] << 11)) >> (11 + 8); dest[3] = ((span->alpha) >> 11); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19626 break;
19627 case 0x0BE2:
19628 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);dest[0] = ((255 - sample[0]) * span->red + (sample[0] + 1) * info->er) >> (11 + 8); dest[1] = ((255 - sample[1]) * span->green + (sample[1] + 1) * info->eg) >> (11 + 8); dest[2] = ((255 - sample[2]) * span->blue + (sample[2] + 1) * info->eb) >> (11 + 8); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19629 break;
19630 case 0x0104:
19631 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);{ GLint rSum = ((span->red) >> 11) + (GLint) sample[0]; GLint gSum = ((span->green) >> 11) + (GLint) sample[1]; GLint bSum = ((span->blue) >> 11) + (GLint) sample[2]; dest[0] = ( (rSum)<(255) ? (rSum) : (255) ); dest[1] = ( (gSum)<(255) ? (gSum) : (255) ); dest[2] = ( (bSum)<(255) ? (bSum) : (255) ); dest[3] = span->alpha * (sample[3] + 1) >> (11 + 8); }; span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19632 break;
19633 case 0x1E01:
19634 for (i = 0; i < span->end; i++) { GLdouble invQ = tex_coord[2] ? (1.0 / tex_coord[2]) : 1.0; const GLfloat s_tmp = (GLfloat) (tex_coord[0] * invQ); const GLfloat t_tmp = (GLfloat) (tex_coord[1] * invQ); const GLfixed s_fix = (((int) ((((s_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((s_tmp) * ((float) (1 << 11))) + 0.5F) : (((s_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLfixed t_fix = (((int) ((((t_tmp) * ((float) (1 << 11))) >= 0.0F) ? (((t_tmp) * ((float) (1 << 11))) + 0.5F) : (((t_tmp) * ((float) (1 << 11))) - 0.5F)))) - (1 << (11 -1)); const GLint s = ((((s_fix) & (~((1 << 11) - 1)))) >> 11) & info->smask; const GLint t = ((((t_fix) & (~((1 << 11) - 1)))) >> 11) & info->tmask; const GLfixed sf = s_fix & ((1 << 11) - 1); const GLfixed tf = t_fix & ((1 << 11) - 1); const GLint pos = (t << info->twidth_log2) + s; const GLchan *tex00 = info->texture + 4 * pos; const GLchan *tex10 = tex00 + info->tbytesline; const GLchan *tex01 = tex00 + 4; const GLchan *tex11 = tex10 + 4; if (t == info->tmask) { tex10 -= info->tsize; tex11 -= info->tsize; } if (s == info->smask) { tex01 -= info->tbytesline; tex11 -= info->tbytesline; } sample[0] = ilerp_2d(sf, tf, tex00[3], tex01[3], tex10[3], tex11[3]); sample[1] = ilerp_2d(sf, tf, tex00[2], tex01[2], tex10[2], tex11[2]); sample[2] = ilerp_2d(sf, tf, tex00[1], tex01[1], tex10[1], tex11[1]); sample[3] = ilerp_2d(sf, tf, tex00[0], tex01[0], tex10[0], tex11[0]);do { (dest)[0] = (sample)[0]; (dest)[1] = (sample)[1]; (dest)[2] = (sample)[2]; (dest)[3] = (sample)[3]; } while (0); span->red += span->redStep; span->green += span->greenStep; span->blue += span->blueStep; span->alpha += span->alphaStep; tex_coord[0] += tex_step[0]; tex_coord[1] += tex_step[1]; tex_coord[2] += tex_step[2]; dest += 4; };
19635 break;
19636 default:
19637 _mesa_problem(ctx, "bad tex env mode (8) in SPAN_LINEAR");
19638 return;
19639 }
19640 break;
19641 }
19642 break;
19643 }
19644
19645 ;
19646 _swrast_write_rgba_span(ctx, span);
19647
19648
19649
19650
19651
19652 ctx->Texture._EnabledCoordUnits = texEnableSave;
19653}
19654# 844 "swrast/s_triangle.c"
19655# 1 "swrast/s_tritemp.h" 1
19656# 111 "swrast/s_tritemp.h"
19657static void persp_textured_triangle(struct gl_context *ctx, const SWvertex *v0,
19658 const SWvertex *v1,
19659 const SWvertex *v2 )
19660{
19661 typedef struct {
19662 const SWvertex *v0, *v1;
19663 GLfloat dx;
19664 GLfloat dy;
19665 GLfloat dxdy;
19666 GLfixed fdxdy;
19667 GLfloat adjy;
19668 GLfixed fsx;
19669 GLfixed fsy;
19670 GLfixed fx0;
19671 GLint lines;
19672 } EdgeT;
19673
19674 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
19675
19676 const GLint depthBits = ctx->DrawBuffer->Visual.depthBits;
19677 const GLint fixedToDepthShift = depthBits <= 16 ? 11 : 0;
19678 const GLfloat maxDepth = ctx->DrawBuffer->_DepthMaxF;
19679
19680
19681 EdgeT eMaj, eTop, eBot;
19682 GLfloat oneOverArea;
19683 const SWvertex *vMin, *vMid, *vMax;
19684 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
19685 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
19686 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
19687
19688 SWspan span;
19689
19690 (void) swrast;
19691
19692 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
19693 span.y = 0;
19694
19695
19696 (void) fixedToDepthShift;
19697# 172 "swrast/s_tritemp.h"
19698 {
19699 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19700 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19701 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19702 if (fy0 <= fy1) {
19703 if (fy1 <= fy2) {
19704
19705 vMin = v0; vMid = v1; vMax = v2;
19706 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
19707 }
19708 else if (fy2 <= fy0) {
19709
19710 vMin = v2; vMid = v0; vMax = v1;
19711 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
19712 }
19713 else {
19714
19715 vMin = v0; vMid = v2; vMax = v1;
19716 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
19717 bf = -bf;
19718 }
19719 }
19720 else {
19721 if (fy0 <= fy2) {
19722
19723 vMin = v1; vMid = v0; vMax = v2;
19724 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
19725 bf = -bf;
19726 }
19727 else if (fy2 <= fy1) {
19728
19729 vMin = v2; vMid = v1; vMax = v0;
19730 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
19731 bf = -bf;
19732 }
19733 else {
19734
19735 vMin = v1; vMid = v2; vMax = v0;
19736 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
19737 }
19738 }
19739
19740
19741 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19742 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19743 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
19744 }
19745
19746
19747 eMaj.v0 = vMin; eMaj.v1 = vMax;
19748 eTop.v0 = vMid; eTop.v1 = vMax;
19749 eBot.v0 = vMin; eBot.v1 = vMid;
19750
19751
19752 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
19753 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
19754 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
19755 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
19756 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
19757 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
19758
19759
19760 {
19761 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
19762
19763 if (IS_INF_OR_NAN(area) || area == 0.0F)
19764 return;
19765
19766 if (area * bf * swrast->_BackfaceCullSign < 0.0)
19767 return;
19768
19769 oneOverArea = 1.0F / area;
19770
19771
19772 span.facing = oneOverArea * bf > 0.0F;
19773 }
19774
19775
19776 {
19777 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19778 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
19779 if (eMaj.lines > 0) {
19780 eMaj.dxdy = eMaj.dx / eMaj.dy;
19781 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
19782 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
19783 eMaj.fx0 = vMin_fx;
19784 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
19785 }
19786 else {
19787 return;
19788 }
19789
19790 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19791 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
19792 if (eTop.lines > 0) {
19793 eTop.dxdy = eTop.dx / eTop.dy;
19794 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
19795 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
19796 eTop.fx0 = vMid_fx;
19797 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
19798 }
19799
19800 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19801 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
19802 if (eBot.lines > 0) {
19803 eBot.dxdy = eBot.dx / eBot.dy;
19804 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
19805 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
19806 eBot.fx0 = vMin_fx;
19807 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
19808 }
19809 }
19810# 319 "swrast/s_tritemp.h"
19811 {
19812 GLint scan_from_left_to_right;
19813
19814
19815
19816
19817
19818 struct persp_info info; const struct gl_texture_unit *unit = ctx->Texture.Unit+0; const struct gl_texture_object *obj = ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX]; const struct gl_texture_image *texImg = obj->Image[0][obj->BaseLevel]; info.texture = (const GLchan *) texImg->Data; info.twidth_log2 = texImg->WidthLog2; info.smask = texImg->Width - 1; info.tmask = texImg->Height - 1; info.format = texImg->TexFormat; info.filter = obj->Sampler.MinFilter; info.envmode = unit->EnvMode; info.er = 0; info.eg = 0; info.eb = 0; if (info.envmode == 0x0BE2) { info.er = (((int) ((((unit->EnvColor[0] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[0] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[0] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); info.eg = (((int) ((((unit->EnvColor[1] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[1] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[1] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); info.eb = (((int) ((((unit->EnvColor[2] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[2] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[2] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); info.ea = (((int) ((((unit->EnvColor[3] * 255.0F) * ((float) (1 << 11))) >= 0.0F) ? (((unit->EnvColor[3] * 255.0F) * ((float) (1 << 11))) + 0.5F) : (((unit->EnvColor[3] * 255.0F) * ((float) (1 << 11))) - 0.5F)))); } if (!info.texture) { return; } switch (info.format) { case MESA_FORMAT_RGB888: info.tbytesline = texImg->Width * 3; break; case MESA_FORMAT_RGBA8888: info.tbytesline = texImg->Width * 4; break; default: _mesa_problem(((void *)0), "Bad texture format in persp_textured_triangle"); return; } info.tsize = texImg->Height * info.tbytesline;
19819
19820
19821 scan_from_left_to_right = (oneOverArea < 0.0F);
19822
19823
19824
19825
19826 span.interpMask |= 0x02;
19827 {
19828 GLfloat eMaj_dz = vMax->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
19829 GLfloat eBot_dz = vMid->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
19830 span.attrStepX[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj_dz * eBot.dy - eMaj.dy * eBot_dz);
19831 if (span.attrStepX[FRAG_ATTRIB_WPOS][2] > maxDepth ||
19832 span.attrStepX[FRAG_ATTRIB_WPOS][2] < -maxDepth) {
19833
19834 span.attrStepX[FRAG_ATTRIB_WPOS][2] = 0.0;
19835 span.attrStepY[FRAG_ATTRIB_WPOS][2] = 0.0;
19836 }
19837 else {
19838 span.attrStepY[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj.dx * eBot_dz - eMaj_dz * eBot.dx);
19839 }
19840 if (depthBits <= 16)
19841 span.zStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))));
19842 else
19843 span.zStep = (GLint) span.attrStepX[FRAG_ATTRIB_WPOS][2];
19844 }
19845
19846
19847 span.interpMask |= 0x01;
19848 if (ctx->Light.ShadeModel == 0x1D01) {
19849 GLfloat eMaj_dr = (GLfloat) (vMax->color[0] - vMin->color[0]);
19850 GLfloat eBot_dr = (GLfloat) (vMid->color[0] - vMin->color[0]);
19851 GLfloat eMaj_dg = (GLfloat) (vMax->color[1] - vMin->color[1]);
19852 GLfloat eBot_dg = (GLfloat) (vMid->color[1] - vMin->color[1]);
19853 GLfloat eMaj_db = (GLfloat) (vMax->color[2] - vMin->color[2]);
19854 GLfloat eBot_db = (GLfloat) (vMid->color[2] - vMin->color[2]);
19855
19856 GLfloat eMaj_da = (GLfloat) (vMax->color[3] - vMin->color[3]);
19857 GLfloat eBot_da = (GLfloat) (vMid->color[3] - vMin->color[3]);
19858
19859 span.attrStepX[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj_dr * eBot.dy - eMaj.dy * eBot_dr);
19860 span.attrStepY[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
19861 span.attrStepX[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg);
19862 span.attrStepY[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
19863 span.attrStepX[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
19864 span.attrStepY[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
19865 span.redStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))));
19866 span.greenStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))));
19867 span.blueStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))));
19868
19869 span.attrStepX[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
19870 span.attrStepY[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj.dx * eBot_da - eMaj_da * eBot.dx);
19871 span.alphaStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))));
19872
19873 }
19874 else {
19875 ;
19876 span.interpMask |= 0x04;
19877 span.attrStepX[FRAG_ATTRIB_COL0][0] = span.attrStepY[FRAG_ATTRIB_COL0][0] = 0.0F;
19878 span.attrStepX[FRAG_ATTRIB_COL0][1] = span.attrStepY[FRAG_ATTRIB_COL0][1] = 0.0F;
19879 span.attrStepX[FRAG_ATTRIB_COL0][2] = span.attrStepY[FRAG_ATTRIB_COL0][2] = 0.0F;
19880 span.redStep = 0;
19881 span.greenStep = 0;
19882 span.blueStep = 0;
19883
19884 span.attrStepX[FRAG_ATTRIB_COL0][3] = span.attrStepY[FRAG_ATTRIB_COL0][3] = 0.0F;
19885 span.alphaStep = 0;
19886
19887 }
19888# 412 "swrast/s_tritemp.h"
19889 {
19890
19891 const GLfloat wMax = vMax->attrib[FRAG_ATTRIB_WPOS][3];
19892 const GLfloat wMin = vMin->attrib[FRAG_ATTRIB_WPOS][3];
19893 const GLfloat wMid = vMid->attrib[FRAG_ATTRIB_WPOS][3];
19894 {
19895 const GLfloat eMaj_dw = wMax - wMin;
19896 const GLfloat eBot_dw = wMid - wMin;
19897 span.attrStepX[FRAG_ATTRIB_WPOS][3] = oneOverArea * (eMaj_dw * eBot.dy - eMaj.dy * eBot_dw);
19898 span.attrStepY[FRAG_ATTRIB_WPOS][3] = oneOverArea * (eMaj.dx * eBot_dw - eMaj_dw * eBot.dx);
19899 }
19900 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
19901 if (swrast->_InterpMode[attr] == 0x1D00) {
19902 do { span.attrStepX[attr][0] = 0.0; span.attrStepX[attr][1] = 0.0; span.attrStepX[attr][2] = 0.0; span.attrStepX[attr][3] = 0.0; } while(0);
19903 do { span.attrStepY[attr][0] = 0.0; span.attrStepY[attr][1] = 0.0; span.attrStepY[attr][2] = 0.0; span.attrStepY[attr][3] = 0.0; } while(0);
19904 }
19905 else {
19906 GLuint c;
19907 for (c = 0; c < 4; c++) {
19908 GLfloat eMaj_da = vMax->attrib[attr][c] * wMax - vMin->attrib[attr][c] * wMin;
19909 GLfloat eBot_da = vMid->attrib[attr][c] * wMid - vMin->attrib[attr][c] * wMin;
19910 span.attrStepX[attr][c] = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
19911 span.attrStepY[attr][c] = oneOverArea * (eMaj.dx * eBot_da - eMaj_da * eBot.dx);
19912 }
19913 }
19914 } }
19915 }
19916# 488 "swrast/s_tritemp.h"
19917 {
19918 GLint subTriangle;
19919 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
19920 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
19921 GLfixed fError = 0, fdError = 0;
19922# 504 "swrast/s_tritemp.h"
19923 GLuint zLeft = 0;
19924 GLfixed fdzOuter = 0, fdzInner;
19925
19926
19927 GLint rLeft = 0, fdrOuter = 0, fdrInner;
19928 GLint gLeft = 0, fdgOuter = 0, fdgInner;
19929 GLint bLeft = 0, fdbOuter = 0, fdbInner;
19930
19931
19932 GLint aLeft = 0, fdaOuter = 0, fdaInner;
19933
19934
19935
19936
19937
19938
19939 GLfloat wLeft = 0, dwOuter = 0, dwInner;
19940 GLfloat attrLeft[FRAG_ATTRIB_MAX][4];
19941 GLfloat daOuter[FRAG_ATTRIB_MAX][4], daInner[FRAG_ATTRIB_MAX][4];
19942
19943
19944 for (subTriangle=0; subTriangle<=1; subTriangle++) {
19945 EdgeT *eLeft, *eRight;
19946 int setupLeft, setupRight;
19947 int lines;
19948
19949 if (subTriangle==0) {
19950
19951 if (scan_from_left_to_right) {
19952 eLeft = &eMaj;
19953 eRight = &eBot;
19954 lines = eRight->lines;
19955 setupLeft = 1;
19956 setupRight = 1;
19957 }
19958 else {
19959 eLeft = &eBot;
19960 eRight = &eMaj;
19961 lines = eLeft->lines;
19962 setupLeft = 1;
19963 setupRight = 1;
19964 }
19965 }
19966 else {
19967
19968 if (scan_from_left_to_right) {
19969 eLeft = &eMaj;
19970 eRight = &eTop;
19971 lines = eRight->lines;
19972 setupLeft = 0;
19973 setupRight = 1;
19974 }
19975 else {
19976 eLeft = &eTop;
19977 eRight = &eMaj;
19978 lines = eLeft->lines;
19979 setupLeft = 1;
19980 setupRight = 0;
19981 }
19982 if (lines == 0)
19983 return;
19984 }
19985
19986 if (setupLeft && eLeft->lines > 0) {
19987 const SWvertex *vLower = eLeft->v0;
19988 const GLfixed fsy = eLeft->fsy;
19989 const GLfixed fsx = eLeft->fsx;
19990 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
19991 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
19992 const GLfixed adjy = (GLfixed) eLeft->adjy;
19993 GLint idxOuter;
19994 GLfloat dxOuter;
19995 GLfixed fdxOuter;
19996
19997 fError = fx - fsx - (1 << 11);
19998 fxLeftEdge = fsx - 1;
19999 fdxLeftEdge = eLeft->fdxdy;
20000 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
20001 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
20002 idxOuter = ((fdxOuter) >> 11);
20003 dxOuter = (GLfloat) idxOuter;
20004 span.y = ((fsy) >> 11);
20005
20006
20007 (void) dxOuter;
20008 (void) adjx;
20009 (void) adjy;
20010 (void) vLower;
20011# 611 "swrast/s_tritemp.h"
20012 {
20013 GLfloat z0 = vLower->attrib[FRAG_ATTRIB_WPOS][2];
20014 if (depthBits <= 16) {
20015
20016 GLfloat tmp = (z0 * ((float) (1 << 11))
20017 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * adjx
20018 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * adjy) + (1 << (11 -1));
20019 if (tmp < 0xffffffff / 2)
20020 zLeft = (GLfixed) tmp;
20021 else
20022 zLeft = 0xffffffff / 2;
20023 fdzOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))))
20024 ;
20025 }
20026 else {
20027
20028 zLeft = (GLuint) (z0 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * ((adjx) * (1.0F / ((float) (1 << 11))))
20029 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * ((adjy) * (1.0F / ((float) (1 << 11)))));
20030 fdzOuter = (GLint) (span.attrStepY[FRAG_ATTRIB_WPOS][2] +
20031 dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]);
20032 }
20033
20034
20035
20036
20037
20038 }
20039
20040
20041 if (ctx->Light.ShadeModel == 0x1D01) {
20042 rLeft = (GLint)(((vLower->color[0]) << 11)
20043 + span.attrStepX[FRAG_ATTRIB_COL0][0] * adjx
20044 + span.attrStepY[FRAG_ATTRIB_COL0][0] * adjy) + (1 << (11 -1));
20045 gLeft = (GLint)(((vLower->color[1]) << 11)
20046 + span.attrStepX[FRAG_ATTRIB_COL0][1] * adjx
20047 + span.attrStepY[FRAG_ATTRIB_COL0][1] * adjy) + (1 << (11 -1));
20048 bLeft = (GLint)(((vLower->color[2]) << 11)
20049 + span.attrStepX[FRAG_ATTRIB_COL0][2] * adjx
20050 + span.attrStepY[FRAG_ATTRIB_COL0][2] * adjy) + (1 << (11 -1));
20051 fdrOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))))
20052 ;
20053 fdgOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))))
20054 ;
20055 fdbOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))))
20056 ;
20057
20058 aLeft = (GLint)(((vLower->color[3]) << 11)
20059 + span.attrStepX[FRAG_ATTRIB_COL0][3] * adjx
20060 + span.attrStepY[FRAG_ATTRIB_COL0][3] * adjy) + (1 << (11 -1));
20061 fdaOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))))
20062 ;
20063
20064 }
20065 else {
20066 ;
20067 rLeft = ((v2->color[0]) << 11);
20068 gLeft = ((v2->color[1]) << 11);
20069 bLeft = ((v2->color[2]) << 11);
20070 fdrOuter = fdgOuter = fdbOuter = 0;
20071
20072 aLeft = ((v2->color[3]) << 11);
20073 fdaOuter = 0;
20074
20075 }
20076# 695 "swrast/s_tritemp.h"
20077 {
20078 const GLuint attr = FRAG_ATTRIB_WPOS;
20079 wLeft = vLower->attrib[FRAG_ATTRIB_WPOS][3]
20080 + (span.attrStepX[attr][3] * adjx
20081 + span.attrStepY[attr][3] * adjy) * (1.0F/((float) (1 << 11)));
20082 dwOuter = span.attrStepY[attr][3] + dxOuter * span.attrStepX[attr][3];
20083 }
20084 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20085 const GLfloat invW = vLower->attrib[FRAG_ATTRIB_WPOS][3];
20086 if (swrast->_InterpMode[attr] == 0x1D00) {
20087 GLuint c;
20088 for (c = 0; c < 4; c++) {
20089 attrLeft[attr][c] = v2->attrib[attr][c] * invW;
20090 daOuter[attr][c] = 0.0;
20091 }
20092 }
20093 else {
20094 GLuint c;
20095 for (c = 0; c < 4; c++) {
20096 const GLfloat a = vLower->attrib[attr][c] * invW;
20097 attrLeft[attr][c] = a + ( span.attrStepX[attr][c] * adjx
20098 + span.attrStepY[attr][c] * adjy) * (1.0F/((float) (1 << 11)));
20099 daOuter[attr][c] = span.attrStepY[attr][c] + dxOuter * span.attrStepX[attr][c];
20100 }
20101 }
20102 } }
20103
20104 }
20105
20106
20107 if (setupRight && eRight->lines>0) {
20108 fxRightEdge = eRight->fsx - 1;
20109 fdxRightEdge = eRight->fdxdy;
20110 }
20111
20112 if (lines==0) {
20113 continue;
20114 }
20115# 743 "swrast/s_tritemp.h"
20116 fdzInner = fdzOuter + span.zStep;
20117
20118
20119 fdrInner = fdrOuter + span.redStep;
20120 fdgInner = fdgOuter + span.greenStep;
20121 fdbInner = fdbOuter + span.blueStep;
20122
20123
20124 fdaInner = fdaOuter + span.alphaStep;
20125
20126
20127
20128
20129
20130
20131 dwInner = dwOuter + span.attrStepX[FRAG_ATTRIB_WPOS][3];
20132 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20133 GLuint c;
20134 for (c = 0; c < 4; c++) {
20135 daInner[attr][c] = daOuter[attr][c] + span.attrStepX[attr][c];
20136 }
20137 } }
20138
20139
20140 while (lines > 0) {
20141
20142
20143 const GLint right = ((fxRightEdge) >> 11);
20144 span.x = ((fxLeftEdge) >> 11);
20145 if (right <= span.x)
20146 span.end = 0;
20147 else
20148 span.end = right - span.x;
20149
20150
20151 span.z = zLeft;
20152
20153
20154 span.red = rLeft;
20155 span.green = gLeft;
20156 span.blue = bLeft;
20157
20158
20159 span.alpha = aLeft;
20160
20161
20162
20163
20164
20165
20166
20167 span.attrStart[FRAG_ATTRIB_WPOS][3] = wLeft;
20168 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20169 GLuint c;
20170 for (c = 0; c < 4; c++) {
20171 span.attrStart[attr][c] = attrLeft[attr][c];
20172 }
20173 } }
20174
20175
20176
20177
20178
20179
20180 if (span.end > 0 && span.y >= 0) {
20181 const GLint len = span.end - 1;
20182 (void) len;
20183
20184 do { GLfixed endVal = span.red + (len) * span.redStep; if (endVal < 0) { span.red -= endVal; } if (span.red < 0) { span.red = 0; } } while (0);
20185 do { GLfixed endVal = span.green + (len) * span.greenStep; if (endVal < 0) { span.green -= endVal; } if (span.green < 0) { span.green = 0; } } while (0);
20186 do { GLfixed endVal = span.blue + (len) * span.blueStep; if (endVal < 0) { span.blue -= endVal; } if (span.blue < 0) { span.blue = 0; } } while (0);
20187
20188
20189 do { GLfixed endVal = span.alpha + (len) * span.alphaStep; if (endVal < 0) { span.alpha -= endVal; } if (span.alpha < 0) { span.alpha = 0; } } while (0);
20190
20191 {
20192 span.interpMask &= ~0x01; span.arrayMask |= 0x01; fast_persp_span(ctx, &span, &info);;
20193 }
20194 }
20195
20196
20197
20198
20199
20200
20201
20202 span.y++;
20203 lines--;
20204
20205 fxLeftEdge += fdxLeftEdge;
20206 fxRightEdge += fdxRightEdge;
20207
20208 fError += fdError;
20209 if (fError >= 0) {
20210 fError -= (1 << 11);
20211# 846 "swrast/s_tritemp.h"
20212 zLeft += fdzOuter;
20213
20214
20215 rLeft += fdrOuter;
20216 gLeft += fdgOuter;
20217 bLeft += fdbOuter;
20218
20219
20220 aLeft += fdaOuter;
20221
20222
20223
20224
20225
20226
20227 wLeft += dwOuter;
20228 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20229 GLuint c;
20230 for (c = 0; c < 4; c++) {
20231 attrLeft[attr][c] += daOuter[attr][c];
20232 }
20233 } }
20234
20235 }
20236 else {
20237
20238
20239
20240
20241
20242
20243
20244 zLeft += fdzInner;
20245
20246
20247 rLeft += fdrInner;
20248 gLeft += fdgInner;
20249 bLeft += fdbInner;
20250
20251
20252 aLeft += fdaInner;
20253
20254
20255
20256
20257
20258
20259 wLeft += dwInner;
20260 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20261 GLuint c;
20262 for (c = 0; c < 4; c++) {
20263 attrLeft[attr][c] += daInner[attr][c];
20264 }
20265 } }
20266
20267 }
20268 }
20269
20270 }
20271
20272 }
20273 }
20274}
20275# 845 "swrast/s_triangle.c" 2
20276# 859 "swrast/s_triangle.c"
20277# 1 "swrast/s_tritemp.h" 1
20278# 111 "swrast/s_tritemp.h"
20279static void general_triangle(struct gl_context *ctx, const SWvertex *v0,
20280 const SWvertex *v1,
20281 const SWvertex *v2 )
20282{
20283 typedef struct {
20284 const SWvertex *v0, *v1;
20285 GLfloat dx;
20286 GLfloat dy;
20287 GLfloat dxdy;
20288 GLfixed fdxdy;
20289 GLfloat adjy;
20290 GLfixed fsx;
20291 GLfixed fsy;
20292 GLfixed fx0;
20293 GLint lines;
20294 } EdgeT;
20295
20296 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
20297
20298 const GLint depthBits = ctx->DrawBuffer->Visual.depthBits;
20299 const GLint fixedToDepthShift = depthBits <= 16 ? 11 : 0;
20300 const GLfloat maxDepth = ctx->DrawBuffer->_DepthMaxF;
20301
20302
20303 EdgeT eMaj, eTop, eBot;
20304 GLfloat oneOverArea;
20305 const SWvertex *vMin, *vMid, *vMax;
20306 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
20307 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
20308 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
20309
20310 SWspan span;
20311
20312 (void) swrast;
20313
20314 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
20315 span.y = 0;
20316
20317
20318 (void) fixedToDepthShift;
20319# 172 "swrast/s_tritemp.h"
20320 {
20321 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20322 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20323 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20324 if (fy0 <= fy1) {
20325 if (fy1 <= fy2) {
20326
20327 vMin = v0; vMid = v1; vMax = v2;
20328 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
20329 }
20330 else if (fy2 <= fy0) {
20331
20332 vMin = v2; vMid = v0; vMax = v1;
20333 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
20334 }
20335 else {
20336
20337 vMin = v0; vMid = v2; vMax = v1;
20338 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
20339 bf = -bf;
20340 }
20341 }
20342 else {
20343 if (fy0 <= fy2) {
20344
20345 vMin = v1; vMid = v0; vMax = v2;
20346 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
20347 bf = -bf;
20348 }
20349 else if (fy2 <= fy1) {
20350
20351 vMin = v2; vMid = v1; vMax = v0;
20352 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
20353 bf = -bf;
20354 }
20355 else {
20356
20357 vMin = v1; vMid = v2; vMax = v0;
20358 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
20359 }
20360 }
20361
20362
20363 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20364 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20365 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20366 }
20367
20368
20369 eMaj.v0 = vMin; eMaj.v1 = vMax;
20370 eTop.v0 = vMid; eTop.v1 = vMax;
20371 eBot.v0 = vMin; eBot.v1 = vMid;
20372
20373
20374 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
20375 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
20376 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
20377 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
20378 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
20379 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
20380
20381
20382 {
20383 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
20384
20385 if (IS_INF_OR_NAN(area) || area == 0.0F)
20386 return;
20387
20388 if (area * bf * swrast->_BackfaceCullSign < 0.0)
20389 return;
20390
20391 oneOverArea = 1.0F / area;
20392
20393
20394 span.facing = oneOverArea * bf > 0.0F;
20395 }
20396
20397
20398 {
20399 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
20400 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
20401 if (eMaj.lines > 0) {
20402 eMaj.dxdy = eMaj.dx / eMaj.dy;
20403 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
20404 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
20405 eMaj.fx0 = vMin_fx;
20406 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
20407 }
20408 else {
20409 return;
20410 }
20411
20412 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
20413 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
20414 if (eTop.lines > 0) {
20415 eTop.dxdy = eTop.dx / eTop.dy;
20416 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
20417 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
20418 eTop.fx0 = vMid_fx;
20419 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
20420 }
20421
20422 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
20423 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
20424 if (eBot.lines > 0) {
20425 eBot.dxdy = eBot.dx / eBot.dy;
20426 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
20427 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
20428 eBot.fx0 = vMin_fx;
20429 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
20430 }
20431 }
20432# 319 "swrast/s_tritemp.h"
20433 {
20434 GLint scan_from_left_to_right;
20435# 329 "swrast/s_tritemp.h"
20436 scan_from_left_to_right = (oneOverArea < 0.0F);
20437
20438
20439
20440
20441 span.interpMask |= 0x02;
20442 {
20443 GLfloat eMaj_dz = vMax->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
20444 GLfloat eBot_dz = vMid->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
20445 span.attrStepX[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj_dz * eBot.dy - eMaj.dy * eBot_dz);
20446 if (span.attrStepX[FRAG_ATTRIB_WPOS][2] > maxDepth ||
20447 span.attrStepX[FRAG_ATTRIB_WPOS][2] < -maxDepth) {
20448
20449 span.attrStepX[FRAG_ATTRIB_WPOS][2] = 0.0;
20450 span.attrStepY[FRAG_ATTRIB_WPOS][2] = 0.0;
20451 }
20452 else {
20453 span.attrStepY[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj.dx * eBot_dz - eMaj_dz * eBot.dx);
20454 }
20455 if (depthBits <= 16)
20456 span.zStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))));
20457 else
20458 span.zStep = (GLint) span.attrStepX[FRAG_ATTRIB_WPOS][2];
20459 }
20460
20461
20462 span.interpMask |= 0x01;
20463 if (ctx->Light.ShadeModel == 0x1D01) {
20464 GLfloat eMaj_dr = (GLfloat) (vMax->color[0] - vMin->color[0]);
20465 GLfloat eBot_dr = (GLfloat) (vMid->color[0] - vMin->color[0]);
20466 GLfloat eMaj_dg = (GLfloat) (vMax->color[1] - vMin->color[1]);
20467 GLfloat eBot_dg = (GLfloat) (vMid->color[1] - vMin->color[1]);
20468 GLfloat eMaj_db = (GLfloat) (vMax->color[2] - vMin->color[2]);
20469 GLfloat eBot_db = (GLfloat) (vMid->color[2] - vMin->color[2]);
20470
20471 GLfloat eMaj_da = (GLfloat) (vMax->color[3] - vMin->color[3]);
20472 GLfloat eBot_da = (GLfloat) (vMid->color[3] - vMin->color[3]);
20473
20474 span.attrStepX[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj_dr * eBot.dy - eMaj.dy * eBot_dr);
20475 span.attrStepY[FRAG_ATTRIB_COL0][0] = oneOverArea * (eMaj.dx * eBot_dr - eMaj_dr * eBot.dx);
20476 span.attrStepX[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj_dg * eBot.dy - eMaj.dy * eBot_dg);
20477 span.attrStepY[FRAG_ATTRIB_COL0][1] = oneOverArea * (eMaj.dx * eBot_dg - eMaj_dg * eBot.dx);
20478 span.attrStepX[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj_db * eBot.dy - eMaj.dy * eBot_db);
20479 span.attrStepY[FRAG_ATTRIB_COL0][2] = oneOverArea * (eMaj.dx * eBot_db - eMaj_db * eBot.dx);
20480 span.redStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))));
20481 span.greenStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))));
20482 span.blueStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))));
20483
20484 span.attrStepX[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
20485 span.attrStepY[FRAG_ATTRIB_COL0][3] = oneOverArea * (eMaj.dx * eBot_da - eMaj_da * eBot.dx);
20486 span.alphaStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))));
20487
20488 }
20489 else {
20490 ;
20491 span.interpMask |= 0x04;
20492 span.attrStepX[FRAG_ATTRIB_COL0][0] = span.attrStepY[FRAG_ATTRIB_COL0][0] = 0.0F;
20493 span.attrStepX[FRAG_ATTRIB_COL0][1] = span.attrStepY[FRAG_ATTRIB_COL0][1] = 0.0F;
20494 span.attrStepX[FRAG_ATTRIB_COL0][2] = span.attrStepY[FRAG_ATTRIB_COL0][2] = 0.0F;
20495 span.redStep = 0;
20496 span.greenStep = 0;
20497 span.blueStep = 0;
20498
20499 span.attrStepX[FRAG_ATTRIB_COL0][3] = span.attrStepY[FRAG_ATTRIB_COL0][3] = 0.0F;
20500 span.alphaStep = 0;
20501
20502 }
20503# 412 "swrast/s_tritemp.h"
20504 {
20505
20506 const GLfloat wMax = vMax->attrib[FRAG_ATTRIB_WPOS][3];
20507 const GLfloat wMin = vMin->attrib[FRAG_ATTRIB_WPOS][3];
20508 const GLfloat wMid = vMid->attrib[FRAG_ATTRIB_WPOS][3];
20509 {
20510 const GLfloat eMaj_dw = wMax - wMin;
20511 const GLfloat eBot_dw = wMid - wMin;
20512 span.attrStepX[FRAG_ATTRIB_WPOS][3] = oneOverArea * (eMaj_dw * eBot.dy - eMaj.dy * eBot_dw);
20513 span.attrStepY[FRAG_ATTRIB_WPOS][3] = oneOverArea * (eMaj.dx * eBot_dw - eMaj_dw * eBot.dx);
20514 }
20515 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20516 if (swrast->_InterpMode[attr] == 0x1D00) {
20517 do { span.attrStepX[attr][0] = 0.0; span.attrStepX[attr][1] = 0.0; span.attrStepX[attr][2] = 0.0; span.attrStepX[attr][3] = 0.0; } while(0);
20518 do { span.attrStepY[attr][0] = 0.0; span.attrStepY[attr][1] = 0.0; span.attrStepY[attr][2] = 0.0; span.attrStepY[attr][3] = 0.0; } while(0);
20519 }
20520 else {
20521 GLuint c;
20522 for (c = 0; c < 4; c++) {
20523 GLfloat eMaj_da = vMax->attrib[attr][c] * wMax - vMin->attrib[attr][c] * wMin;
20524 GLfloat eBot_da = vMid->attrib[attr][c] * wMid - vMin->attrib[attr][c] * wMin;
20525 span.attrStepX[attr][c] = oneOverArea * (eMaj_da * eBot.dy - eMaj.dy * eBot_da);
20526 span.attrStepY[attr][c] = oneOverArea * (eMaj.dx * eBot_da - eMaj_da * eBot.dx);
20527 }
20528 }
20529 } }
20530 }
20531# 488 "swrast/s_tritemp.h"
20532 {
20533 GLint subTriangle;
20534 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
20535 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
20536 GLfixed fError = 0, fdError = 0;
20537# 504 "swrast/s_tritemp.h"
20538 GLuint zLeft = 0;
20539 GLfixed fdzOuter = 0, fdzInner;
20540
20541
20542 GLint rLeft = 0, fdrOuter = 0, fdrInner;
20543 GLint gLeft = 0, fdgOuter = 0, fdgInner;
20544 GLint bLeft = 0, fdbOuter = 0, fdbInner;
20545
20546
20547 GLint aLeft = 0, fdaOuter = 0, fdaInner;
20548
20549
20550
20551
20552
20553
20554 GLfloat wLeft = 0, dwOuter = 0, dwInner;
20555 GLfloat attrLeft[FRAG_ATTRIB_MAX][4];
20556 GLfloat daOuter[FRAG_ATTRIB_MAX][4], daInner[FRAG_ATTRIB_MAX][4];
20557
20558
20559 for (subTriangle=0; subTriangle<=1; subTriangle++) {
20560 EdgeT *eLeft, *eRight;
20561 int setupLeft, setupRight;
20562 int lines;
20563
20564 if (subTriangle==0) {
20565
20566 if (scan_from_left_to_right) {
20567 eLeft = &eMaj;
20568 eRight = &eBot;
20569 lines = eRight->lines;
20570 setupLeft = 1;
20571 setupRight = 1;
20572 }
20573 else {
20574 eLeft = &eBot;
20575 eRight = &eMaj;
20576 lines = eLeft->lines;
20577 setupLeft = 1;
20578 setupRight = 1;
20579 }
20580 }
20581 else {
20582
20583 if (scan_from_left_to_right) {
20584 eLeft = &eMaj;
20585 eRight = &eTop;
20586 lines = eRight->lines;
20587 setupLeft = 0;
20588 setupRight = 1;
20589 }
20590 else {
20591 eLeft = &eTop;
20592 eRight = &eMaj;
20593 lines = eLeft->lines;
20594 setupLeft = 1;
20595 setupRight = 0;
20596 }
20597 if (lines == 0)
20598 return;
20599 }
20600
20601 if (setupLeft && eLeft->lines > 0) {
20602 const SWvertex *vLower = eLeft->v0;
20603 const GLfixed fsy = eLeft->fsy;
20604 const GLfixed fsx = eLeft->fsx;
20605 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
20606 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
20607 const GLfixed adjy = (GLfixed) eLeft->adjy;
20608 GLint idxOuter;
20609 GLfloat dxOuter;
20610 GLfixed fdxOuter;
20611
20612 fError = fx - fsx - (1 << 11);
20613 fxLeftEdge = fsx - 1;
20614 fdxLeftEdge = eLeft->fdxdy;
20615 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
20616 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
20617 idxOuter = ((fdxOuter) >> 11);
20618 dxOuter = (GLfloat) idxOuter;
20619 span.y = ((fsy) >> 11);
20620
20621
20622 (void) dxOuter;
20623 (void) adjx;
20624 (void) adjy;
20625 (void) vLower;
20626# 611 "swrast/s_tritemp.h"
20627 {
20628 GLfloat z0 = vLower->attrib[FRAG_ATTRIB_WPOS][2];
20629 if (depthBits <= 16) {
20630
20631 GLfloat tmp = (z0 * ((float) (1 << 11))
20632 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * adjx
20633 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * adjy) + (1 << (11 -1));
20634 if (tmp < 0xffffffff / 2)
20635 zLeft = (GLfixed) tmp;
20636 else
20637 zLeft = 0xffffffff / 2;
20638 fdzOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))))
20639 ;
20640 }
20641 else {
20642
20643 zLeft = (GLuint) (z0 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * ((adjx) * (1.0F / ((float) (1 << 11))))
20644 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * ((adjy) * (1.0F / ((float) (1 << 11)))));
20645 fdzOuter = (GLint) (span.attrStepY[FRAG_ATTRIB_WPOS][2] +
20646 dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]);
20647 }
20648
20649
20650
20651
20652
20653 }
20654
20655
20656 if (ctx->Light.ShadeModel == 0x1D01) {
20657 rLeft = (GLint)(((vLower->color[0]) << 11)
20658 + span.attrStepX[FRAG_ATTRIB_COL0][0] * adjx
20659 + span.attrStepY[FRAG_ATTRIB_COL0][0] * adjy) + (1 << (11 -1));
20660 gLeft = (GLint)(((vLower->color[1]) << 11)
20661 + span.attrStepX[FRAG_ATTRIB_COL0][1] * adjx
20662 + span.attrStepY[FRAG_ATTRIB_COL0][1] * adjy) + (1 << (11 -1));
20663 bLeft = (GLint)(((vLower->color[2]) << 11)
20664 + span.attrStepX[FRAG_ATTRIB_COL0][2] * adjx
20665 + span.attrStepY[FRAG_ATTRIB_COL0][2] * adjy) + (1 << (11 -1));
20666 fdrOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][0] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][0]) * ((float) (1 << 11))) - 0.5F))))
20667 ;
20668 fdgOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][1] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][1]) * ((float) (1 << 11))) - 0.5F))))
20669 ;
20670 fdbOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][2]) * ((float) (1 << 11))) - 0.5F))))
20671 ;
20672
20673 aLeft = (GLint)(((vLower->color[3]) << 11)
20674 + span.attrStepX[FRAG_ATTRIB_COL0][3] * adjx
20675 + span.attrStepY[FRAG_ATTRIB_COL0][3] * adjy) + (1 << (11 -1));
20676 fdaOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_COL0][3] + dxOuter * span.attrStepX[FRAG_ATTRIB_COL0][3]) * ((float) (1 << 11))) - 0.5F))))
20677 ;
20678
20679 }
20680 else {
20681 ;
20682 rLeft = ((v2->color[0]) << 11);
20683 gLeft = ((v2->color[1]) << 11);
20684 bLeft = ((v2->color[2]) << 11);
20685 fdrOuter = fdgOuter = fdbOuter = 0;
20686
20687 aLeft = ((v2->color[3]) << 11);
20688 fdaOuter = 0;
20689
20690 }
20691# 695 "swrast/s_tritemp.h"
20692 {
20693 const GLuint attr = FRAG_ATTRIB_WPOS;
20694 wLeft = vLower->attrib[FRAG_ATTRIB_WPOS][3]
20695 + (span.attrStepX[attr][3] * adjx
20696 + span.attrStepY[attr][3] * adjy) * (1.0F/((float) (1 << 11)));
20697 dwOuter = span.attrStepY[attr][3] + dxOuter * span.attrStepX[attr][3];
20698 }
20699 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20700 const GLfloat invW = vLower->attrib[FRAG_ATTRIB_WPOS][3];
20701 if (swrast->_InterpMode[attr] == 0x1D00) {
20702 GLuint c;
20703 for (c = 0; c < 4; c++) {
20704 attrLeft[attr][c] = v2->attrib[attr][c] * invW;
20705 daOuter[attr][c] = 0.0;
20706 }
20707 }
20708 else {
20709 GLuint c;
20710 for (c = 0; c < 4; c++) {
20711 const GLfloat a = vLower->attrib[attr][c] * invW;
20712 attrLeft[attr][c] = a + ( span.attrStepX[attr][c] * adjx
20713 + span.attrStepY[attr][c] * adjy) * (1.0F/((float) (1 << 11)));
20714 daOuter[attr][c] = span.attrStepY[attr][c] + dxOuter * span.attrStepX[attr][c];
20715 }
20716 }
20717 } }
20718
20719 }
20720
20721
20722 if (setupRight && eRight->lines>0) {
20723 fxRightEdge = eRight->fsx - 1;
20724 fdxRightEdge = eRight->fdxdy;
20725 }
20726
20727 if (lines==0) {
20728 continue;
20729 }
20730# 743 "swrast/s_tritemp.h"
20731 fdzInner = fdzOuter + span.zStep;
20732
20733
20734 fdrInner = fdrOuter + span.redStep;
20735 fdgInner = fdgOuter + span.greenStep;
20736 fdbInner = fdbOuter + span.blueStep;
20737
20738
20739 fdaInner = fdaOuter + span.alphaStep;
20740
20741
20742
20743
20744
20745
20746 dwInner = dwOuter + span.attrStepX[FRAG_ATTRIB_WPOS][3];
20747 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20748 GLuint c;
20749 for (c = 0; c < 4; c++) {
20750 daInner[attr][c] = daOuter[attr][c] + span.attrStepX[attr][c];
20751 }
20752 } }
20753
20754
20755 while (lines > 0) {
20756
20757
20758 const GLint right = ((fxRightEdge) >> 11);
20759 span.x = ((fxLeftEdge) >> 11);
20760 if (right <= span.x)
20761 span.end = 0;
20762 else
20763 span.end = right - span.x;
20764
20765
20766 span.z = zLeft;
20767
20768
20769 span.red = rLeft;
20770 span.green = gLeft;
20771 span.blue = bLeft;
20772
20773
20774 span.alpha = aLeft;
20775
20776
20777
20778
20779
20780
20781
20782 span.attrStart[FRAG_ATTRIB_WPOS][3] = wLeft;
20783 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20784 GLuint c;
20785 for (c = 0; c < 4; c++) {
20786 span.attrStart[attr][c] = attrLeft[attr][c];
20787 }
20788 } }
20789
20790
20791
20792
20793
20794
20795 if (span.end > 0 && span.y >= 0) {
20796 const GLint len = span.end - 1;
20797 (void) len;
20798
20799 do { GLfixed endVal = span.red + (len) * span.redStep; if (endVal < 0) { span.red -= endVal; } if (span.red < 0) { span.red = 0; } } while (0);
20800 do { GLfixed endVal = span.green + (len) * span.greenStep; if (endVal < 0) { span.green -= endVal; } if (span.green < 0) { span.green = 0; } } while (0);
20801 do { GLfixed endVal = span.blue + (len) * span.blueStep; if (endVal < 0) { span.blue -= endVal; } if (span.blue < 0) { span.blue = 0; } } while (0);
20802
20803
20804 do { GLfixed endVal = span.alpha + (len) * span.alphaStep; if (endVal < 0) { span.alpha -= endVal; } if (span.alpha < 0) { span.alpha = 0; } } while (0);
20805
20806 {
20807 _swrast_write_rgba_span(ctx, &span);;
20808 }
20809 }
20810
20811
20812
20813
20814
20815
20816
20817 span.y++;
20818 lines--;
20819
20820 fxLeftEdge += fdxLeftEdge;
20821 fxRightEdge += fdxRightEdge;
20822
20823 fError += fdError;
20824 if (fError >= 0) {
20825 fError -= (1 << 11);
20826# 846 "swrast/s_tritemp.h"
20827 zLeft += fdzOuter;
20828
20829
20830 rLeft += fdrOuter;
20831 gLeft += fdgOuter;
20832 bLeft += fdbOuter;
20833
20834
20835 aLeft += fdaOuter;
20836
20837
20838
20839
20840
20841
20842 wLeft += dwOuter;
20843 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20844 GLuint c;
20845 for (c = 0; c < 4; c++) {
20846 attrLeft[attr][c] += daOuter[attr][c];
20847 }
20848 } }
20849
20850 }
20851 else {
20852
20853
20854
20855
20856
20857
20858
20859 zLeft += fdzInner;
20860
20861
20862 rLeft += fdrInner;
20863 gLeft += fdgInner;
20864 bLeft += fdbInner;
20865
20866
20867 aLeft += fdaInner;
20868
20869
20870
20871
20872
20873
20874 wLeft += dwInner;
20875 { GLuint a; for (a = 0; a < swrast->_NumActiveAttribs; a++) { const GLuint attr = swrast->_ActiveAttribs[a];
20876 GLuint c;
20877 for (c = 0; c < 4; c++) {
20878 attrLeft[attr][c] += daInner[attr][c];
20879 }
20880 } }
20881
20882 }
20883 }
20884
20885 }
20886
20887 }
20888 }
20889}
20890# 860 "swrast/s_triangle.c" 2
20891# 902 "swrast/s_triangle.c"
20892# 1 "swrast/s_tritemp.h" 1
20893# 111 "swrast/s_tritemp.h"
20894static void occlusion_zless_triangle(struct gl_context *ctx, const SWvertex *v0,
20895 const SWvertex *v1,
20896 const SWvertex *v2 )
20897{
20898 typedef struct {
20899 const SWvertex *v0, *v1;
20900 GLfloat dx;
20901 GLfloat dy;
20902 GLfloat dxdy;
20903 GLfixed fdxdy;
20904 GLfloat adjy;
20905 GLfixed fsx;
20906 GLfixed fsy;
20907 GLfixed fx0;
20908 GLint lines;
20909 } EdgeT;
20910
20911 const SWcontext *swrast = SWRAST_CONTEXT(ctx);
20912
20913 const GLint depthBits = ctx->DrawBuffer->Visual.depthBits;
20914 const GLint fixedToDepthShift = depthBits <= 16 ? 11 : 0;
20915 const GLfloat maxDepth = ctx->DrawBuffer->_DepthMaxF;
20916
20917
20918 EdgeT eMaj, eTop, eBot;
20919 GLfloat oneOverArea;
20920 const SWvertex *vMin, *vMid, *vMax;
20921 GLfloat bf = SWRAST_CONTEXT(ctx)->_BackfaceSign;
20922 const GLint snapMask = ~(((1 << 11) / (1 << 4)) - 1);
20923 GLfixed vMin_fx, vMin_fy, vMid_fx, vMid_fy, vMax_fx, vMax_fy;
20924
20925 SWspan span;
20926
20927 (void) swrast;
20928
20929 do { (span).primitive = (0x0009); (span).interpMask = 0x0; (span).arrayMask = 0x0; (span).arrayAttribs = 0x0; (span).end = 0; (span).leftClip = 0; (span).facing = 0; (span).array = SWRAST_CONTEXT(ctx)->SpanArrays; } while (0);
20930 span.y = 0;
20931
20932
20933 (void) fixedToDepthShift;
20934# 172 "swrast/s_tritemp.h"
20935 {
20936 const GLfixed fy0 = (((int) ((((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v0->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20937 const GLfixed fy1 = (((int) ((((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v1->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20938 const GLfixed fy2 = (((int) ((((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) + 0.5F) : (((v2->attrib[FRAG_ATTRIB_WPOS][1] - 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20939 if (fy0 <= fy1) {
20940 if (fy1 <= fy2) {
20941
20942 vMin = v0; vMid = v1; vMax = v2;
20943 vMin_fy = fy0; vMid_fy = fy1; vMax_fy = fy2;
20944 }
20945 else if (fy2 <= fy0) {
20946
20947 vMin = v2; vMid = v0; vMax = v1;
20948 vMin_fy = fy2; vMid_fy = fy0; vMax_fy = fy1;
20949 }
20950 else {
20951
20952 vMin = v0; vMid = v2; vMax = v1;
20953 vMin_fy = fy0; vMid_fy = fy2; vMax_fy = fy1;
20954 bf = -bf;
20955 }
20956 }
20957 else {
20958 if (fy0 <= fy2) {
20959
20960 vMin = v1; vMid = v0; vMax = v2;
20961 vMin_fy = fy1; vMid_fy = fy0; vMax_fy = fy2;
20962 bf = -bf;
20963 }
20964 else if (fy2 <= fy1) {
20965
20966 vMin = v2; vMid = v1; vMax = v0;
20967 vMin_fy = fy2; vMid_fy = fy1; vMax_fy = fy0;
20968 bf = -bf;
20969 }
20970 else {
20971
20972 vMin = v1; vMid = v2; vMax = v0;
20973 vMin_fy = fy1; vMid_fy = fy2; vMax_fy = fy0;
20974 }
20975 }
20976
20977
20978 vMin_fx = (((int) ((((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMin->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20979 vMid_fx = (((int) ((((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMid->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20980 vMax_fx = (((int) ((((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) >= 0.0F) ? (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) + 0.5F) : (((vMax->attrib[FRAG_ATTRIB_WPOS][0] + 0.5F) * ((float) (1 << 11))) - 0.5F)))) & snapMask;
20981 }
20982
20983
20984 eMaj.v0 = vMin; eMaj.v1 = vMax;
20985 eTop.v0 = vMid; eTop.v1 = vMax;
20986 eBot.v0 = vMin; eBot.v1 = vMid;
20987
20988
20989 eMaj.dx = ((vMax_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
20990 eMaj.dy = ((vMax_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
20991 eTop.dx = ((vMax_fx - vMid_fx) * (1.0F / ((float) (1 << 11))));
20992 eTop.dy = ((vMax_fy - vMid_fy) * (1.0F / ((float) (1 << 11))));
20993 eBot.dx = ((vMid_fx - vMin_fx) * (1.0F / ((float) (1 << 11))));
20994 eBot.dy = ((vMid_fy - vMin_fy) * (1.0F / ((float) (1 << 11))));
20995
20996
20997 {
20998 const GLfloat area = eMaj.dx * eBot.dy - eBot.dx * eMaj.dy;
20999
21000 if (IS_INF_OR_NAN(area) || area == 0.0F)
21001 return;
21002
21003 if (area * bf * swrast->_BackfaceCullSign < 0.0)
21004 return;
21005
21006 oneOverArea = 1.0F / area;
21007
21008
21009 span.facing = oneOverArea * bf > 0.0F;
21010 }
21011
21012
21013 {
21014 eMaj.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
21015 eMaj.lines = (((((vMax_fy - eMaj.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
21016 if (eMaj.lines > 0) {
21017 eMaj.dxdy = eMaj.dx / eMaj.dy;
21018 eMaj.fdxdy = (((int) ((((eMaj.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eMaj.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eMaj.dxdy) * ((float) (1 << 11))) - 0.5F))));
21019 eMaj.adjy = (GLfloat) (eMaj.fsy - vMin_fy);
21020 eMaj.fx0 = vMin_fx;
21021 eMaj.fsx = eMaj.fx0 + (GLfixed) (eMaj.adjy * eMaj.dxdy);
21022 }
21023 else {
21024 return;
21025 }
21026
21027 eTop.fsy = (((vMid_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
21028 eTop.lines = (((((vMax_fy - eTop.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
21029 if (eTop.lines > 0) {
21030 eTop.dxdy = eTop.dx / eTop.dy;
21031 eTop.fdxdy = (((int) ((((eTop.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eTop.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eTop.dxdy) * ((float) (1 << 11))) - 0.5F))));
21032 eTop.adjy = (GLfloat) (eTop.fsy - vMid_fy);
21033 eTop.fx0 = vMid_fx;
21034 eTop.fsx = eTop.fx0 + (GLfixed) (eTop.adjy * eTop.dxdy);
21035 }
21036
21037 eBot.fsy = (((vMin_fy) + (1 << 11) - 1) & (~((1 << 11) - 1)));
21038 eBot.lines = (((((vMid_fy - eBot.fsy) + (1 << 11) - 1) & (~((1 << 11) - 1)))) >> 11);
21039 if (eBot.lines > 0) {
21040 eBot.dxdy = eBot.dx / eBot.dy;
21041 eBot.fdxdy = (((int) ((((eBot.dxdy) * ((float) (1 << 11))) >= 0.0F) ? (((eBot.dxdy) * ((float) (1 << 11))) + 0.5F) : (((eBot.dxdy) * ((float) (1 << 11))) - 0.5F))));
21042 eBot.adjy = (GLfloat) (eBot.fsy - vMin_fy);
21043 eBot.fx0 = vMin_fx;
21044 eBot.fsx = eBot.fx0 + (GLfixed) (eBot.adjy * eBot.dxdy);
21045 }
21046 }
21047# 319 "swrast/s_tritemp.h"
21048 {
21049 GLint scan_from_left_to_right;
21050
21051
21052
21053
21054
21055 struct gl_renderbuffer *rb = ctx->DrawBuffer->_DepthBuffer; struct gl_query_object *q = ctx->Query.CurrentOcclusionObject; ; ; ; if (!q) { return; }
21056
21057
21058 scan_from_left_to_right = (oneOverArea < 0.0F);
21059
21060
21061
21062
21063 span.interpMask |= 0x02;
21064 {
21065 GLfloat eMaj_dz = vMax->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
21066 GLfloat eBot_dz = vMid->attrib[FRAG_ATTRIB_WPOS][2] - vMin->attrib[FRAG_ATTRIB_WPOS][2];
21067 span.attrStepX[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj_dz * eBot.dy - eMaj.dy * eBot_dz);
21068 if (span.attrStepX[FRAG_ATTRIB_WPOS][2] > maxDepth ||
21069 span.attrStepX[FRAG_ATTRIB_WPOS][2] < -maxDepth) {
21070
21071 span.attrStepX[FRAG_ATTRIB_WPOS][2] = 0.0;
21072 span.attrStepY[FRAG_ATTRIB_WPOS][2] = 0.0;
21073 }
21074 else {
21075 span.attrStepY[FRAG_ATTRIB_WPOS][2] = oneOverArea * (eMaj.dx * eBot_dz - eMaj_dz * eBot.dx);
21076 }
21077 if (depthBits <= 16)
21078 span.zStep = (((int) ((((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))));
21079 else
21080 span.zStep = (GLint) span.attrStepX[FRAG_ATTRIB_WPOS][2];
21081 }
21082# 488 "swrast/s_tritemp.h"
21083 {
21084 GLint subTriangle;
21085 GLfixed fxLeftEdge = 0, fxRightEdge = 0;
21086 GLfixed fdxLeftEdge = 0, fdxRightEdge = 0;
21087 GLfixed fError = 0, fdError = 0;
21088# 504 "swrast/s_tritemp.h"
21089 GLuint zLeft = 0;
21090 GLfixed fdzOuter = 0, fdzInner;
21091# 525 "swrast/s_tritemp.h"
21092 for (subTriangle=0; subTriangle<=1; subTriangle++) {
21093 EdgeT *eLeft, *eRight;
21094 int setupLeft, setupRight;
21095 int lines;
21096
21097 if (subTriangle==0) {
21098
21099 if (scan_from_left_to_right) {
21100 eLeft = &eMaj;
21101 eRight = &eBot;
21102 lines = eRight->lines;
21103 setupLeft = 1;
21104 setupRight = 1;
21105 }
21106 else {
21107 eLeft = &eBot;
21108 eRight = &eMaj;
21109 lines = eLeft->lines;
21110 setupLeft = 1;
21111 setupRight = 1;
21112 }
21113 }
21114 else {
21115
21116 if (scan_from_left_to_right) {
21117 eLeft = &eMaj;
21118 eRight = &eTop;
21119 lines = eRight->lines;
21120 setupLeft = 0;
21121 setupRight = 1;
21122 }
21123 else {
21124 eLeft = &eTop;
21125 eRight = &eMaj;
21126 lines = eLeft->lines;
21127 setupLeft = 1;
21128 setupRight = 0;
21129 }
21130 if (lines == 0)
21131 return;
21132 }
21133
21134 if (setupLeft && eLeft->lines > 0) {
21135 const SWvertex *vLower = eLeft->v0;
21136 const GLfixed fsy = eLeft->fsy;
21137 const GLfixed fsx = eLeft->fsx;
21138 const GLfixed fx = (((fsx) + (1 << 11) - 1) & (~((1 << 11) - 1)));
21139 const GLfixed adjx = (GLfixed) (fx - eLeft->fx0);
21140 const GLfixed adjy = (GLfixed) eLeft->adjy;
21141 GLint idxOuter;
21142 GLfloat dxOuter;
21143 GLfixed fdxOuter;
21144
21145 fError = fx - fsx - (1 << 11);
21146 fxLeftEdge = fsx - 1;
21147 fdxLeftEdge = eLeft->fdxdy;
21148 fdxOuter = ((fdxLeftEdge - 1) & (~((1 << 11) - 1)));
21149 fdError = fdxOuter - fdxLeftEdge + (1 << 11);
21150 idxOuter = ((fdxOuter) >> 11);
21151 dxOuter = (GLfloat) idxOuter;
21152 span.y = ((fsy) >> 11);
21153
21154
21155 (void) dxOuter;
21156 (void) adjx;
21157 (void) adjy;
21158 (void) vLower;
21159# 611 "swrast/s_tritemp.h"
21160 {
21161 GLfloat z0 = vLower->attrib[FRAG_ATTRIB_WPOS][2];
21162 if (depthBits <= 16) {
21163
21164 GLfloat tmp = (z0 * ((float) (1 << 11))
21165 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * adjx
21166 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * adjy) + (1 << (11 -1));
21167 if (tmp < 0xffffffff / 2)
21168 zLeft = (GLfixed) tmp;
21169 else
21170 zLeft = 0xffffffff / 2;
21171 fdzOuter = (((int) ((((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) >= 0.0F) ? (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) + 0.5F) : (((span.attrStepY[FRAG_ATTRIB_WPOS][2] + dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]) * ((float) (1 << 11))) - 0.5F))))
21172 ;
21173 }
21174 else {
21175
21176 zLeft = (GLuint) (z0 + span.attrStepX[FRAG_ATTRIB_WPOS][2] * ((adjx) * (1.0F / ((float) (1 << 11))))
21177 + span.attrStepY[FRAG_ATTRIB_WPOS][2] * ((adjy) * (1.0F / ((float) (1 << 11)))));
21178 fdzOuter = (GLint) (span.attrStepY[FRAG_ATTRIB_WPOS][2] +
21179 dxOuter * span.attrStepX[FRAG_ATTRIB_WPOS][2]);
21180 }
21181
21182
21183
21184
21185
21186 }
21187# 722 "swrast/s_tritemp.h"
21188 }
21189
21190
21191 if (setupRight && eRight->lines>0) {
21192 fxRightEdge = eRight->fsx - 1;
21193 fdxRightEdge = eRight->fdxdy;
21194 }
21195
21196 if (lines==0) {
21197 continue;
21198 }
21199# 743 "swrast/s_tritemp.h"
21200 fdzInner = fdzOuter + span.zStep;
21201# 767 "swrast/s_tritemp.h"
21202 while (lines > 0) {
21203
21204
21205 const GLint right = ((fxRightEdge) >> 11);
21206 span.x = ((fxLeftEdge) >> 11);
21207 if (right <= span.x)
21208 span.end = 0;
21209 else
21210 span.end = right - span.x;
21211
21212
21213 span.z = zLeft;
21214# 807 "swrast/s_tritemp.h"
21215 if (span.end > 0 && span.y >= 0) {
21216 const GLint len = span.end - 1;
21217 (void) len;
21218# 818 "swrast/s_tritemp.h"
21219 {
21220 if (rb->Format == MESA_FORMAT_Z16) { GLuint i; const GLushort *zRow = (const GLushort *) rb->GetPointer(ctx, rb, span.x, span.y); for (i = 0; i < span.end; i++) { GLuint z = ((span.z) >> fixedToDepthShift); if (z < zRow[i]) { q->Result++; } span.z += span.zStep; } } else { GLuint i; const GLuint *zRow = (const GLuint *) rb->GetPointer(ctx, rb, span.x, span.y); for (i = 0; i < span.end; i++) { if ((GLuint)span.z < zRow[i]) { q->Result++; } span.z += span.zStep; } };
21221 }
21222 }
21223
21224
21225
21226
21227
21228
21229
21230 span.y++;
21231 lines--;
21232
21233 fxLeftEdge += fdxLeftEdge;
21234 fxRightEdge += fdxRightEdge;
21235
21236 fError += fdError;
21237 if (fError >= 0) {
21238 fError -= (1 << 11);
21239# 846 "swrast/s_tritemp.h"
21240 zLeft += fdzOuter;
21241# 869 "swrast/s_tritemp.h"
21242 }
21243 else {
21244
21245
21246
21247
21248
21249
21250
21251 zLeft += fdzInner;
21252# 901 "swrast/s_tritemp.h"
21253 }
21254 }
21255
21256 }
21257
21258 }
21259 }
21260}
21261# 903 "swrast/s_triangle.c" 2
21262
21263
21264
21265static void
21266nodraw_triangle( struct gl_context *ctx,
21267 const SWvertex *v0,
21268 const SWvertex *v1,
21269 const SWvertex *v2 )
21270{
21271 (void) (ctx && v0 && v1 && v2);
21272}
21273# 922 "swrast/s_triangle.c"
21274void
21275_swrast_add_spec_terms_triangle(struct gl_context *ctx, const SWvertex *v0,
21276 const SWvertex *v1, const SWvertex *v2)
21277{
21278 SWvertex *ncv0 = (SWvertex *)v0;
21279 SWvertex *ncv1 = (SWvertex *)v1;
21280 SWvertex *ncv2 = (SWvertex *)v2;
21281 GLfloat rSum, gSum, bSum;
21282 GLchan cSave[3][4];
21283
21284
21285 do { (cSave[0])[0] = (ncv0->color)[0]; (cSave[0])[1] = (ncv0->color)[1]; (cSave[0])[2] = (ncv0->color)[2]; (cSave[0])[3] = (ncv0->color)[3]; } while (0);
21286 do { (cSave[1])[0] = (ncv1->color)[0]; (cSave[1])[1] = (ncv1->color)[1]; (cSave[1])[2] = (ncv1->color)[2]; (cSave[1])[3] = (ncv1->color)[3]; } while (0);
21287 do { (cSave[2])[0] = (ncv2->color)[0]; (cSave[2])[1] = (ncv2->color)[1]; (cSave[2])[2] = (ncv2->color)[2]; (cSave[2])[3] = (ncv2->color)[3]; } while (0);
21288
21289 rSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv0->color[0])] + ncv0->attrib[FRAG_ATTRIB_COL1][0];
21290 gSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv0->color[1])] + ncv0->attrib[FRAG_ATTRIB_COL1][1];
21291 bSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv0->color[2])] + ncv0->attrib[FRAG_ATTRIB_COL1][2];
21292 do { fi_type __tmp; __tmp.f = (rSum); if (__tmp.i < 0) ncv0->color[0] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv0->color[0] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv0->color[0] = (GLubyte) __tmp.i; } } while (0);
21293 do { fi_type __tmp; __tmp.f = (gSum); if (__tmp.i < 0) ncv0->color[1] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv0->color[1] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv0->color[1] = (GLubyte) __tmp.i; } } while (0);
21294 do { fi_type __tmp; __tmp.f = (bSum); if (__tmp.i < 0) ncv0->color[2] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv0->color[2] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv0->color[2] = (GLubyte) __tmp.i; } } while (0);
21295
21296 rSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv1->color[0])] + ncv1->attrib[FRAG_ATTRIB_COL1][0];
21297 gSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv1->color[1])] + ncv1->attrib[FRAG_ATTRIB_COL1][1];
21298 bSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv1->color[2])] + ncv1->attrib[FRAG_ATTRIB_COL1][2];
21299 do { fi_type __tmp; __tmp.f = (rSum); if (__tmp.i < 0) ncv1->color[0] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv1->color[0] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv1->color[0] = (GLubyte) __tmp.i; } } while (0);
21300 do { fi_type __tmp; __tmp.f = (gSum); if (__tmp.i < 0) ncv1->color[1] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv1->color[1] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv1->color[1] = (GLubyte) __tmp.i; } } while (0);
21301 do { fi_type __tmp; __tmp.f = (bSum); if (__tmp.i < 0) ncv1->color[2] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv1->color[2] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv1->color[2] = (GLubyte) __tmp.i; } } while (0);
21302
21303 rSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv2->color[0])] + ncv2->attrib[FRAG_ATTRIB_COL1][0];
21304 gSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv2->color[1])] + ncv2->attrib[FRAG_ATTRIB_COL1][1];
21305 bSum = _mesa_ubyte_to_float_color_tab[(unsigned int)(ncv2->color[2])] + ncv2->attrib[FRAG_ATTRIB_COL1][2];
21306 do { fi_type __tmp; __tmp.f = (rSum); if (__tmp.i < 0) ncv2->color[0] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv2->color[0] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv2->color[0] = (GLubyte) __tmp.i; } } while (0);
21307 do { fi_type __tmp; __tmp.f = (gSum); if (__tmp.i < 0) ncv2->color[1] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv2->color[1] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv2->color[1] = (GLubyte) __tmp.i; } } while (0);
21308 do { fi_type __tmp; __tmp.f = (bSum); if (__tmp.i < 0) ncv2->color[2] = (GLubyte) 0; else if (__tmp.i >= 0x3f7f0000) ncv2->color[2] = (GLubyte) 255; else { __tmp.f = __tmp.f * (255.0F/256.0F) + 32768.0F; ncv2->color[2] = (GLubyte) __tmp.i; } } while (0);
21309
21310 SWRAST_CONTEXT(ctx)->SpecTriangle( ctx, ncv0, ncv1, ncv2 );
21311
21312 do { (ncv0->color)[0] = (cSave[0])[0]; (ncv0->color)[1] = (cSave[0])[1]; (ncv0->color)[2] = (cSave[0])[2]; (ncv0->color)[3] = (cSave[0])[3]; } while (0);
21313 do { (ncv1->color)[0] = (cSave[1])[0]; (ncv1->color)[1] = (cSave[1])[1]; (ncv1->color)[2] = (cSave[1])[2]; (ncv1->color)[3] = (cSave[1])[3]; } while (0);
21314 do { (ncv2->color)[0] = (cSave[2])[0]; (ncv2->color)[1] = (cSave[2])[1]; (ncv2->color)[2] = (cSave[2])[2]; (ncv2->color)[3] = (cSave[2])[3]; } while (0);
21315}
21316# 995 "swrast/s_triangle.c"
21317void
21318_swrast_choose_triangle( struct gl_context *ctx )
21319{
21320 SWcontext *swrast = SWRAST_CONTEXT(ctx);
21321
21322 if (ctx->Polygon.CullFlag &&
21323 ctx->Polygon.CullFaceMode == 0x0408) {
21324 swrast->Triangle = nodraw_triangle;;
21325 return;
21326 }
21327
21328 if (ctx->RenderMode==0x1C00) {
21329
21330 if (ctx->Polygon.SmoothFlag) {
21331 _swrast_set_aa_triangle_function(ctx);
21332 ;
21333 return;
21334 }
21335
21336
21337 if (ctx->Query.CurrentOcclusionObject &&
21338 ctx->Depth.Test &&
21339 ctx->Depth.Mask == 0x0 &&
21340 ctx->Depth.Func == 0x0201 &&
21341 !ctx->Stencil._Enabled) {
21342 if (ctx->Color.ColorMask[0][0] == 0 &&
21343 ctx->Color.ColorMask[0][1] == 0 &&
21344 ctx->Color.ColorMask[0][2] == 0 &&
21345 ctx->Color.ColorMask[0][3] == 0) {
21346 swrast->Triangle = occlusion_zless_triangle;;
21347 return;
21348 }
21349 }
21350
21351
21352
21353
21354
21355 if (ctx->Texture._EnabledCoordUnits ||
21356 ctx->FragmentProgram._Current ||
21357 ctx->ATIFragmentShader._Enabled ||
21358 _mesa_need_secondary_color(ctx) ||
21359 swrast->_FogEnabled) {
21360
21361 const struct gl_texture_object *texObj2D;
21362 const struct gl_texture_image *texImg;
21363 GLenum minFilter, magFilter, envMode;
21364 gl_format format;
21365 texObj2D = ctx->Texture.Unit[0].CurrentTex[TEXTURE_2D_INDEX];
21366
21367 texImg = texObj2D ? texObj2D->Image[0][texObj2D->BaseLevel] : ((void *)0);
21368 format = texImg ? texImg->TexFormat : MESA_FORMAT_NONE;
21369 minFilter = texObj2D ? texObj2D->Sampler.MinFilter : 0x0;
21370 magFilter = texObj2D ? texObj2D->Sampler.MagFilter : 0x0;
21371 envMode = ctx->Texture.Unit[0].EnvMode;
21372
21373
21374 if (ctx->Texture._EnabledCoordUnits == 0x1
21375 && !ctx->FragmentProgram._Current
21376 && !ctx->ATIFragmentShader._Enabled
21377 && ctx->Texture._EnabledUnits == 0x1
21378 && ctx->Texture.Unit[0]._ReallyEnabled == (1 << TEXTURE_2D_INDEX)
21379 && texObj2D->Sampler.WrapS == 0x2901
21380 && texObj2D->Sampler.WrapT == 0x2901
21381 && texObj2D->_Swizzle == (((0)<<0) | ((1)<<3) | ((2)<<6) | ((3)<<9))
21382 && texImg->_IsPowerOfTwo
21383 && texImg->Border == 0
21384 && texImg->Width == texImg->RowStride
21385 && (format == MESA_FORMAT_RGB888 || format == MESA_FORMAT_RGBA8888)
21386 && minFilter == magFilter
21387 && ctx->Light.Model.ColorControl == 0x81F9
21388 && !swrast->_FogEnabled
21389 && ctx->Texture.Unit[0].EnvMode != 0x8570
21390 && ctx->Texture.Unit[0].EnvMode != 0x8503) {
21391 if (ctx->Hint.PerspectiveCorrection==0x1101) {
21392 if (minFilter == 0x2600
21393 && format == MESA_FORMAT_RGB888
21394 && (envMode == 0x1E01 || envMode == 0x2101)
21395 && ((swrast->_RasterMask == (0x004 | 0x1000)
21396 && ctx->Depth.Func == 0x0201
21397 && ctx->Depth.Mask == 0x1)
21398 || swrast->_RasterMask == 0x1000)
21399 && ctx->Polygon.StippleFlag == 0x0
21400 && ctx->DrawBuffer->Visual.depthBits <= 16) {
21401 if (swrast->_RasterMask == (0x004 | 0x1000)) {
21402 swrast->Triangle = simple_z_textured_triangle;;
21403 }
21404 else {
21405 swrast->Triangle = simple_textured_triangle;;
21406 }
21407 }
21408 else {
21409
21410
21411
21412 if (format == MESA_FORMAT_RGBA8888 && !_mesa_little_endian()) {
21413
21414
21415
21416 swrast->Triangle = general_triangle;;
21417 }
21418 else {
21419 swrast->Triangle = affine_textured_triangle;;
21420 }
21421
21422 }
21423 }
21424 else {
21425
21426
21427
21428 swrast->Triangle = persp_textured_triangle;;
21429
21430 }
21431 }
21432 else {
21433
21434 swrast->Triangle = general_triangle;;
21435 }
21436 }
21437 else {
21438 ;
21439 ;
21440 if (ctx->Light.ShadeModel==0x1D01) {
21441
21442
21443
21444
21445 swrast->Triangle = smooth_rgba_triangle;;
21446
21447 }
21448 else {
21449
21450
21451
21452
21453 swrast->Triangle = flat_rgba_triangle;;
21454
21455 }
21456 }
21457 }
21458 else if (ctx->RenderMode==0x1C01) {
21459 swrast->Triangle = _swrast_feedback_triangle;;
21460 }
21461 else {
21462
21463 swrast->Triangle = _swrast_select_triangle;;
21464 }
21465}