Mesa (master): aco: update print_ir

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Oct 10 20:34:38 UTC 2019


Module: Mesa
Branch: master
Commit: 2026ff5165ad0da1ff7680fdb579702d31097a6a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2026ff5165ad0da1ff7680fdb579702d31097a6a

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Thu Oct 10 12:17:04 2019 +0100

aco: update print_ir

Mostly adds GFX10 stuff.

Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Reviewed-By: Timur Kristóf <timur.kristof at gmail.com>

---

 src/amd/compiler/aco_print_ir.cpp | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/src/amd/compiler/aco_print_ir.cpp b/src/amd/compiler/aco_print_ir.cpp
index 517ddc235ce..f641a21da34 100644
--- a/src/amd/compiler/aco_print_ir.cpp
+++ b/src/amd/compiler/aco_print_ir.cpp
@@ -2,6 +2,7 @@
 #include "aco_builder.h"
 
 #include "sid.h"
+#include "ac_shader_util.h"
 
 namespace aco {
 
@@ -205,6 +206,8 @@ static void print_instr_format_specific(struct Instruction *instr, FILE *output)
       SMEM_instruction* smem = static_cast<SMEM_instruction*>(instr);
       if (smem->glc)
          fprintf(output, " glc");
+      if (smem->dlc)
+         fprintf(output, " dlc");
       if (smem->nv)
          fprintf(output, " nv");
       print_barrier_reorder(smem->can_reorder, smem->barrier, output);
@@ -235,6 +238,8 @@ static void print_instr_format_specific(struct Instruction *instr, FILE *output)
          fprintf(output, " idxen");
       if (mubuf->glc)
          fprintf(output, " glc");
+      if (mubuf->dlc)
+         fprintf(output, " dlc");
       if (mubuf->slc)
          fprintf(output, " slc");
       if (mubuf->tfe)
@@ -257,10 +262,38 @@ static void print_instr_format_specific(struct Instruction *instr, FILE *output)
                  mimg->dmask & 0x2 ? "y" : "",
                  mimg->dmask & 0x4 ? "z" : "",
                  mimg->dmask & 0x8 ? "w" : "");
+      switch (mimg->dim) {
+      case ac_image_1d:
+         fprintf(output, " 1d");
+         break;
+      case ac_image_2d:
+         fprintf(output, " 2d");
+         break;
+      case ac_image_3d:
+         fprintf(output, " 3d");
+         break;
+      case ac_image_cube:
+         fprintf(output, " cube");
+         break;
+      case ac_image_1darray:
+         fprintf(output, " 1darray");
+         break;
+      case ac_image_2darray:
+         fprintf(output, " 2darray");
+         break;
+      case ac_image_2dmsaa:
+         fprintf(output, " 2dmsaa");
+         break;
+      case ac_image_2darraymsaa:
+         fprintf(output, " 2darraymsaa");
+         break;
+      }
       if (mimg->unrm)
          fprintf(output, " unrm");
       if (mimg->glc)
          fprintf(output, " glc");
+      if (mimg->dlc)
+         fprintf(output, " dlc");
       if (mimg->slc)
          fprintf(output, " slc");
       if (mimg->tfe)
@@ -330,6 +363,8 @@ static void print_instr_format_specific(struct Instruction *instr, FILE *output)
          fprintf(output, " offset:%u", flat->offset);
       if (flat->glc)
          fprintf(output, " glc");
+      if (flat->dlc)
+         fprintf(output, " dlc");
       if (flat->slc)
          fprintf(output, " slc");
       if (flat->lds)
@@ -377,6 +412,8 @@ static void print_instr_format_specific(struct Instruction *instr, FILE *output)
          fprintf(output, " idxen");
       if (mtbuf->glc)
          fprintf(output, " glc");
+      if (mtbuf->dlc)
+         fprintf(output, " dlc");
       if (mtbuf->slc)
          fprintf(output, " slc");
       if (mtbuf->tfe)
@@ -528,6 +565,8 @@ static void print_block_kind(uint16_t kind, FILE *output)
       fprintf(output, "discard_if, ");
    if (kind & block_kind_needs_lowering)
       fprintf(output, "needs_lowering, ");
+   if (kind & block_kind_uses_demote)
+      fprintf(output, "uses_demote, ");
 }
 
 void aco_print_block(const struct Block* block, FILE *output)




More information about the mesa-commit mailing list