diff options
author | Iago Toral Quiroga <[email protected]> | 2019-07-19 09:54:54 +0200 |
---|---|---|
committer | Iago Toral Quiroga <[email protected]> | 2019-07-22 08:05:59 +0200 |
commit | dacaf7ec06f2b9f4c57e0aff842b8337eb78e8c5 (patch) | |
tree | 042abba7feea319086f53706f46842db09f1bd2a | |
parent | 9bf0bdf7762afef04b923c043242356ccd3de092 (diff) |
v3d: fill logicop_func in the fragment shader key when precompiling shaders
Since logicop_func 0 is PIPE_LOGIOP_CLEAR, we were trigger lowerinng
of logic ops on precompiled shaders, which we don't want to do. Also, this
had the side effect of making shader-db crash, as during this lowering we
would try to read the color format swizzle information from the fragment shader
key that we don't populate in precompiled shaders because right now we only
need it when logic operations are enabled.
Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r-- | src/gallium/drivers/v3d/v3d_program.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/v3d/v3d_program.c b/src/gallium/drivers/v3d/v3d_program.c index 78c41c8efd1..bfd1ebdf7de 100644 --- a/src/gallium/drivers/v3d/v3d_program.c +++ b/src/gallium/drivers/v3d/v3d_program.c @@ -200,6 +200,8 @@ v3d_shader_precompile(struct v3d_context *v3d, } } + key.logicop_func = PIPE_LOGICOP_COPY; + v3d_setup_shared_precompile_key(so, &key.base); v3d_get_compiled_shader(v3d, &key.base, sizeof(key)); } else { |