mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-04 13:08:15 +02:00
i965: Move get_hw_prim_for_gl_prim to brw_util.c
This commit is contained in:
parent
ea23cb3543
commit
5f29dacda2
2 changed files with 28 additions and 29 deletions
|
|
@ -55,23 +55,6 @@
|
|||
|
||||
#define FILE_DEBUG_FLAG DEBUG_PRIMS
|
||||
|
||||
static const GLuint prim_to_hw_prim[GL_TRIANGLE_STRIP_ADJACENCY+1] = {
|
||||
[GL_POINTS] =_3DPRIM_POINTLIST,
|
||||
[GL_LINES] = _3DPRIM_LINELIST,
|
||||
[GL_LINE_LOOP] = _3DPRIM_LINELOOP,
|
||||
[GL_LINE_STRIP] = _3DPRIM_LINESTRIP,
|
||||
[GL_TRIANGLES] = _3DPRIM_TRILIST,
|
||||
[GL_TRIANGLE_STRIP] = _3DPRIM_TRISTRIP,
|
||||
[GL_TRIANGLE_FAN] = _3DPRIM_TRIFAN,
|
||||
[GL_QUADS] = _3DPRIM_QUADLIST,
|
||||
[GL_QUAD_STRIP] = _3DPRIM_QUADSTRIP,
|
||||
[GL_POLYGON] = _3DPRIM_POLYGON,
|
||||
[GL_LINES_ADJACENCY] = _3DPRIM_LINELIST_ADJ,
|
||||
[GL_LINE_STRIP_ADJACENCY] = _3DPRIM_LINESTRIP_ADJ,
|
||||
[GL_TRIANGLES_ADJACENCY] = _3DPRIM_TRILIST_ADJ,
|
||||
[GL_TRIANGLE_STRIP_ADJACENCY] = _3DPRIM_TRISTRIP_ADJ,
|
||||
};
|
||||
|
||||
|
||||
static const GLenum reduced_prim[GL_POLYGON+1] = {
|
||||
[GL_POINTS] = GL_POINTS,
|
||||
|
|
@ -86,18 +69,6 @@ static const GLenum reduced_prim[GL_POLYGON+1] = {
|
|||
[GL_POLYGON] = GL_TRIANGLES
|
||||
};
|
||||
|
||||
uint32_t
|
||||
get_hw_prim_for_gl_prim(int mode)
|
||||
{
|
||||
if (mode >= BRW_PRIM_OFFSET)
|
||||
return mode - BRW_PRIM_OFFSET;
|
||||
else {
|
||||
assert(mode < ARRAY_SIZE(prim_to_hw_prim));
|
||||
return prim_to_hw_prim[mode];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* When the primitive changes, set a state bit and re-validate. Not
|
||||
* the nicest and would rather deal with this by having all the
|
||||
* programs be immune to the active primitive (ie. cope with all
|
||||
|
|
|
|||
|
|
@ -102,3 +102,31 @@ GLuint brw_translate_blend_factor( GLenum factor )
|
|||
unreachable("not reached");
|
||||
}
|
||||
}
|
||||
|
||||
static const GLuint prim_to_hw_prim[GL_TRIANGLE_STRIP_ADJACENCY+1] = {
|
||||
[GL_POINTS] =_3DPRIM_POINTLIST,
|
||||
[GL_LINES] = _3DPRIM_LINELIST,
|
||||
[GL_LINE_LOOP] = _3DPRIM_LINELOOP,
|
||||
[GL_LINE_STRIP] = _3DPRIM_LINESTRIP,
|
||||
[GL_TRIANGLES] = _3DPRIM_TRILIST,
|
||||
[GL_TRIANGLE_STRIP] = _3DPRIM_TRISTRIP,
|
||||
[GL_TRIANGLE_FAN] = _3DPRIM_TRIFAN,
|
||||
[GL_QUADS] = _3DPRIM_QUADLIST,
|
||||
[GL_QUAD_STRIP] = _3DPRIM_QUADSTRIP,
|
||||
[GL_POLYGON] = _3DPRIM_POLYGON,
|
||||
[GL_LINES_ADJACENCY] = _3DPRIM_LINELIST_ADJ,
|
||||
[GL_LINE_STRIP_ADJACENCY] = _3DPRIM_LINESTRIP_ADJ,
|
||||
[GL_TRIANGLES_ADJACENCY] = _3DPRIM_TRILIST_ADJ,
|
||||
[GL_TRIANGLE_STRIP_ADJACENCY] = _3DPRIM_TRISTRIP_ADJ,
|
||||
};
|
||||
|
||||
uint32_t
|
||||
get_hw_prim_for_gl_prim(int mode)
|
||||
{
|
||||
if (mode >= BRW_PRIM_OFFSET)
|
||||
return mode - BRW_PRIM_OFFSET;
|
||||
else {
|
||||
assert(mode < ARRAY_SIZE(prim_to_hw_prim));
|
||||
return prim_to_hw_prim[mode];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue