diff options
author | Dave Airlie <[email protected]> | 2018-01-31 14:28:26 +1000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2018-02-02 09:46:05 +1000 |
commit | 8fa5aade43d70468947d72029691544fa97ba43b (patch) | |
tree | 426ac8cee67b3cd575695c685e88b2f62520d8f9 /src/gallium/drivers/r600/r600_asm.c | |
parent | 2ffe395cba0f7b3c1f1c41062f4376eae3a188b5 (diff) |
r600: initial attempt at gl_HelperInvocation (v3)
This passes the CTS and piglit tests.
This also disable sb for helper invocations until it doesn't
mess up the VPM flags.
Thanks to Ilia and Glenn for advice, and Roland for working
out the working evergreen path.
Reviewed-by: Roland Scheidegger <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_asm.c')
-rw-r--r-- | src/gallium/drivers/r600/r600_asm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_asm.c b/src/gallium/drivers/r600/r600_asm.c index 21d069d81b4..ec2d34e9504 100644 --- a/src/gallium/drivers/r600/r600_asm.c +++ b/src/gallium/drivers/r600/r600_asm.c @@ -2099,9 +2099,12 @@ void r600_bytecode_disasm(struct r600_bytecode *bc) fprintf(stderr, "%04d %08X %08X %s ", id, bc->bytecode[id], bc->bytecode[id + 1], cfop->name); fprintf(stderr, "%d @%d ", cf->ndw / 4, cf->addr); - fprintf(stderr, "\n"); + if (cf->vpm) + fprintf(stderr, "VPM "); if (cf->end_of_program) fprintf(stderr, "EOP "); + fprintf(stderr, "\n"); + } else if (cfop->flags & CF_EXP) { int o = 0; const char *exp_type[] = {"PIXEL", "POS ", "PARAM"}; @@ -2198,6 +2201,8 @@ void r600_bytecode_disasm(struct r600_bytecode *bc) fprintf(stderr, "POP:%X ", cf->pop_count); if (cf->count && (cfop->flags & CF_EMIT)) fprintf(stderr, "STREAM%d ", cf->count); + if (cf->vpm) + fprintf(stderr, "VPM "); if (cf->end_of_program) fprintf(stderr, "EOP "); fprintf(stderr, "\n"); |