summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_state.h
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2016-11-02 19:07:40 +0100
committerNicolai Hähnle <[email protected]>2016-11-04 21:30:18 +0100
commit2c875158e2763d57e5dae8892af96a894bdb7dc9 (patch)
treedfcb3a05ef6630e6e09e29210a7f3c1032f9865b /src/gallium/drivers/radeonsi/si_state.h
parent322483f71b068b3bbf69e5434e888f3fd3f4589e (diff)
radeonsi: fix vertex fetches for 2_10_10_10 formats
The hardware always treats the alpha channel as unsigned, so add a shader workaround. This is rare enough that we'll just build a monolithic vertex shader. The SINT case cannot actually happen in OpenGL, but I've included it for completeness since it's just a mix of the other cases. Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_state.h')
-rw-r--r--src/gallium/drivers/radeonsi/si_state.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state.h b/src/gallium/drivers/radeonsi/si_state.h
index 3ebf578e593..c444a699ed6 100644
--- a/src/gallium/drivers/radeonsi/si_state.h
+++ b/src/gallium/drivers/radeonsi/si_state.h
@@ -99,6 +99,7 @@ struct si_stencil_ref {
struct si_vertex_element
{
unsigned count;
+ uint32_t fix_fetch;
uint32_t rsrc_word3[SI_MAX_ATTRIBS];
uint32_t format_size[SI_MAX_ATTRIBS];
struct pipe_vertex_element elements[SI_MAX_ATTRIBS];