Pārlūkot izejas kodu

ttn: add LODQ support

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
tags/11.2-branchpoint
Ilia Mirkin pirms 10 gadiem
vecāks
revīzija
f0e670bdd7
1 mainītis faili ar 9 papildinājumiem un 2 dzēšanām
  1. 9
    2
      src/gallium/auxiliary/nir/tgsi_to_nir.c

+ 9
- 2
src/gallium/auxiliary/nir/tgsi_to_nir.c Parādīt failu

@@ -1280,6 +1280,10 @@ ttn_tex(struct ttn_compile *c, nir_alu_dest dest, nir_ssa_def **src)
num_srcs = 3;
samp = 3;
break;
case TGSI_OPCODE_LODQ:
op = nir_texop_lod;
num_srcs = 1;
break;

default:
fprintf(stderr, "unknown TGSI tex op %d\n", tgsi_inst->Instruction.Opcode);
@@ -1332,7 +1336,9 @@ ttn_tex(struct ttn_compile *c, nir_alu_dest dest, nir_ssa_def **src)
*/
sview = instr->sampler_index;

if (sview < c->num_samp_types) {
if (op == nir_texop_lod) {
instr->dest_type = nir_type_float;
} else if (sview < c->num_samp_types) {
instr->dest_type = c->samp_types[sview];
} else {
instr->dest_type = nir_type_float;
@@ -1648,7 +1654,7 @@ static const nir_op op_trans[TGSI_OPCODE_LAST] = {
[TGSI_OPCODE_UMUL_HI] = nir_op_umul_high,

[TGSI_OPCODE_TG4] = 0,
[TGSI_OPCODE_LODQ] = 0, /* XXX */
[TGSI_OPCODE_LODQ] = 0,

[TGSI_OPCODE_IBFE] = nir_op_ibitfield_extract,
[TGSI_OPCODE_UBFE] = nir_op_ubitfield_extract,
@@ -1816,6 +1822,7 @@ ttn_emit_instruction(struct ttn_compile *c)
case TGSI_OPCODE_TXQ_LZ:
case TGSI_OPCODE_TXF:
case TGSI_OPCODE_TG4:
case TGSI_OPCODE_LODQ:
ttn_tex(c, dest, src);
break;


Notiek ielāde…
Atcelt
Saglabāt