From a9195970f018e50bc115962d518b09c7133da649 Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Fri, 27 Sep 2013 08:59:18 +0000 Subject: [PATCH] re PR middle-end/58547 (rtlanal.c:5482:19: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]) gcc: PR middle-end/58547 * rtlanal.c (lsb_bitfield_op_p): Make both parts of the comparison signed. From-SVN: r202967 --- gcc/ChangeLog | 6 ++++++ gcc/rtlanal.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5cb2a52..3ffadd5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-09-27 Iain Sandoe + + PR middle-end/58547 + * rtlanal.c (lsb_bitfield_op_p): Make both parts of the comparison + signed. + 2013-09-27 Richard Biener PR tree-optimization/58459 diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 24cbcd2..0349bcc 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -5476,7 +5476,7 @@ lsb_bitfield_op_p (rtx x) if (GET_RTX_CLASS (GET_CODE (x)) == RTX_BITFIELD_OPS) { enum machine_mode mode = GET_MODE (XEXP (x, 0)); - unsigned HOST_WIDE_INT len = INTVAL (XEXP (x, 1)); + HOST_WIDE_INT len = INTVAL (XEXP (x, 1)); HOST_WIDE_INT pos = INTVAL (XEXP (x, 2)); return (pos == (BITS_BIG_ENDIAN ? GET_MODE_PRECISION (mode) - len : 0)); -- 2.7.4