From 74194113b6ad5cf692412a8fe50957305ed6a7b3 Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Wed, 3 Sep 2008 13:50:49 +0000 Subject: [PATCH] Fix conv skip in gen_lowered_64bit_shifts() (still necessary at all?). [r21669] --- ir/be/ia32/ia32_transform.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ir/be/ia32/ia32_transform.c b/ir/be/ia32/ia32_transform.c index c4e009543..09fc6ea72 100644 --- a/ir/be/ia32/ia32_transform.c +++ b/ir/be/ia32/ia32_transform.c @@ -3737,7 +3737,9 @@ static ir_node *gen_lowered_64bit_shifts(ir_node *node, ir_node *high, /* the shift amount can be any mode that is bigger than 5 bits, since all * other bits are ignored anyway */ - while (is_Conv(count) && get_irn_n_edges(count) == 1) { + while (is_Conv(count) && + get_irn_n_edges(count) == 1 && + mode_is_int(get_irn_mode(count))) { assert(get_mode_size_bits(get_irn_mode(count)) >= 5); count = get_Conv_op(count); } -- 2.20.1