combine.c (simplify_set): Don't call to force_to_mode if size of integer type is...
authorIgor Shevlyakov <igor@microunity.com>
Thu, 26 Sep 2002 21:15:26 +0000 (21:15 +0000)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 26 Sep 2002 21:15:26 +0000 (14:15 -0700)
        * combine.c (simplify_set): Don't call to force_to_mode if size
        of integer type is larger than HOST_BITS_PER_WIDE_INT.

From-SVN: r57549

gcc/ChangeLog
gcc/combine.c

index 5e2ff79d2040a539d5807424380159128cd24bf6..f9d73ba5a7e51686c41d712ed5a5d29800949a28 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-26  Igor Shevlyakov <igor@microunity.com>
+
+       * combine.c (simplify_set): Don't call to force_to_mode if size
+       of integer type is larger than HOST_BITS_PER_WIDE_INT.
+
 2002-09-26  Janis Johnson  <janis187@us.ibm.com>
 
        * Makefile.in (qmtest-g++): Fix file path.
index 5b7b5a92bf76dfb240138c43620903b29c623be6..7fcada47877c883ad857f5efb585d8202150a366 100644 (file)
@@ -5011,7 +5011,8 @@ simplify_set (x)
      simplify the expression for the object knowing that we only need the
      low-order bits.  */
 
-  if (GET_MODE_CLASS (mode) == MODE_INT)
+  if (GET_MODE_CLASS (mode) == MODE_INT
+      && GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT)
     {
       src = force_to_mode (src, mode, ~(HOST_WIDE_INT) 0, NULL_RTX, 0);
       SUBST (SET_SRC (x), src);