summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_state_draw.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2014-10-04 18:33:36 +0200
committerMarek Olšák <[email protected]>2014-10-12 23:53:54 +0200
commitfa933438a2fe19eab62a3f35b64d834b1176f8eb (patch)
treea5fbe1a86364f24282b047b592c32fb6d4b9d2ff /src/gallium/drivers/radeonsi/si_state_draw.c
parente23fec14450e36f2584373a9980e9eb25bcc7438 (diff)
radeonsi: use tgsi_shader_info in si_shader_ps
Reviewed-by: Michel Dänzer <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_state_draw.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_state_draw.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state_draw.c b/src/gallium/drivers/radeonsi/si_state_draw.c
index c9e4353c3a4..76162e565f3 100644
--- a/src/gallium/drivers/radeonsi/si_state_draw.c
+++ b/src/gallium/drivers/radeonsi/si_state_draw.c
@@ -228,6 +228,7 @@ static void si_shader_vs(struct pipe_context *ctx, struct si_shader *shader)
static void si_shader_ps(struct pipe_context *ctx, struct si_shader *shader)
{
struct si_context *sctx = (struct si_context *)ctx;
+ struct tgsi_shader_info *info = &shader->selector->info;
struct si_pm4_state *pm4;
unsigned i, spi_ps_in_control;
unsigned num_sgprs, num_user_sgprs;
@@ -240,10 +241,11 @@ static void si_shader_ps(struct pipe_context *ctx, struct si_shader *shader)
if (pm4 == NULL)
return;
- for (i = 0; i < shader->ninput; i++) {
- switch (shader->input[i].name) {
+ for (i = 0; i < info->num_inputs; i++) {
+ switch (info->input_semantic_name[i]) {
case TGSI_SEMANTIC_POSITION:
- if (shader->input[i].centroid) {
+ if (info->input_interpolate_loc[i] ==
+ TGSI_INTERPOLATE_LOC_CENTROID) {
/* SPI_BARYC_CNTL.POS_FLOAT_LOCATION
* Possible vaules:
* 0 -> Position = pixel center (default)