mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-22 22:10:10 +01:00
radeonsi: use tgsi_shader_info in si_shader_ps
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
This commit is contained in:
parent
e23fec1445
commit
fa933438a2
3 changed files with 5 additions and 5 deletions
|
|
@ -246,7 +246,6 @@ static int si_store_shader_io_attribs(struct si_shader *shader,
|
||||||
shader->input[i].sid = d->Semantic.Index;
|
shader->input[i].sid = d->Semantic.Index;
|
||||||
shader->input[i].index = d->Range.First;
|
shader->input[i].index = d->Range.First;
|
||||||
shader->input[i].interpolate = d->Interp.Interpolate;
|
shader->input[i].interpolate = d->Interp.Interpolate;
|
||||||
shader->input[i].centroid = d->Interp.Location == TGSI_INTERPOLATE_LOC_CENTROID;
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
case TGSI_FILE_OUTPUT:
|
case TGSI_FILE_OUTPUT:
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,6 @@ struct si_shader_input {
|
||||||
unsigned param_offset;
|
unsigned param_offset;
|
||||||
unsigned index;
|
unsigned index;
|
||||||
unsigned interpolate;
|
unsigned interpolate;
|
||||||
bool centroid;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct si_shader_output {
|
struct si_shader_output {
|
||||||
|
|
|
||||||
|
|
@ -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)
|
static void si_shader_ps(struct pipe_context *ctx, struct si_shader *shader)
|
||||||
{
|
{
|
||||||
struct si_context *sctx = (struct si_context *)ctx;
|
struct si_context *sctx = (struct si_context *)ctx;
|
||||||
|
struct tgsi_shader_info *info = &shader->selector->info;
|
||||||
struct si_pm4_state *pm4;
|
struct si_pm4_state *pm4;
|
||||||
unsigned i, spi_ps_in_control;
|
unsigned i, spi_ps_in_control;
|
||||||
unsigned num_sgprs, num_user_sgprs;
|
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)
|
if (pm4 == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for (i = 0; i < shader->ninput; i++) {
|
for (i = 0; i < info->num_inputs; i++) {
|
||||||
switch (shader->input[i].name) {
|
switch (info->input_semantic_name[i]) {
|
||||||
case TGSI_SEMANTIC_POSITION:
|
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
|
/* SPI_BARYC_CNTL.POS_FLOAT_LOCATION
|
||||||
* Possible vaules:
|
* Possible vaules:
|
||||||
* 0 -> Position = pixel center (default)
|
* 0 -> Position = pixel center (default)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue