summaryrefslogtreecommitdiff
path: root/src/glx
diff options
context:
space:
mode:
authorIan Romanick <idr@us.ibm.com>2006-08-31 20:41:16 +0000
committerIan Romanick <idr@us.ibm.com>2006-08-31 20:41:16 +0000
commitd6c675f497950c6fa5afea531e86a25fd115d2a5 (patch)
tree2b3c17cc1399a30dc2d7545f07335de58d5055de /src/glx
parent934a2dcf0fcbc0e1f422453b50ae60ad8f0d8d12 (diff)
Fix problems with vertex program protocol
There were two sets of bugs in the vertex program (ARB and NV) protocol. First, several of the ARB functions were missing the 'doubles_in_order="true"' annotation. Second, after the ARB decided that glVertexAttrib*ARB functions must not alias fixed-function state for GLSL, Nvidia re-assigned GLX protocol opcodes for glVertexAttrib*NV (circa Septeber 2004). For some reason gl_API.xml was never updated to reflect this, and the updated version of the GL_NV_vertex_program spec never made into the registry.
Diffstat (limited to 'src/glx')
-rw-r--r--src/glx/x11/indirect.c96
1 files changed, 48 insertions, 48 deletions
diff --git a/src/glx/x11/indirect.c b/src/glx/x11/indirect.c
index e9d6422102..54cea1419e 100644
--- a/src/glx/x11/indirect.c
+++ b/src/glx/x11/indirect.c
@@ -6074,8 +6074,8 @@ __indirect_glVertexAttrib1dARB(GLuint index, GLdouble x)
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 16;
emit_header(gc->pc, X_GLrop_VertexAttrib1dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(&x), 8);
- (void) memcpy((void *)(gc->pc + 12), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(&x), 8);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -6087,8 +6087,8 @@ __indirect_glVertexAttrib1dvARB(GLuint index, const GLdouble * v)
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 16;
emit_header(gc->pc, X_GLrop_VertexAttrib1dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(v), 8);
- (void) memcpy((void *)(gc->pc + 12), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(v), 8);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -6152,9 +6152,9 @@ __indirect_glVertexAttrib2dARB(GLuint index, GLdouble x, GLdouble y)
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 24;
emit_header(gc->pc, X_GLrop_VertexAttrib2dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(&x), 8);
- (void) memcpy((void *)(gc->pc + 12), (void *)(&y), 8);
- (void) memcpy((void *)(gc->pc + 20), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(&x), 8);
+ (void) memcpy((void *)(gc->pc + 16), (void *)(&y), 8);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -6166,8 +6166,8 @@ __indirect_glVertexAttrib2dvARB(GLuint index, const GLdouble * v)
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 24;
emit_header(gc->pc, X_GLrop_VertexAttrib2dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(v), 16);
- (void) memcpy((void *)(gc->pc + 20), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(v), 16);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -6233,10 +6233,10 @@ __indirect_glVertexAttrib3dARB(GLuint index, GLdouble x, GLdouble y, GLdouble z)
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 32;
emit_header(gc->pc, X_GLrop_VertexAttrib3dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(&x), 8);
- (void) memcpy((void *)(gc->pc + 12), (void *)(&y), 8);
- (void) memcpy((void *)(gc->pc + 20), (void *)(&z), 8);
- (void) memcpy((void *)(gc->pc + 28), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(&x), 8);
+ (void) memcpy((void *)(gc->pc + 16), (void *)(&y), 8);
+ (void) memcpy((void *)(gc->pc + 24), (void *)(&z), 8);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -6248,8 +6248,8 @@ __indirect_glVertexAttrib3dvARB(GLuint index, const GLdouble * v)
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 32;
emit_header(gc->pc, X_GLrop_VertexAttrib3dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(v), 24);
- (void) memcpy((void *)(gc->pc + 28), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(v), 24);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -6424,11 +6424,11 @@ __indirect_glVertexAttrib4dARB(GLuint index, GLdouble x, GLdouble y, GLdouble z,
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 40;
emit_header(gc->pc, X_GLrop_VertexAttrib4dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(&x), 8);
- (void) memcpy((void *)(gc->pc + 12), (void *)(&y), 8);
- (void) memcpy((void *)(gc->pc + 20), (void *)(&z), 8);
- (void) memcpy((void *)(gc->pc + 28), (void *)(&w), 8);
- (void) memcpy((void *)(gc->pc + 36), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(&x), 8);
+ (void) memcpy((void *)(gc->pc + 16), (void *)(&y), 8);
+ (void) memcpy((void *)(gc->pc + 24), (void *)(&z), 8);
+ (void) memcpy((void *)(gc->pc + 32), (void *)(&w), 8);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -6440,8 +6440,8 @@ __indirect_glVertexAttrib4dvARB(GLuint index, const GLdouble * v)
__GLXcontext * const gc = __glXGetCurrentContext();
const GLuint cmdlen = 40;
emit_header(gc->pc, X_GLrop_VertexAttrib4dvARB, cmdlen);
- (void) memcpy((void *)(gc->pc + 4), (void *)(v), 32);
- (void) memcpy((void *)(gc->pc + 36), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 4), (void *)(&index), 4);
+ (void) memcpy((void *)(gc->pc + 8), (void *)(v), 32);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
@@ -7541,7 +7541,7 @@ __indirect_glTrackMatrixNV(GLenum target, GLuint address, GLenum matrix, GLenum
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib1dvNV 4197
+#define X_GLrop_VertexAttrib1dvNV 4273
void
__indirect_glVertexAttrib1dNV(GLuint index, GLdouble x)
{
@@ -7554,7 +7554,7 @@ __indirect_glVertexAttrib1dNV(GLuint index, GLdouble x)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib1dvNV 4197
+#define X_GLrop_VertexAttrib1dvNV 4273
void
__indirect_glVertexAttrib1dvNV(GLuint index, const GLdouble * v)
{
@@ -7567,7 +7567,7 @@ __indirect_glVertexAttrib1dvNV(GLuint index, const GLdouble * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib1fvNV 4193
+#define X_GLrop_VertexAttrib1fvNV 4269
void
__indirect_glVertexAttrib1fNV(GLuint index, GLfloat x)
{
@@ -7580,7 +7580,7 @@ __indirect_glVertexAttrib1fNV(GLuint index, GLfloat x)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib1fvNV 4193
+#define X_GLrop_VertexAttrib1fvNV 4269
void
__indirect_glVertexAttrib1fvNV(GLuint index, const GLfloat * v)
{
@@ -7593,7 +7593,7 @@ __indirect_glVertexAttrib1fvNV(GLuint index, const GLfloat * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib1svNV 4189
+#define X_GLrop_VertexAttrib1svNV 4265
void
__indirect_glVertexAttrib1sNV(GLuint index, GLshort x)
{
@@ -7606,7 +7606,7 @@ __indirect_glVertexAttrib1sNV(GLuint index, GLshort x)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib1svNV 4189
+#define X_GLrop_VertexAttrib1svNV 4265
void
__indirect_glVertexAttrib1svNV(GLuint index, const GLshort * v)
{
@@ -7619,7 +7619,7 @@ __indirect_glVertexAttrib1svNV(GLuint index, const GLshort * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib2dvNV 4198
+#define X_GLrop_VertexAttrib2dvNV 4274
void
__indirect_glVertexAttrib2dNV(GLuint index, GLdouble x, GLdouble y)
{
@@ -7633,7 +7633,7 @@ __indirect_glVertexAttrib2dNV(GLuint index, GLdouble x, GLdouble y)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib2dvNV 4198
+#define X_GLrop_VertexAttrib2dvNV 4274
void
__indirect_glVertexAttrib2dvNV(GLuint index, const GLdouble * v)
{
@@ -7646,7 +7646,7 @@ __indirect_glVertexAttrib2dvNV(GLuint index, const GLdouble * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib2fvNV 4194
+#define X_GLrop_VertexAttrib2fvNV 4270
void
__indirect_glVertexAttrib2fNV(GLuint index, GLfloat x, GLfloat y)
{
@@ -7660,7 +7660,7 @@ __indirect_glVertexAttrib2fNV(GLuint index, GLfloat x, GLfloat y)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib2fvNV 4194
+#define X_GLrop_VertexAttrib2fvNV 4270
void
__indirect_glVertexAttrib2fvNV(GLuint index, const GLfloat * v)
{
@@ -7673,7 +7673,7 @@ __indirect_glVertexAttrib2fvNV(GLuint index, const GLfloat * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib2svNV 4190
+#define X_GLrop_VertexAttrib2svNV 4266
void
__indirect_glVertexAttrib2sNV(GLuint index, GLshort x, GLshort y)
{
@@ -7687,7 +7687,7 @@ __indirect_glVertexAttrib2sNV(GLuint index, GLshort x, GLshort y)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib2svNV 4190
+#define X_GLrop_VertexAttrib2svNV 4266
void
__indirect_glVertexAttrib2svNV(GLuint index, const GLshort * v)
{
@@ -7700,7 +7700,7 @@ __indirect_glVertexAttrib2svNV(GLuint index, const GLshort * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib3dvNV 4199
+#define X_GLrop_VertexAttrib3dvNV 4275
void
__indirect_glVertexAttrib3dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z)
{
@@ -7715,7 +7715,7 @@ __indirect_glVertexAttrib3dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib3dvNV 4199
+#define X_GLrop_VertexAttrib3dvNV 4275
void
__indirect_glVertexAttrib3dvNV(GLuint index, const GLdouble * v)
{
@@ -7728,7 +7728,7 @@ __indirect_glVertexAttrib3dvNV(GLuint index, const GLdouble * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib3fvNV 4195
+#define X_GLrop_VertexAttrib3fvNV 4271
void
__indirect_glVertexAttrib3fNV(GLuint index, GLfloat x, GLfloat y, GLfloat z)
{
@@ -7743,7 +7743,7 @@ __indirect_glVertexAttrib3fNV(GLuint index, GLfloat x, GLfloat y, GLfloat z)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib3fvNV 4195
+#define X_GLrop_VertexAttrib3fvNV 4271
void
__indirect_glVertexAttrib3fvNV(GLuint index, const GLfloat * v)
{
@@ -7756,7 +7756,7 @@ __indirect_glVertexAttrib3fvNV(GLuint index, const GLfloat * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib3svNV 4191
+#define X_GLrop_VertexAttrib3svNV 4267
void
__indirect_glVertexAttrib3sNV(GLuint index, GLshort x, GLshort y, GLshort z)
{
@@ -7771,7 +7771,7 @@ __indirect_glVertexAttrib3sNV(GLuint index, GLshort x, GLshort y, GLshort z)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib3svNV 4191
+#define X_GLrop_VertexAttrib3svNV 4267
void
__indirect_glVertexAttrib3svNV(GLuint index, const GLshort * v)
{
@@ -7784,7 +7784,7 @@ __indirect_glVertexAttrib3svNV(GLuint index, const GLshort * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4dvNV 4200
+#define X_GLrop_VertexAttrib4dvNV 4276
void
__indirect_glVertexAttrib4dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
{
@@ -7800,7 +7800,7 @@ __indirect_glVertexAttrib4dNV(GLuint index, GLdouble x, GLdouble y, GLdouble z,
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4dvNV 4200
+#define X_GLrop_VertexAttrib4dvNV 4276
void
__indirect_glVertexAttrib4dvNV(GLuint index, const GLdouble * v)
{
@@ -7813,7 +7813,7 @@ __indirect_glVertexAttrib4dvNV(GLuint index, const GLdouble * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4fvNV 4196
+#define X_GLrop_VertexAttrib4fvNV 4272
void
__indirect_glVertexAttrib4fNV(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
{
@@ -7829,7 +7829,7 @@ __indirect_glVertexAttrib4fNV(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLf
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4fvNV 4196
+#define X_GLrop_VertexAttrib4fvNV 4272
void
__indirect_glVertexAttrib4fvNV(GLuint index, const GLfloat * v)
{
@@ -7842,7 +7842,7 @@ __indirect_glVertexAttrib4fvNV(GLuint index, const GLfloat * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4svNV 4192
+#define X_GLrop_VertexAttrib4svNV 4268
void
__indirect_glVertexAttrib4sNV(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
{
@@ -7858,7 +7858,7 @@ __indirect_glVertexAttrib4sNV(GLuint index, GLshort x, GLshort y, GLshort z, GLs
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4svNV 4192
+#define X_GLrop_VertexAttrib4svNV 4268
void
__indirect_glVertexAttrib4svNV(GLuint index, const GLshort * v)
{
@@ -7871,7 +7871,7 @@ __indirect_glVertexAttrib4svNV(GLuint index, const GLshort * v)
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4ubvNV 4201
+#define X_GLrop_VertexAttrib4ubvNV 4277
void
__indirect_glVertexAttrib4ubNV(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
{
@@ -7887,7 +7887,7 @@ __indirect_glVertexAttrib4ubNV(GLuint index, GLubyte x, GLubyte y, GLubyte z, GL
if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
}
-#define X_GLrop_VertexAttrib4ubvNV 4201
+#define X_GLrop_VertexAttrib4ubvNV 4277
void
__indirect_glVertexAttrib4ubvNV(GLuint index, const GLubyte * v)
{