From: Wim Taymans Date: Thu, 18 Sep 2014 12:19:06 +0000 (+0200) Subject: program-c: handle X2 and X4 with size < 2 variables X-Git-Tag: 0.4.23~22 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6e418c2138d53fe1c164ef7a5d7d8b036f10981f;p=platform%2Fupstream%2Forc.git program-c: handle X2 and X4 with size < 2 variables when the variable has a size < 2 it will have been declared as a simple int8 or int16, when we use this in a X2 or X4 instruction, use the variable directly instead of trying to use the x fields. --- diff --git a/orc/orcprogram-c.c b/orc/orcprogram-c.c index 02b5aa8..bff075a 100644 --- a/orc/orcprogram-c.c +++ b/orc/orcprogram-c.c @@ -503,16 +503,16 @@ c_get_name_int (char *name, OrcCompiler *p, OrcInstruction *insn, int var) } } } else { - if (insn && (insn->flags & ORC_INSTRUCTION_FLAG_X2)) { - sprintf(name, "var%d.x2[%d]", var, p->unroll_index); - } else if (insn && (insn->flags & ORC_INSTRUCTION_FLAG_X4)) { - sprintf(name, "var%d.x4[%d]", var, p->unroll_index); - } else { - if (p->vars[var].size >= 2) { - sprintf(name, "var%d.i", var); + if (p->vars[var].size >= 2) { + if (insn && (insn->flags & ORC_INSTRUCTION_FLAG_X2)) { + sprintf(name, "var%d.x2[%d]", var, p->unroll_index); + } else if (insn && (insn->flags & ORC_INSTRUCTION_FLAG_X4)) { + sprintf(name, "var%d.x4[%d]", var, p->unroll_index); } else { - sprintf(name, "var%d", var); + sprintf(name, "var%d.i", var); } + } else { + sprintf(name, "var%d", var); } } }