Mesa (master): ilo: add TOY_OPCODE_DO

Chia-I Wu olv at kemper.freedesktop.org
Mon Apr 14 12:46:00 UTC 2014


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

Author: Chia-I Wu <olvaffe at gmail.com>
Date:   Sat Apr 12 02:26:46 2014 +0800

ilo: add TOY_OPCODE_DO

We used to give BRW_OPCODE_DO a special meaning, while we should have used
TOY_OPCODE_DO.

---

 src/gallium/drivers/ilo/shader/ilo_shader_gs.c   |    2 +-
 src/gallium/drivers/ilo/shader/toy_compiler.c    |    1 +
 src/gallium/drivers/ilo/shader/toy_compiler.h    |    2 ++
 src/gallium/drivers/ilo/shader/toy_legalize.c    |    6 +++---
 src/gallium/drivers/ilo/shader/toy_legalize_ra.c |    4 ++--
 src/gallium/drivers/ilo/shader/toy_tgsi.c        |    2 +-
 6 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/src/gallium/drivers/ilo/shader/ilo_shader_gs.c b/src/gallium/drivers/ilo/shader/ilo_shader_gs.c
index 79a6acb..0741754 100644
--- a/src/gallium/drivers/ilo/shader/ilo_shader_gs.c
+++ b/src/gallium/drivers/ilo/shader/ilo_shader_gs.c
@@ -804,7 +804,7 @@ get_num_prims_static(struct gs_compile_context *gcc)
       case BRW_OPCODE_ENDIF:
          if_depth--;
          break;
-      case BRW_OPCODE_DO:
+      case TOY_OPCODE_DO:
          do_depth++;
          break;
       case BRW_OPCODE_WHILE:
diff --git a/src/gallium/drivers/ilo/shader/toy_compiler.c b/src/gallium/drivers/ilo/shader/toy_compiler.c
index 71f6fa8..623d478 100644
--- a/src/gallium/drivers/ilo/shader/toy_compiler.c
+++ b/src/gallium/drivers/ilo/shader/toy_compiler.c
@@ -312,6 +312,7 @@ get_opcode_name(unsigned opcode)
    case BRW_OPCODE_PLN:                   return "pln";
    case BRW_OPCODE_MAD:                   return "mad";
    case BRW_OPCODE_NOP:                   return "nop";
+   case TOY_OPCODE_DO:                    return "do";
    /* TGSI */
    case TOY_OPCODE_TGSI_IN:               return "tgsi.in";
    case TOY_OPCODE_TGSI_CONST:            return "tgsi.const";
diff --git a/src/gallium/drivers/ilo/shader/toy_compiler.h b/src/gallium/drivers/ilo/shader/toy_compiler.h
index 3238c22..cc5fc80 100644
--- a/src/gallium/drivers/ilo/shader/toy_compiler.h
+++ b/src/gallium/drivers/ilo/shader/toy_compiler.h
@@ -41,6 +41,8 @@ enum toy_opcode {
    /* 0..127 are reserved for BRW_OPCODE_x */
    TOY_OPCODE_LAST_HW = 127,
 
+   TOY_OPCODE_DO,
+
    /* TGSI register functions */
    TOY_OPCODE_TGSI_IN,
    TOY_OPCODE_TGSI_CONST,
diff --git a/src/gallium/drivers/ilo/shader/toy_legalize.c b/src/gallium/drivers/ilo/shader/toy_legalize.c
index 19aab4c..2339b7d 100644
--- a/src/gallium/drivers/ilo/shader/toy_legalize.c
+++ b/src/gallium/drivers/ilo/shader/toy_legalize.c
@@ -315,7 +315,7 @@ patch_while_jip(struct toy_compiler *tc, struct toy_inst *inst)
    LIST_FOR_EACH_ENTRY_FROM_REV(inst2, inst->list.prev,
          &tc->instructions, list) {
       if (inst2->marker) {
-         if (inst2->opcode == BRW_OPCODE_DO) {
+         if (inst2->opcode == TOY_OPCODE_DO) {
             if (nest_level) {
                nest_level--;
             }
@@ -455,7 +455,7 @@ patch_break_continue_jip(struct toy_compiler *tc, struct toy_inst *inst)
    /* search forward */
    LIST_FOR_EACH_ENTRY_FROM(inst2, inst->list.next, &tc->instructions, list) {
       if (inst2->marker) {
-         if (inst2->opcode == BRW_OPCODE_DO)
+         if (inst2->opcode == TOY_OPCODE_DO)
             nest_level++;
          continue;
       }
@@ -474,7 +474,7 @@ patch_break_continue_jip(struct toy_compiler *tc, struct toy_inst *inst)
    inst3 = inst2;
    LIST_FOR_EACH_ENTRY_FROM(inst2, &inst3->list, &tc->instructions, list) {
       if (inst2->marker) {
-         if (inst2->opcode == BRW_OPCODE_DO)
+         if (inst2->opcode == TOY_OPCODE_DO)
             nest_level++;
          continue;
       }
diff --git a/src/gallium/drivers/ilo/shader/toy_legalize_ra.c b/src/gallium/drivers/ilo/shader/toy_legalize_ra.c
index e691f12..ba05b0a 100644
--- a/src/gallium/drivers/ilo/shader/toy_legalize_ra.c
+++ b/src/gallium/drivers/ilo/shader/toy_legalize_ra.c
@@ -351,7 +351,7 @@ linear_scan_init_live_intervals(struct linear_scan *ls,
             struct toy_inst *inst2;
             int loop_level = 1;
 
-            assert(inst->opcode == BRW_OPCODE_DO);
+            assert(inst->opcode == TOY_OPCODE_DO);
             do_pc = pc;
             while_pc = pc + 1;
 
@@ -359,7 +359,7 @@ linear_scan_init_live_intervals(struct linear_scan *ls,
             LIST_FOR_EACH_ENTRY_FROM(inst2, tc->iter_next,
                   &tc->instructions, list) {
                if (inst2->marker) {
-                  assert(inst->opcode == BRW_OPCODE_DO);
+                  assert(inst->opcode == TOY_OPCODE_DO);
                   loop_level++;
                   continue;
                }
diff --git a/src/gallium/drivers/ilo/shader/toy_tgsi.c b/src/gallium/drivers/ilo/shader/toy_tgsi.c
index 93fe3b1..a0db732 100644
--- a/src/gallium/drivers/ilo/shader/toy_tgsi.c
+++ b/src/gallium/drivers/ilo/shader/toy_tgsi.c
@@ -788,7 +788,7 @@ aos_BGNLOOP(struct toy_compiler *tc,
 {
    struct toy_inst *inst;
 
-   inst = tc_add0(tc, BRW_OPCODE_DO);
+   inst = tc_add0(tc, TOY_OPCODE_DO);
    /* this is just a marker */
    inst->marker = true;
 }




More information about the mesa-commit mailing list