From: Christoph Mallon Date: Tue, 25 Nov 2008 08:18:06 +0000 (+0000) Subject: In ia32 gen_Shrs() we should not care, whether the mode is signed, to determine,... X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=5f5104e7e69f1e8498ea32c0b5f2b65b90dd713b;p=libfirm In ia32 gen_Shrs() we should not care, whether the mode is signed, to determine, if it is a sign extension. The only important information is, that it is a Shr_s_. [r23959] --- diff --git a/ir/be/ia32/ia32_transform.c b/ir/be/ia32/ia32_transform.c index 42a8f1ccb..1df9709a6 100644 --- a/ir/be/ia32/ia32_transform.c +++ b/ir/be/ia32/ia32_transform.c @@ -1498,9 +1498,8 @@ static ir_node *gen_Shrs(ir_node *node) { ir_node *left = get_Shrs_left(node); ir_node *right = get_Shrs_right(node); - ir_mode *mode = get_irn_mode(node); - if (is_Const(right) && mode == mode_Is) { + if (is_Const(right)) { tarval *tv = get_Const_tarval(right); long val = get_tarval_long(tv); if (val == 31) { @@ -1514,7 +1513,7 @@ static ir_node *gen_Shrs(ir_node *node) } /* 8 or 16 bit sign extension? */ - if (is_Const(right) && is_Shl(left) && mode == mode_Is) { + if (is_Const(right) && is_Shl(left)) { ir_node *shl_left = get_Shl_left(left); ir_node *shl_right = get_Shl_right(left); if (is_Const(shl_right)) {