summaryrefslogtreecommitdiffstats
path: root/src/broadcom/compiler/v3d_compiler.h
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2017-09-28 14:02:05 -0700
committerEric Anholt <[email protected]>2017-10-10 11:42:05 -0700
commit361c5f28bdc6858618e9de85a340adce1b217e2c (patch)
treef2a93b771d1c949b1208753eda296d0d1cbe5c09 /src/broadcom/compiler/v3d_compiler.h
parentd0dfc4bd5f3711ac48de88aa51fc6f442eaa0b20 (diff)
broadcom/vc5: Fix handling of interp qualifiers on builtin color inputs.
The interpolation qualifier, if specified, is supposed to take precedence over glShadeModel().
Diffstat (limited to 'src/broadcom/compiler/v3d_compiler.h')
-rw-r--r--src/broadcom/compiler/v3d_compiler.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/broadcom/compiler/v3d_compiler.h b/src/broadcom/compiler/v3d_compiler.h
index 84957b75124..a29b08ac1ab 100644
--- a/src/broadcom/compiler/v3d_compiler.h
+++ b/src/broadcom/compiler/v3d_compiler.h
@@ -421,6 +421,11 @@ struct v3d_compile {
*/
BITSET_WORD flat_shade_flags[BITSET_WORDS(V3D_MAX_FS_INPUTS)];
+ /* Booleans for whether the corresponding QFILE_VARY[i] uses the
+ * default glShadeModel() behavior.
+ */
+ BITSET_WORD shade_model_flags[BITSET_WORDS(V3D_MAX_FS_INPUTS)];
+
struct v3d_ubo_range *ubo_ranges;
bool *ubo_range_used;
uint32_t ubo_ranges_array_size;
@@ -570,13 +575,14 @@ struct v3d_fs_prog_data {
struct v3d_varying_slot input_slots[V3D_MAX_FS_INPUTS];
- /** bitmask of which inputs are color inputs, for flat shade handling. */
- uint32_t color_inputs[BITSET_WORDS(V3D_MAX_FS_INPUTS)];
-
/* Bitmask for whether the corresponding input is flat-shaded,
* independent of rasterizer (gl_FragColor) flat-shading.
*/
BITSET_WORD flat_shade_flags[BITSET_WORDS(V3D_MAX_FS_INPUTS)];
+ /* Bitmask for whether the corresponding input uses the default
+ * glShadeModel() behavior.
+ */
+ BITSET_WORD shade_model_flags[BITSET_WORDS(V3D_MAX_FS_INPUTS)];
bool writes_z;
bool discard;