Ah I see now how that's supposed to work... Previous to adding GET_BUFFER_RESINFO the op was just a fixed zero, and the op for this is the same on eg/cm (and we should not hit it with r600). But indeed that looks more like the code elsewhere...
Reviewed-by: Roland Scheidegger <[email protected]> Am 01.02.2018 um 01:33 schrieb Dave Airlie: > From: Dave Airlie <[email protected]> > > The vtx operations never got translated, so things worked by > 0 being equal to 0, translate them so we can use the proper buffer > resinfo code. > > Signed-off-by: Dave Airlie <[email protected]> > --- > src/gallium/drivers/r600/r600_asm.c | 2 +- > src/gallium/drivers/r600/r600_shader.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/src/gallium/drivers/r600/r600_asm.c > b/src/gallium/drivers/r600/r600_asm.c > index 92c2bdf..21d069d 100644 > --- a/src/gallium/drivers/r600/r600_asm.c > +++ b/src/gallium/drivers/r600/r600_asm.c > @@ -1510,7 +1510,7 @@ int cm_bytecode_add_cf_end(struct r600_bytecode *bc) > /* common to all 3 families */ > static int r600_bytecode_vtx_build(struct r600_bytecode *bc, struct > r600_bytecode_vtx *vtx, unsigned id) > { > - bc->bytecode[id] = S_SQ_VTX_WORD0_VTX_INST(vtx->op) | > + bc->bytecode[id] = > S_SQ_VTX_WORD0_VTX_INST(r600_isa_fetch_opcode(bc->isa->hw_class, vtx->op)) | > S_SQ_VTX_WORD0_BUFFER_ID(vtx->buffer_id) | > S_SQ_VTX_WORD0_FETCH_TYPE(vtx->fetch_type) | > S_SQ_VTX_WORD0_SRC_GPR(vtx->src_gpr) | > diff --git a/src/gallium/drivers/r600/r600_shader.c > b/src/gallium/drivers/r600/r600_shader.c > index be02412..46e2d08 100644 > --- a/src/gallium/drivers/r600/r600_shader.c > +++ b/src/gallium/drivers/r600/r600_shader.c > @@ -6939,7 +6939,7 @@ static int r600_do_buffer_txq(struct r600_shader_ctx > *ctx, int reg_idx, int offs > } else { > struct r600_bytecode_vtx vtx; > memset(&vtx, 0, sizeof(vtx)); > - vtx.op = FETCH_OP_GDS_MIN_UINT; /* aka GET_BUFFER_RESINFO */ > + vtx.op = FETCH_OP_GET_BUFFER_RESINFO; > vtx.buffer_id = id + R600_MAX_CONST_BUFFERS; > vtx.fetch_type = SQ_VTX_FETCH_NO_INDEX_OFFSET; > vtx.src_gpr = 0; > _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
