From: Christoph Mallon Date: Mon, 22 Sep 2008 09:07:09 +0000 (+0000) Subject: Small simplification. X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=b88d0e6fd2154f51a2a333285c759f6757c4c715;p=libfirm Small simplification. [r22166] --- diff --git a/ir/be/ia32/ia32_optimize.c b/ir/be/ia32/ia32_optimize.c index d2d1c9902..ce3e94930 100644 --- a/ir/be/ia32/ia32_optimize.c +++ b/ir/be/ia32/ia32_optimize.c @@ -97,17 +97,17 @@ static int produces_zero_flag(ir_node *node, int pn) case iro_ia32_ShlD: case iro_ia32_ShrD: + assert(n_ia32_ShlD_count == n_ia32_ShrD_count); + count = get_irn_n(node, n_ia32_ShlD_count); + goto check_shift_amount; + case iro_ia32_Shl: case iro_ia32_Shr: case iro_ia32_Sar: - assert(n_ia32_ShlD_count == n_ia32_ShrD_count); assert(n_ia32_Shl_count == n_ia32_Shr_count && n_ia32_Shl_count == n_ia32_Sar_count); - if (is_ia32_ShlD(node) || is_ia32_ShrD(node)) { - count = get_irn_n(node, n_ia32_ShlD_count); - } else { - count = get_irn_n(node, n_ia32_Shl_count); - } + count = get_irn_n(node, n_ia32_Shl_count); +check_shift_amount: /* when shift count is zero the flags are not affected, so we can only * do this for constants != 0 */ if (!is_ia32_Immediate(count))