From 9ffda16d6ab2b640bc0adad82939342f46bb22f6 Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Mon, 1 Oct 2007 13:32:41 +0000 Subject: [PATCH] Add a missing Conv in the 64bit lowerer. [r16023] --- ir/lower/lower_dw.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ir/lower/lower_dw.c b/ir/lower/lower_dw.c index cd42ecbc1..536d5b8ee 100644 --- a/ir/lower/lower_dw.c +++ b/ir/lower/lower_dw.c @@ -1428,7 +1428,8 @@ static void lower_Conv_to_Ls(ir_node *node, lower_env_t *env) { env->entries[idx]->low_word = op; if (mode_is_signed(imode)) { - env->entries[idx]->high_word = new_rd_Shrs(dbg, irg, block, op, + ir_node *op_conv = new_rd_Conv(dbg, irg, block, op, dst_mode_h); + env->entries[idx]->high_word = new_rd_Shrs(dbg, irg, block, op_conv, new_Const_long(mode_Iu, get_mode_size_bits(dst_mode_h) - 1), dst_mode_h); } else { env->entries[idx]->high_word = new_Const(dst_mode_h, get_mode_null(dst_mode_h)); -- 2.20.1