nouveau: reuse tgsi_get_gl_frag_result_semantic().

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Tested-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3506>
This commit is contained in:
Eric Anholt 2020-01-21 17:39:03 -08:00 committed by Marge Bot
parent f9358f6f76
commit f4f769c851

View file

@ -983,35 +983,6 @@ varying_slot_to_tgsi_semantic(gl_varying_slot slot, unsigned *name, unsigned *in
}
}
static void
frag_result_to_tgsi_semantic(unsigned slot, unsigned *name, unsigned *index)
{
if (slot >= FRAG_RESULT_DATA0) {
*name = TGSI_SEMANTIC_COLOR;
*index = slot - FRAG_RESULT_COLOR - 2; // intentional
return;
}
switch (slot) {
case FRAG_RESULT_COLOR:
*name = TGSI_SEMANTIC_COLOR;
*index = 0;
break;
case FRAG_RESULT_DEPTH:
*name = TGSI_SEMANTIC_POSITION;
*index = 0;
break;
case FRAG_RESULT_SAMPLE_MASK:
*name = TGSI_SEMANTIC_SAMPLEMASK;
*index = 0;
break;
default:
ERROR("unknown frag result slot %u\n", slot);
assert(false);
break;
}
}
void
Converter::setInterpolate(nv50_ir_varying *var,
uint8_t mode,
@ -1197,7 +1168,7 @@ bool Converter::assignSlots() {
switch(prog->getType()) {
case Program::TYPE_FRAGMENT:
frag_result_to_tgsi_semantic((gl_frag_result)slot, &name, &index);
tgsi_get_gl_frag_result_semantic((gl_frag_result)slot, &name, &index);
switch (name) {
case TGSI_SEMANTIC_COLOR:
if (!var->data.fb_fetch_output)