mesa: use vbo_attrib_tmp.h to generate display list vertex attrib functions
This removes about 1150 lines of code. The diff is messy, but the new code really starts with save_Attr32bit and below. Ignore false Eval/Material/Begin changes etc. Git can't figure out what was really changed. I didn't change them. Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4123>
This commit is contained in:
parent
3252041a78
commit
98d1197233
File diff suppressed because it is too large
Load Diff
|
@ -204,6 +204,16 @@ static inline uint64_t DOUBLE_AS_UINT64(double d)
|
|||
return tmp.u64;
|
||||
}
|
||||
|
||||
static inline double UINT64_AS_DOUBLE(uint64_t u)
|
||||
{
|
||||
union {
|
||||
double d;
|
||||
uint64_t u64;
|
||||
} tmp;
|
||||
tmp.u64 = u;
|
||||
return tmp.d;
|
||||
}
|
||||
|
||||
/* First sign-extend x, then return uint32_t. */
|
||||
#define INT_AS_UINT(x) ((uint32_t)((int32_t)(x)))
|
||||
#define FLOAT_AS_UINT(x) (FLOAT_AS_UNION(x).u)
|
||||
|
|
|
@ -4584,7 +4584,7 @@ struct gl_dlist_state
|
|||
GLvertexformat ListVtxfmt;
|
||||
|
||||
GLubyte ActiveAttribSize[VERT_ATTRIB_MAX];
|
||||
GLfloat CurrentAttrib[VERT_ATTRIB_MAX][8];
|
||||
uint32_t CurrentAttrib[VERT_ATTRIB_MAX][8];
|
||||
|
||||
GLubyte ActiveMaterialSize[MAT_ATTRIB_MAX];
|
||||
GLfloat CurrentMaterial[MAT_ATTRIB_MAX][4];
|
||||
|
|
|
@ -111,7 +111,7 @@ install_vtxfmt(struct gl_context *ctx, struct _glapi_table *tab,
|
|||
SET_PrimitiveRestartNV(tab, vfmt->PrimitiveRestartNV);
|
||||
}
|
||||
|
||||
/* Originally for GL_NV_vertex_program, this is also used by dlist.c */
|
||||
/* Originally for GL_NV_vertex_program, this is now only used by dlist.c */
|
||||
if (ctx->API == API_OPENGL_COMPAT) {
|
||||
SET_VertexAttrib1fNV(tab, vfmt->VertexAttrib1fNV);
|
||||
SET_VertexAttrib1fvNV(tab, vfmt->VertexAttrib1fvNV);
|
||||
|
|
Loading…
Reference in New Issue