radeonsi: use tgsi_shader_info::colors_written
authorMarek Olšák <marek.olsak@amd.com>
Thu, 10 Dec 2015 12:16:58 +0000 (13:16 +0100)
committerMarek Olšák <marek.olsak@amd.com>
Fri, 11 Dec 2015 14:25:11 +0000 (15:25 +0100)
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
src/gallium/drivers/radeonsi/si_shader.h
src/gallium/drivers/radeonsi/si_state.c
src/gallium/drivers/radeonsi/si_state_shaders.c

index f089dc73ca187e8d31fded537d55eae2809390de..b0c8680ecb391647f8db2a0950518d06f0b420f8 100644 (file)
@@ -213,7 +213,6 @@ struct si_shader_selector {
        /* masks of "get_unique_index" bits */
        uint64_t        outputs_written;
        uint32_t        patch_outputs_written;
-       uint32_t        ps_colors_written;
 };
 
 /* Valid shader configurations:
index 9f9f3d6610bb59eaa77cdcccf8a9c4784dad0a86..bbe15497b67ac276351b78bd0b3c60d50ca907de 100644 (file)
@@ -267,7 +267,7 @@ static void si_emit_cb_target_mask(struct si_context *sctx, struct r600_atom *at
         */
        if (blend && blend->dual_src_blend &&
            sctx->ps_shader.cso &&
-           (sctx->ps_shader.cso->ps_colors_written & 0x3) != 0x3)
+           (sctx->ps_shader.cso->info.colors_written & 0x3) != 0x3)
                mask = 0;
 
        radeon_set_context_reg(cs, R_028238_CB_TARGET_MASK, mask);
index 4555ca450b6011112ff709ec24ec33450841f6b6..f0147ce2bfc3db20d38781211986a355e7b94358 100644 (file)
@@ -730,15 +730,6 @@ static void *si_create_shader_selector(struct pipe_context *ctx,
                }
                sel->esgs_itemsize = util_last_bit64(sel->outputs_written) * 16;
                break;
-       case PIPE_SHADER_FRAGMENT:
-               for (i = 0; i < sel->info.num_outputs; i++) {
-                       unsigned name = sel->info.output_semantic_name[i];
-                       unsigned index = sel->info.output_semantic_index[i];
-
-                       if (name == TGSI_SEMANTIC_COLOR)
-                               sel->ps_colors_written |= 1 << index;
-               }
-               break;
        }
 
        if (sscreen->b.debug_flags & DBG_PRECOMPILE) {