projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
panfrost: Choose AFBC when available
[mesa.git]
/
src
/
mesa
/
tnl
/
t_vertex_generic.c
diff --git
a/src/mesa/tnl/t_vertex_generic.c
b/src/mesa/tnl/t_vertex_generic.c
index 236a5bedc801a20ec545bac415d2344088d1402a..7f871a4f68678c3e06f49215e1bde690a4bb6b4f 100644
(file)
--- a/
src/mesa/tnl/t_vertex_generic.c
+++ b/
src/mesa/tnl/t_vertex_generic.c
@@
-1,6
+1,6
@@
/*
/*
- * Copyright 2003
Tungsten Graphics, i
nc.
+ * Copyright 2003
VMware, I
nc.
* All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
@@
-17,126
+17,132
@@
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
- *
TUNGSTEN GRAPHICS
AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
+ *
VMWARE
AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
* USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Authors:
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
* USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Authors:
- * Keith Whitwell <keithw@
tungstengraphics
.com>
+ * Keith Whitwell <keithw@
vmware
.com>
*/
*/
-#include "glheader.h"
-#include "context.h"
-#include "colormac.h"
+#include "main/glheader.h"
+#include "main/context.h"
+#include "main/macros.h"
+#include "swrast/s_chan.h"
#include "t_context.h"
#include "t_vertex.h"
#include "t_context.h"
#include "t_vertex.h"
-#include "simple_list.h"
+#if 0
+#define DEBUG_INSERT printf("%s\n", __func__)
+#else
+#define DEBUG_INSERT
+#endif
+
/*
* These functions take the NDC coordinates pointed to by 'in', apply the
* NDC->Viewport mapping and store the results at 'v'.
*/
/*
* These functions take the NDC coordinates pointed to by 'in', apply the
* NDC->Viewport mapping and store the results at 'v'.
*/
-static
INLINE
void insert_4f_viewport_4( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4f_viewport_4( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[10] * in[2] + vp[14];
out[3] = in[3];
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[10] * in[2] + vp[14];
out[3] = in[3];
}
-static
INLINE
void insert_4f_viewport_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4f_viewport_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[10] * in[2] + vp[14];
out[3] = 1;
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[10] * in[2] + vp[14];
out[3] = 1;
}
-static
INLINE
void insert_4f_viewport_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4f_viewport_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[14];
out[3] = 1;
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[14];
out[3] = 1;
}
-static
INLINE
void insert_4f_viewport_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4f_viewport_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[13];
out[2] = vp[14];
out[3] = 1;
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[13];
out[2] = vp[14];
out[3] = 1;
}
-static
INLINE
void insert_3f_viewport_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3f_viewport_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[10] * in[2] + vp[14];
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[2] = vp[10] * in[2] + vp[14];
}
-static
INLINE
void insert_3f_viewport_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3f_viewport_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
- out[2] = vp[1
0] * in[2] + vp[1
4];
+ out[2] = vp[14];
}
}
-static
INLINE
void insert_3f_viewport_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3f_viewport_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[13];
out[2] = vp[14];
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[13];
out[2] = vp[14];
}
-static
INLINE
void insert_2f_viewport_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_2f_viewport_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[5] * in[1] + vp[13];
}
-static
INLINE
void insert_2f_viewport_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_2f_viewport_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
const GLfloat *in )
{
GLfloat *out = (GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[13];
}
out[0] = vp[0] * in[0] + vp[12];
out[1] = vp[13];
}
@@
-146,132
+152,135
@@
static INLINE void insert_2f_viewport_1( const struct tnl_clipspace_attr *a, GLu
* These functions do the same as above, except for the viewport mapping.
*/
* These functions do the same as above, except for the viewport mapping.
*/
-static
INLINE
void insert_4f_4( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_4f_4( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = in[1];
out[2] = in[2];
out[3] = in[3];
}
out[0] = in[0];
out[1] = in[1];
out[2] = in[2];
out[3] = in[3];
}
-static
INLINE
void insert_4f_3( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_4f_3( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = in[1];
out[2] = in[2];
out[3] = 1;
}
out[0] = in[0];
out[1] = in[1];
out[2] = in[2];
out[3] = 1;
}
-static
INLINE
void insert_4f_2( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_4f_2( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = in[1];
out[2] = 0;
out[3] = 1;
}
out[0] = in[0];
out[1] = in[1];
out[2] = 0;
out[3] = 1;
}
-static
INLINE
void insert_4f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_4f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = 0;
out[2] = 0;
out[3] = 1;
}
out[0] = in[0];
out[1] = 0;
out[2] = 0;
out[3] = 1;
}
-static
INLINE
void insert_3f_xyw_4( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_3f_xyw_4( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = in[1];
out[2] = in[3];
}
out[0] = in[0];
out[1] = in[1];
out[2] = in[3];
}
-static
INLINE
void insert_3f_xyw_err( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_3f_xyw_err( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
(void) a; (void) v; (void) in;
{
(void) a; (void) v; (void) in;
- _mesa_exit(1);
+ DEBUG_INSERT;
+ exit(1);
}
}
-static
INLINE
void insert_3f_3( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_3f_3( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = in[1];
out[2] = in[2];
}
out[0] = in[0];
out[1] = in[1];
out[2] = in[2];
}
-static
INLINE
void insert_3f_2( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_3f_2( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = in[1];
out[2] = 0;
}
out[0] = in[0];
out[1] = in[1];
out[2] = 0;
}
-static
INLINE
void insert_3f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_3f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = 0;
out[2] = 0;
}
out[0] = in[0];
out[1] = 0;
out[2] = 0;
}
-static
INLINE
void insert_2f_2( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_2f_2( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = in[1];
}
out[0] = in[0];
out[1] = in[1];
}
-static
INLINE
void insert_2f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_2f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
out[1] = 0;
}
out[0] = in[0];
out[1] = 0;
}
-static
INLINE
void insert_1f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_1f_1( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
GLfloat *out = (GLfloat *)(v);
(void) a;
{
GLfloat *out = (GLfloat *)(v);
(void) a;
-
+ DEBUG_INSERT;
out[0] = in[0];
}
out[0] = in[0];
}
-static
INLINE
void insert_null( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
+static
inline
void insert_null( const struct tnl_clipspace_attr *a, GLubyte *v, const GLfloat *in )
{
{
+ DEBUG_INSERT;
(void) a; (void) v; (void) in;
}
(void) a; (void) v; (void) in;
}
-static
INLINE
void insert_4chan_4f_rgba_4( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4chan_4f_rgba_4( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
UNCLAMPED_FLOAT_TO_CHAN(c[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
UNCLAMPED_FLOAT_TO_CHAN(c[1], in[1]);
@@
-279,10
+288,11
@@
static INLINE void insert_4chan_4f_rgba_4( const struct tnl_clipspace_attr *a, G
UNCLAMPED_FLOAT_TO_CHAN(c[3], in[3]);
}
UNCLAMPED_FLOAT_TO_CHAN(c[3], in[3]);
}
-static
INLINE
void insert_4chan_4f_rgba_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4chan_4f_rgba_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
UNCLAMPED_FLOAT_TO_CHAN(c[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
UNCLAMPED_FLOAT_TO_CHAN(c[1], in[1]);
@@
-290,10
+300,11
@@
static INLINE void insert_4chan_4f_rgba_3( const struct tnl_clipspace_attr *a, G
c[3] = CHAN_MAX;
}
c[3] = CHAN_MAX;
}
-static
INLINE
void insert_4chan_4f_rgba_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4chan_4f_rgba_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
UNCLAMPED_FLOAT_TO_CHAN(c[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
UNCLAMPED_FLOAT_TO_CHAN(c[1], in[1]);
@@
-301,10
+312,11
@@
static INLINE void insert_4chan_4f_rgba_2( const struct tnl_clipspace_attr *a, G
c[3] = CHAN_MAX;
}
c[3] = CHAN_MAX;
}
-static
INLINE
void insert_4chan_4f_rgba_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4chan_4f_rgba_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
const GLfloat *in )
{
GLchan *c = (GLchan *)v;
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
c[1] = 0;
(void) a;
UNCLAMPED_FLOAT_TO_CHAN(c[0], in[0]);
c[1] = 0;
@@
-312,9
+324,10
@@
static INLINE void insert_4chan_4f_rgba_1( const struct tnl_clipspace_attr *a, G
c[3] = CHAN_MAX;
}
c[3] = CHAN_MAX;
}
-static
INLINE
void insert_4ub_4f_rgba_4( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_rgba_4( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
@@
-322,9
+335,10
@@
static INLINE void insert_4ub_4f_rgba_4( const struct tnl_clipspace_attr *a, GLu
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[3]);
}
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[3]);
}
-static
INLINE
void insert_4ub_4f_rgba_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_rgba_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
@@
-332,9
+346,10
@@
static INLINE void insert_4ub_4f_rgba_3( const struct tnl_clipspace_attr *a, GLu
v[3] = 0xff;
}
v[3] = 0xff;
}
-static
INLINE
void insert_4ub_4f_rgba_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_rgba_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
@@
-342,9
+357,10
@@
static INLINE void insert_4ub_4f_rgba_2( const struct tnl_clipspace_attr *a, GLu
v[3] = 0xff;
}
v[3] = 0xff;
}
-static
INLINE
void insert_4ub_4f_rgba_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_rgba_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
v[1] = 0;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
v[1] = 0;
@@
-352,9
+368,10
@@
static INLINE void insert_4ub_4f_rgba_1( const struct tnl_clipspace_attr *a, GLu
v[3] = 0xff;
}
v[3] = 0xff;
}
-static
INLINE
void insert_4ub_4f_bgra_4( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_bgra_4( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
@@
-362,9
+379,10
@@
static INLINE void insert_4ub_4f_bgra_4( const struct tnl_clipspace_attr *a, GLu
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[3]);
}
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[3]);
}
-static
INLINE
void insert_4ub_4f_bgra_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_bgra_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
@@
-372,9
+390,10
@@
static INLINE void insert_4ub_4f_bgra_3( const struct tnl_clipspace_attr *a, GLu
v[3] = 0xff;
}
v[3] = 0xff;
}
-static
INLINE
void insert_4ub_4f_bgra_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_bgra_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
@@
-382,9
+401,10
@@
static INLINE void insert_4ub_4f_bgra_2( const struct tnl_clipspace_attr *a, GLu
v[3] = 0xff;
}
v[3] = 0xff;
}
-static
INLINE
void insert_4ub_4f_bgra_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_bgra_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
v[1] = 0;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
v[1] = 0;
@@
-392,9
+412,10
@@
static INLINE void insert_4ub_4f_bgra_1( const struct tnl_clipspace_attr *a, GLu
v[3] = 0xff;
}
v[3] = 0xff;
}
-static
INLINE
void insert_4ub_4f_argb_4( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_argb_4( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
@@
-402,9
+423,10
@@
static INLINE void insert_4ub_4f_argb_4( const struct tnl_clipspace_attr *a, GLu
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[3]);
}
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[3]);
}
-static
INLINE
void insert_4ub_4f_argb_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_argb_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
@@
-412,9
+434,10
@@
static INLINE void insert_4ub_4f_argb_3( const struct tnl_clipspace_attr *a, GLu
v[0] = 0xff;
}
v[0] = 0xff;
}
-static
INLINE
void insert_4ub_4f_argb_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_argb_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
@@
-422,9
+445,10
@@
static INLINE void insert_4ub_4f_argb_2( const struct tnl_clipspace_attr *a, GLu
v[0] = 0xff;
}
v[0] = 0xff;
}
-static
INLINE
void insert_4ub_4f_argb_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_argb_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
v[2] = 0x00;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[0]);
v[2] = 0x00;
@@
-432,9
+456,10
@@
static INLINE void insert_4ub_4f_argb_1( const struct tnl_clipspace_attr *a, GLu
v[0] = 0xff;
}
v[0] = 0xff;
}
-static
INLINE
void insert_4ub_4f_abgr_4( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_abgr_4( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
@@
-442,9
+467,10
@@
static INLINE void insert_4ub_4f_abgr_4( const struct tnl_clipspace_attr *a, GLu
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[3]);
}
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[3]);
}
-static
INLINE
void insert_4ub_4f_abgr_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_abgr_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
@@
-452,9
+478,10
@@
static INLINE void insert_4ub_4f_abgr_3( const struct tnl_clipspace_attr *a, GLu
v[0] = 0xff;
}
v[0] = 0xff;
}
-static
INLINE
void insert_4ub_4f_abgr_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_abgr_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[1]);
@@
-462,9
+489,10
@@
static INLINE void insert_4ub_4f_abgr_2( const struct tnl_clipspace_attr *a, GLu
v[0] = 0xff;
}
v[0] = 0xff;
}
-static
INLINE
void insert_4ub_4f_abgr_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_4ub_4f_abgr_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
v[2] = 0x00;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[3], in[0]);
v[2] = 0x00;
@@
-472,54
+500,60
@@
static INLINE void insert_4ub_4f_abgr_1( const struct tnl_clipspace_attr *a, GLu
v[0] = 0xff;
}
v[0] = 0xff;
}
-static
INLINE
void insert_3ub_3f_rgb_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3ub_3f_rgb_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[2]);
}
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[2]);
}
-static
INLINE
void insert_3ub_3f_rgb_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3ub_3f_rgb_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
v[2] = 0;
}
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
v[2] = 0;
}
-static
INLINE
void insert_3ub_3f_rgb_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3ub_3f_rgb_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
v[1] = 0;
v[2] = 0;
}
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
v[1] = 0;
v[2] = 0;
}
-static
INLINE
void insert_3ub_3f_bgr_3( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3ub_3f_bgr_3( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[2]);
}
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[2]);
}
-static
INLINE
void insert_3ub_3f_bgr_2( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3ub_3f_bgr_2( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
v[0] = 0;
}
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
UNCLAMPED_FLOAT_TO_UBYTE(v[1], in[1]);
v[0] = 0;
}
-static
INLINE
void insert_3ub_3f_bgr_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_3ub_3f_bgr_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
v[1] = 0;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[2], in[0]);
v[1] = 0;
@@
-527,9
+561,10
@@
static INLINE void insert_3ub_3f_bgr_1( const struct tnl_clipspace_attr *a, GLub
}
}
-static
INLINE
void insert_1ub_1f_1( const struct tnl_clipspace_attr *a, GLubyte *v,
+static
inline
void insert_1ub_1f_1( const struct tnl_clipspace_attr *a, GLubyte *v,
const GLfloat *in )
{
const GLfloat *in )
{
+ DEBUG_INSERT;
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
}
(void) a;
UNCLAMPED_FLOAT_TO_UBYTE(v[0], in[0]);
}
@@
-551,6
+586,7
@@
static void extract_4f_viewport( const struct tnl_clipspace_attr *a, GLfloat *ou
/* Although included for completeness, the position coordinate is
* usually handled differently during clipping.
*/
/* Although included for completeness, the position coordinate is
* usually handled differently during clipping.
*/
+ DEBUG_INSERT;
out[0] = (in[0] - vp[12]) / vp[0];
out[1] = (in[1] - vp[13]) / vp[5];
out[2] = (in[2] - vp[14]) / vp[10];
out[0] = (in[0] - vp[12]) / vp[0];
out[1] = (in[1] - vp[13]) / vp[5];
out[2] = (in[2] - vp[14]) / vp[10];
@@
-562,7
+598,7
@@
static void extract_3f_viewport( const struct tnl_clipspace_attr *a, GLfloat *ou
{
const GLfloat *in = (const GLfloat *)v;
const GLfloat * const vp = a->vp;
{
const GLfloat *in = (const GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = (in[0] - vp[12]) / vp[0];
out[1] = (in[1] - vp[13]) / vp[5];
out[2] = (in[2] - vp[14]) / vp[10];
out[0] = (in[0] - vp[12]) / vp[0];
out[1] = (in[1] - vp[13]) / vp[5];
out[2] = (in[2] - vp[14]) / vp[10];
@@
-575,7
+611,7
@@
static void extract_2f_viewport( const struct tnl_clipspace_attr *a, GLfloat *ou
{
const GLfloat *in = (const GLfloat *)v;
const GLfloat * const vp = a->vp;
{
const GLfloat *in = (const GLfloat *)v;
const GLfloat * const vp = a->vp;
-
+ DEBUG_INSERT;
out[0] = (in[0] - vp[12]) / vp[0];
out[1] = (in[1] - vp[13]) / vp[5];
out[2] = 0;
out[0] = (in[0] - vp[12]) / vp[0];
out[1] = (in[1] - vp[13]) / vp[5];
out[2] = 0;
@@
-830,7
+866,7
@@
const struct tnl_format_info _tnl_format_info[EMIT_MAX] =
* vertices
*/
#define EMIT5(NR, F0, F1, F2, F3, F4, NAME) \
* vertices
*/
#define EMIT5(NR, F0, F1, F2, F3, F4, NAME) \
-static void NAME(
GL
context *ctx, \
+static void NAME(
struct gl_
context *ctx, \
GLuint count, \
GLubyte *v ) \
{ \
GLuint count, \
GLubyte *v ) \
{ \
@@
-893,7
+929,7
@@
EMIT4(insert_4f_4, insert_4ub_4f_rgba_4, insert_2f_2, insert_2f_2, emit_xyzw4_rg
/* Use the codegen paths to select one of a number of hardwired
* fastpaths.
*/
/* Use the codegen paths to select one of a number of hardwired
* fastpaths.
*/
-void _tnl_generate_hardwired_emit(
GL
context *ctx )
+void _tnl_generate_hardwired_emit(
struct gl_
context *ctx )
{
struct tnl_clipspace *vtx = GET_VERTEX_STATE(ctx);
tnl_emit_func func = NULL;
{
struct tnl_clipspace *vtx = GET_VERTEX_STATE(ctx);
tnl_emit_func func = NULL;
@@
-951,7
+987,7
@@
void _tnl_generate_hardwired_emit( GLcontext *ctx )
* vertices
*/
* vertices
*/
-void _tnl_generic_emit(
GL
context *ctx,
+void _tnl_generic_emit(
struct gl_
context *ctx,
GLuint count,
GLubyte *v )
{
GLuint count,
GLubyte *v )
{
@@
-971,7
+1007,7
@@
void _tnl_generic_emit( GLcontext *ctx,
}
}
-void _tnl_generic_interp(
GL
context *ctx,
+void _tnl_generic_interp(
struct gl_
context *ctx,
GLfloat t,
GLuint edst, GLuint eout, GLuint ein,
GLboolean force_boundary )
GLfloat t,
GLuint edst, GLuint eout, GLuint ein,
GLboolean force_boundary )
@@
-989,7
+1025,7
@@
void _tnl_generic_interp( GLcontext *ctx,
if (tnl->NeedNdcCoords) {
const GLfloat *dstclip = VB->ClipPtr->data[edst];
if (tnl->NeedNdcCoords) {
const GLfloat *dstclip = VB->ClipPtr->data[edst];
- if (dstclip[3] != 0.0) {
+ if (dstclip[3] != 0.0
f
) {
const GLfloat w = 1.0f / dstclip[3];
GLfloat pos[4];
const GLfloat w = 1.0f / dstclip[3];
GLfloat pos[4];
@@
-1012,10
+1048,7
@@
void _tnl_generic_interp( GLcontext *ctx,
a[j].extract( &a[j], fin, vin + a[j].vertoffset );
a[j].extract( &a[j], fout, vout + a[j].vertoffset );
a[j].extract( &a[j], fin, vin + a[j].vertoffset );
a[j].extract( &a[j], fout, vout + a[j].vertoffset );
- INTERP_F( t, fdst[3], fout[3], fin[3] );
- INTERP_F( t, fdst[2], fout[2], fin[2] );
- INTERP_F( t, fdst[1], fout[1], fin[1] );
- INTERP_F( t, fdst[0], fout[0], fin[0] );
+ INTERP_4F(t, fdst, fout, fin);
a[j].insert[4-1]( &a[j], vdst + a[j].vertoffset, fdst );
}
a[j].insert[4-1]( &a[j], vdst + a[j].vertoffset, fdst );
}
@@
-1025,7
+1058,7
@@
void _tnl_generic_interp( GLcontext *ctx,
/* Extract color attributes from one vertex and insert them into
* another. (Shortcircuit extract/insert with memcpy).
*/
/* Extract color attributes from one vertex and insert them into
* another. (Shortcircuit extract/insert with memcpy).
*/
-void _tnl_generic_copy_pv(
GL
context *ctx, GLuint edst, GLuint esrc )
+void _tnl_generic_copy_pv(
struct gl_
context *ctx, GLuint edst, GLuint esrc )
{
struct tnl_clipspace *vtx = GET_VERTEX_STATE(ctx);
GLubyte *vsrc = vtx->vertex_buf + esrc * vtx->vertex_size;
{
struct tnl_clipspace *vtx = GET_VERTEX_STATE(ctx);
GLubyte *vsrc = vtx->vertex_buf + esrc * vtx->vertex_size;
@@
-1038,9
+1071,9
@@
void _tnl_generic_copy_pv( GLcontext *ctx, GLuint edst, GLuint esrc )
if (a[j].attrib == VERT_ATTRIB_COLOR0 ||
a[j].attrib == VERT_ATTRIB_COLOR1) {
if (a[j].attrib == VERT_ATTRIB_COLOR0 ||
a[j].attrib == VERT_ATTRIB_COLOR1) {
-
_mesa_
memcpy( vdst + a[j].vertoffset,
-
vsrc + a[j].vertoffset,
-
a[j].vertattrsize );
+ memcpy( vdst + a[j].vertoffset,
+ vsrc + a[j].vertoffset,
+ a[j].vertattrsize );
}
}
}
}
}
}
@@
-1049,40
+1082,40
@@
void _tnl_generic_copy_pv( GLcontext *ctx, GLuint edst, GLuint esrc )
/* Helper functions for hardware which doesn't put back colors and/or
* edgeflags into vertices.
*/
/* Helper functions for hardware which doesn't put back colors and/or
* edgeflags into vertices.
*/
-void _tnl_generic_interp_extras(
GL
context *ctx,
+void _tnl_generic_interp_extras(
struct gl_
context *ctx,
GLfloat t,
GLuint dst, GLuint out, GLuint in,
GLboolean force_boundary )
{
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
GLfloat t,
GLuint dst, GLuint out, GLuint in,
GLboolean force_boundary )
{
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
- /* If stride is zero,
ColorPtr[1]
is constant across the VB, so
+ /* If stride is zero,
BackfaceColorPtr
is constant across the VB, so
* there is no point interpolating between two values as they will
* be identical. In all other cases, this value is generated by
* t_vb_lighttmp.h and has a stride of 4 dwords.
*/
* there is no point interpolating between two values as they will
* be identical. In all other cases, this value is generated by
* t_vb_lighttmp.h and has a stride of 4 dwords.
*/
- if (VB->
ColorPtr[1] && VB->ColorPtr[1]
->stride) {
- assert(VB->
ColorPtr[1]
->stride == 4 * sizeof(GLfloat));
+ if (VB->
BackfaceColorPtr && VB->BackfaceColorPtr
->stride) {
+ assert(VB->
BackfaceColorPtr
->stride == 4 * sizeof(GLfloat));
INTERP_4F( t,
INTERP_4F( t,
- VB->
ColorPtr[1]
->data[dst],
- VB->
ColorPtr[1]
->data[out],
- VB->
ColorPtr[1]
->data[in] );
+ VB->
BackfaceColorPtr
->data[dst],
+ VB->
BackfaceColorPtr
->data[out],
+ VB->
BackfaceColorPtr
->data[in] );
}
}
- if (VB->
SecondaryColorPtr[1]
) {
- assert(VB->
SecondaryColorPtr[1]
->stride == 4 * sizeof(GLfloat));
+ if (VB->
BackfaceSecondaryColorPtr
) {
+ assert(VB->
BackfaceSecondaryColorPtr
->stride == 4 * sizeof(GLfloat));
INTERP_3F( t,
INTERP_3F( t,
- VB->
SecondaryColorPtr[1]
->data[dst],
- VB->
SecondaryColorPtr[1]
->data[out],
- VB->
SecondaryColorPtr[1]
->data[in] );
+ VB->
BackfaceSecondaryColorPtr
->data[dst],
+ VB->
BackfaceSecondaryColorPtr
->data[out],
+ VB->
BackfaceSecondaryColorPtr
->data[in] );
}
}
- if (VB->
IndexPtr[1]
) {
- VB->
IndexPtr[1]
->data[dst][0] = LINTERP( t,
- VB->
IndexPtr[1]
->data[out][0],
- VB->
IndexPtr[1]
->data[in][0] );
+ if (VB->
BackfaceIndexPtr
) {
+ VB->
BackfaceIndexPtr
->data[dst][0] = LINTERP( t,
+ VB->
BackfaceIndexPtr
->data[out][0],
+ VB->
BackfaceIndexPtr
->data[in][0] );
}
if (VB->EdgeFlag) {
}
if (VB->EdgeFlag) {
@@
-1092,25
+1125,25
@@
void _tnl_generic_interp_extras( GLcontext *ctx,
_tnl_generic_interp(ctx, t, dst, out, in, force_boundary);
}
_tnl_generic_interp(ctx, t, dst, out, in, force_boundary);
}
-void _tnl_generic_copy_pv_extras(
GL
context *ctx,
+void _tnl_generic_copy_pv_extras(
struct gl_
context *ctx,
GLuint dst, GLuint src )
{
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
/* See above comment:
*/
GLuint dst, GLuint src )
{
struct vertex_buffer *VB = &TNL_CONTEXT(ctx)->vb;
/* See above comment:
*/
- if (VB->
ColorPtr[1] && VB->ColorPtr[1]
->stride) {
- COPY_4FV( VB->
ColorPtr[1]->data[dst],
- VB->
ColorPtr[1]
->data[src] );
+ if (VB->
BackfaceColorPtr && VB->BackfaceColorPtr
->stride) {
+ COPY_4FV( VB->
BackfaceColorPtr->data[dst],
+ VB->
BackfaceColorPtr
->data[src] );
}
}
- if (VB->
SecondaryColorPtr[1]
) {
- COPY_4FV( VB->
SecondaryColorPtr[1]->data[dst],
- VB->
SecondaryColorPtr[1]
->data[src] );
+ if (VB->
BackfaceSecondaryColorPtr
) {
+ COPY_4FV( VB->
BackfaceSecondaryColorPtr->data[dst],
+ VB->
BackfaceSecondaryColorPtr
->data[src] );
}
}
- if (VB->
IndexPtr[1]
) {
- VB->
IndexPtr[1]->data[dst][0] = VB->IndexPtr[1]
->data[src][0];
+ if (VB->
BackfaceIndexPtr
) {
+ VB->
BackfaceIndexPtr->data[dst][0] = VB->BackfaceIndexPtr
->data[src][0];
}
_tnl_generic_copy_pv(ctx, dst, src);
}
_tnl_generic_copy_pv(ctx, dst, src);