summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChris Forbes <[email protected]>2013-11-18 21:24:24 +1300
committerChris Forbes <[email protected]>2014-07-13 10:01:16 +1200
commit0b0572a2ad4c7ca8b437589291e47180c733c371 (patch)
tree2d63788a4591f5440725dc58f548d3eefebbd3c1 /src
parent1b6163bdf5c69408e04c9685f9f98f842bb14b5a (diff)
i965/disasm: add support for pixel interpolator messages
V3: Rework for brw_inst changes Signed-off-by: Chris Forbes <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/i965/brw_disasm.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_disasm.c b/src/mesa/drivers/dri/i965/brw_disasm.c
index f37da1921c4..d7362c16c28 100644
--- a/src/mesa/drivers/dri/i965/brw_disasm.c
+++ b/src/mesa/drivers/dri/i965/brw_disasm.c
@@ -473,6 +473,13 @@ static const char *const aop[16] = {
[BRW_AOP_PREDEC] = "predec",
};
+static const char * const pixel_interpolator_msg_types[4] = {
+ [GEN7_PIXEL_INTERPOLATOR_LOC_SHARED_OFFSET] = "per_message_offset",
+ [GEN7_PIXEL_INTERPOLATOR_LOC_SAMPLE] = "sample_position",
+ [GEN7_PIXEL_INTERPOLATOR_LOC_CENTROID] = "centroid",
+ [GEN7_PIXEL_INTERPOLATOR_LOC_PER_SLOT_OFFSET] = "per_slot_offset",
+};
+
static const char *const math_function[16] = {
[BRW_MATH_FUNCTION_INV] = "inv",
[BRW_MATH_FUNCTION_LOG] = "log",
@@ -1473,6 +1480,16 @@ brw_disassemble_inst(FILE *file, struct brw_context *brw, brw_inst *inst,
/* FALLTHROUGH */
}
+ case GEN7_SFID_PIXEL_INTERPOLATOR:
+ if (brw->gen >= 7) {
+ format(file, " (%s, %s, 0x%02x)",
+ brw_inst_pi_nopersp(brw, inst) ? "linear" : "persp",
+ pixel_interpolator_msg_types[brw_inst_pi_message_type(brw, inst)],
+ brw_inst_pi_message_data(brw, inst));
+ break;
+ }
+ /* FALLTHROUGH */
+
default:
format(file, "unsupported shared function ID %d", sfid);
break;