aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2012-04-09 16:04:31 +0300
committerPekka Enberg <penberg@kernel.org>2012-04-09 16:04:31 +0300
commit556809a15d0233a116f103657da5274d5abdd0de (patch)
treeab20763e0c1375a929f089b310883338bb4ea3bc
parentc70d5a8984f2f43828e8a040c31f66762e7066a1 (diff)
downloadjato-556809a15d0233a116f103657da5274d5abdd0de.tar.gz
jit: Fix ->vm_type for EXPR_ARG expressions
This patch fixes ->vm_type for EXPR_ARG expressions. This fixes instruction selector rules on x86-64 that use it to distinguish between MOVSS and MOVSD for floats and doubles, respectively. Signed-off-by: Pekka Enberg <penberg@kernel.org>
-rw-r--r--jit/expression.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/jit/expression.c b/jit/expression.c
index e181b304..06f7dcd2 100644
--- a/jit/expression.c
+++ b/jit/expression.c
@@ -428,7 +428,7 @@ struct expression *args_list_expr(struct expression *args_left,
struct expression *arg_expr(struct expression *arg_expression)
{
- struct expression *expr = alloc_expression(EXPR_ARG, J_VOID);
+ struct expression *expr = alloc_expression(EXPR_ARG, arg_expression->vm_type);
if (expr)
expr->arg_expression = &arg_expression->node;
return expr;