combine.c (simplify_rtx, [...]): Respect value of TRULY_NOOP_TRUNCATION.
authorJeff Law <law@gcc.gnu.org>
Tue, 14 Apr 1998 08:04:21 +0000 (02:04 -0600)
committerJeff Law <law@gcc.gnu.org>
Tue, 14 Apr 1998 08:04:21 +0000 (02:04 -0600)
8
        * combine.c (simplify_rtx, case TRUNCATE): Respect value of
        TRULY_NOOP_TRUNCATION.

From-SVN: r19204

gcc/combine.c

index c831be1052a84dc78fbc9bb569433707a0607a05..66de17e66889094f0b7230d0d680c43002082148 100644 (file)
@@ -3736,7 +3736,9 @@ simplify_rtx (x, op0_mode, last, in_dest)
       if (GET_MODE_CLASS (mode) == MODE_PARTIAL_INT)
        break;
 
-      if (GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT)
+      if (GET_MODE_BITSIZE (mode) <= HOST_BITS_PER_WIDE_INT
+         && TRULY_NOOP_TRUNCATION (GET_MODE_BITSIZE (mode),
+                                   GET_MODE_BITSIZE (GET_MODE (XEXP (x, 0)))))
        SUBST (XEXP (x, 0),
               force_to_mode (XEXP (x, 0), GET_MODE (XEXP (x, 0)),
                              GET_MODE_MASK (mode), NULL_RTX, 0));