state.depth.range alpha value should be 1, not 0 (bug #14733)
[mesa.git] / src / mesa / shader / prog_print.c
index 8fa7ef3d824ef11dc7879c7a6427870deca6e2e5..e92837f739ef4030fbd58769806a66ec3184a80f 100644 (file)
@@ -361,8 +361,8 @@ writemask_string(GLuint writeMask)
 }
 
 
-static const char *
-condcode_string(GLuint condcode)
+const char *
+_mesa_condcode_string(GLuint condcode)
 {
    switch (condcode) {
    case COND_GT:  return "GT";
@@ -390,7 +390,7 @@ print_dst_reg(const struct prog_dst_register *dstReg, gl_prog_print_mode mode,
 
    if (dstReg->CondMask != COND_TR) {
       _mesa_printf(" (%s.%s)",
-                   condcode_string(dstReg->CondMask),
+                   _mesa_condcode_string(dstReg->CondMask),
                    _mesa_swizzle_string(dstReg->CondSwizzle, GL_FALSE, GL_FALSE));
    }
 
@@ -561,23 +561,12 @@ _mesa_print_instruction_opt(const struct prog_instruction *inst, GLint indent,
       print_comment(inst);
       break;
    case OPCODE_BRA:
-      _mesa_printf("BRA %u (%s%s)",
+      _mesa_printf("BRA %d (%s%s)",
                    inst->BranchTarget,
-                   condcode_string(inst->DstReg.CondMask),
+                   _mesa_condcode_string(inst->DstReg.CondMask),
                    _mesa_swizzle_string(inst->DstReg.CondSwizzle, 0, GL_FALSE));
       print_comment(inst);
       break;
-   case OPCODE_CAL:
-      _mesa_printf("CAL %u", inst->BranchTarget);
-      print_comment(inst);
-      break;
-   case OPCODE_RET:
-      _mesa_printf("RET (%s%s); # (goto %d)",
-                   condcode_string(inst->DstReg.CondMask),
-                   _mesa_swizzle_string(inst->DstReg.CondSwizzle, 0, GL_FALSE),
-                   inst->BranchTarget);
-      print_comment(inst);
-      break;
    case OPCODE_IF:
       if (inst->SrcReg[0].File != PROGRAM_UNDEFINED) {
          /* Use ordinary register */
@@ -588,7 +577,7 @@ _mesa_print_instruction_opt(const struct prog_instruction *inst, GLint indent,
       else {
          /* Use cond codes */
          _mesa_printf("IF (%s%s);",
-                      condcode_string(inst->DstReg.CondMask),
+                      _mesa_condcode_string(inst->DstReg.CondMask),
                       _mesa_swizzle_string(inst->DstReg.CondSwizzle,
                                            0, GL_FALSE));
       }
@@ -611,31 +600,44 @@ _mesa_print_instruction_opt(const struct prog_instruction *inst, GLint indent,
    case OPCODE_CONT:
       _mesa_printf("%s (%s%s); # (goto %d)",
                    _mesa_opcode_string(inst->Opcode),
-                   condcode_string(inst->DstReg.CondMask),
+                   _mesa_condcode_string(inst->DstReg.CondMask),
                    _mesa_swizzle_string(inst->DstReg.CondSwizzle, 0, GL_FALSE),
                    inst->BranchTarget);
       print_comment(inst);
       break;
 
-   case OPCODE_BRK0:
-   case OPCODE_BRK1:
-   case OPCODE_CONT0:
-   case OPCODE_CONT1:
-      _mesa_printf("%s ", _mesa_opcode_string(inst->Opcode));
-      print_src_reg(&inst->SrcReg[0], mode, prog);
-      _mesa_printf("; ");
-      _mesa_printf(" # (goto %d)", inst->BranchTarget);
-      print_comment(inst);
-      break;
-
    case OPCODE_BGNSUB:
-      _mesa_printf("BGNSUB");
-      print_comment(inst);
-      return indent + 3;
+      if (mode == PROG_PRINT_NV) {
+         _mesa_printf("%s:\n", inst->Comment); /* comment is label */
+         return indent;
+      }
+      else {
+         _mesa_printf("BGNSUB");
+         print_comment(inst);
+         return indent + 3;
+      }
    case OPCODE_ENDSUB:
-      _mesa_printf("ENDSUB");
+      if (mode == PROG_PRINT_DEBUG) {
+         _mesa_printf("ENDSUB");
+         print_comment(inst);
+      }
+      break;
+   case OPCODE_CAL:
+      if (mode == PROG_PRINT_NV) {
+         _mesa_printf("CAL %s;  # (goto %d)\n", inst->Comment, inst->BranchTarget);
+      }
+      else {
+         _mesa_printf("CAL %u", inst->BranchTarget);
+         print_comment(inst);
+      }
+      break;
+   case OPCODE_RET:
+      _mesa_printf("RET (%s%s)",
+                   _mesa_condcode_string(inst->DstReg.CondMask),
+                   _mesa_swizzle_string(inst->DstReg.CondSwizzle, 0, GL_FALSE));
       print_comment(inst);
       break;
+
    case OPCODE_END:
       _mesa_printf("END\n");
       break;