Propagating rule results through fixed registers has been banned, so
this fixes the issue.

Signed-off-by: Eduard - Gabriel Munteanu <eduard.munte...@linux360.ro>
---
 arch/x86/insn-selector.brg |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/x86/insn-selector.brg b/arch/x86/insn-selector.brg
index babbd89..44e8154 100644
--- a/arch/x86/insn-selector.brg
+++ b/arch/x86/insn-selector.brg
@@ -1632,11 +1632,10 @@ arg:    EXPR_ARG_THIS(reg) 1
        if (expr->arg_reg != MACH_REG_UNASSIGNED) {
                dst = get_fixed_var(s->b_parent, expr->arg_reg);
                select_insn(s, tree, reg_reg_insn(INSN_MOV_REG_REG, src, dst));
-               state->reg1 = dst;
-       } else {
+       } else
                select_insn(s, tree, reg_insn(INSN_PUSH_REG, src));
-               state->reg1 = src;
-       }
+
+       state->reg1 = src;
 }
 %endif
 
-- 
1.6.0.6


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Jatovm-devel mailing list
Jatovm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jatovm-devel

Reply via email to