cse.c (simplify_ternary_operation): Don't try to simplify IF_THEN_ELSE expressions...
authorMichael Tiemann <michael@tiemann.org>
Sun, 25 Jan 1998 11:12:26 +0000 (11:12 +0000)
committerJeff Law <law@gcc.gnu.org>
Sun, 25 Jan 1998 11:12:26 +0000 (04:12 -0700)
        * cse.c (simplify_ternary_operation): Don't try to simplify
        IF_THEN_ELSE expressions (created by combine) that don't use
        relational operators.

From-SVN: r17472

gcc/ChangeLog
gcc/cse.c

index 1beac6c82b6d29a9e671852be6cad33b56fd946c..1bf12bd5667f52cc92b016df697059de83d64af6 100644 (file)
@@ -1,3 +1,9 @@
+Sun Jan 25 12:13:47 1998  Michael Tiemann  <michael@tiemann.org>
+
+       * cse.c (simplify_ternary_operation): Don't try to simplify
+       IF_THEN_ELSE expressions (created by combine) that don't use
+       relational operators.
+
 Fri Jan 23 22:48:24 1998  Jeffrey A Law  (law@cygnus.com)
 
        * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
index 3c27387562a7924af18e5e0e9075ad88512fc1e3..22d6b8b0976cd93e82337c69c97f0793969b6deb 100644 (file)
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -4713,7 +4713,7 @@ simplify_ternary_operation (code, mode, op0_mode, op0, op1, op2)
          && rtx_equal_p (XEXP (op0, 1), op1)
          && rtx_equal_p (XEXP (op0, 0), op2))
        return op2;
-      else if (! side_effects_p (op0))
+      else if (GET_RTX_CLASS (GET_CODE (op0)) == '<' && ! side_effects_p (op0))
        {
          rtx temp;
          temp = simplify_relational_operation (GET_CODE (op0), op0_mode,