summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChia-I Wu <[email protected]>2014-09-13 22:15:46 +0800
committerChia-I Wu <[email protected]>2014-09-14 00:30:33 +0800
commit8fcf1b1f90901d59bf4cca0e04aa84d2c55de9ed (patch)
treea2ac3208fcfe1cfb9f80ab336b0d238f4cb57a3b /src
parent5341001b94f94844fc23db931fb7d9357beb18e5 (diff)
ilo: simplify src operand gathering in disassembler
Always initialize the operand array to point to src0, src1, and src2. Signed-off-by: Chia-I Wu <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/gallium/drivers/ilo/shader/toy_compiler_disasm.c20
1 files changed, 5 insertions, 15 deletions
diff --git a/src/gallium/drivers/ilo/shader/toy_compiler_disasm.c b/src/gallium/drivers/ilo/shader/toy_compiler_disasm.c
index 7c1c32e98e4..e9cd18731b6 100644
--- a/src/gallium/drivers/ilo/shader/toy_compiler_disasm.c
+++ b/src/gallium/drivers/ilo/shader/toy_compiler_disasm.c
@@ -1375,23 +1375,13 @@ disasm_printer_print_inst(struct disasm_printer *printer,
}
} else {
const int src_count = disasm_opcode_table[inst->opcode].src_count;
- const struct disasm_src_operand *src[3];
- int i;
-
- /* get src operands */
- switch (src_count) {
- case 3:
- src[2] = &inst->u.src2;
- case 2:
- src[1] = &inst->src1;
- case 1:
- src[0] = &inst->src0;
- case 0:
- default:
- break;
- }
if (src_count) {
+ const struct disasm_src_operand *src[3] = {
+ &inst->src0, &inst->src1, &inst->u.src2
+ };
+ int i;
+
disasm_printer_column(printer, col++);
disasm_printer_add_dst(printer, inst, &inst->dst);