From: Chia-I Wu Date: Fri, 11 Apr 2014 18:26:46 +0000 (+0800) Subject: ilo: add TOY_OPCODE_DO X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ad39b991ce34d8af11589c78102873d8c28b1682;p=mesa.git ilo: add TOY_OPCODE_DO We used to give BRW_OPCODE_DO a special meaning, while we should have used TOY_OPCODE_DO. --- diff --git a/src/gallium/drivers/ilo/shader/ilo_shader_gs.c b/src/gallium/drivers/ilo/shader/ilo_shader_gs.c index 79a6acb7a28..0741754189f 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 71f6fa87dd9..623d47821c3 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 3238c22b478..cc5fc8079a6 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 19aab4c7952..2339b7d3b8e 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 e691f127584..ba05b0a1e2b 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 93fe3b1f7e7..a0db732279c 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; }