nv50/ir: print interpolation mode
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>
Thu, 12 Apr 2012 19:42:29 +0000 (21:42 +0200)
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>
Sat, 14 Apr 2012 19:54:04 +0000 (21:54 +0200)
src/gallium/drivers/nv50/codegen/nv50_ir_print.cpp

index c613446..45e61c5 100644 (file)
@@ -227,6 +227,26 @@ static const char *SemanticStr[SV_LAST + 1] =
    "(INVALID)"
 };
 
+static const char *interpStr[16] =
+{
+   "pass",
+   "mul",
+   "flat",
+   "sc",
+   "cent pass",
+   "cent mul",
+   "cent flat",
+   "cent sc",
+   "off pass",
+   "off mul",
+   "off flat",
+   "off sc",
+   "samp pass",
+   "samp mul",
+   "samp flat",
+   "samp sc"
+};
+
 #define PRINT(args...)                                \
    do {                                               \
       pos += snprintf(&buf[pos], size - pos, args);   \
@@ -451,6 +471,8 @@ void Instruction::print() const
          PRINT(" %sBB:%i", colour[TXT_BRA], asFlow()->target.bb->getId());
    } else {
       PRINT("%s ", operationStr[op]);
+      if (op == OP_LINTERP || op == OP_PINTERP)
+         PRINT("%s ", interpStr[ipa]);
       if (subOp)
          PRINT("(SUBOP:%u) ", subOp);
       if (perPatch)