From eafcb1718400b5015b60284a8be8bee13f67500f Mon Sep 17 00:00:00 2001 From: David Schleef Date: Mon, 14 Jun 2010 15:57:57 -0700 Subject: [PATCH] Fix API for 2-dest opcodes Without this, splitwb and splitlw are effectively useless. --- orc/orcprogram.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/orc/orcprogram.c b/orc/orcprogram.c index 5018101..2c8aab8 100644 --- a/orc/orcprogram.c +++ b/orc/orcprogram.c @@ -539,8 +539,13 @@ orc_program_append_str (OrcProgram *program, const char *name, ORC_ERROR ("unknown opcode: %s", name); } insn->dest_args[0] = orc_program_find_var_by_name (program, arg1); - insn->src_args[0] = orc_program_find_var_by_name (program, arg2); - insn->src_args[1] = orc_program_find_var_by_name (program, arg3); + if (insn->opcode->dest_size[1] != 0) { + insn->dest_args[1] = orc_program_find_var_by_name (program, arg2); + insn->src_args[0] = orc_program_find_var_by_name (program, arg3); + } else { + insn->src_args[0] = orc_program_find_var_by_name (program, arg2); + insn->src_args[1] = orc_program_find_var_by_name (program, arg3); + } program->n_insns++; } -- 2.7.4