aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1995-10-03 13:58:18 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1995-10-03 13:58:18 -0400
commit15448afcc8d3fb975a4f1b2dec1e2a5f00279ab1 (patch)
tree4a1f7fafeadc37860167f15aa725808f6515c6c2 /gcc
parent15a7a8ec1ca0f604648b545b6603d3eae9f8185f (diff)
downloadgcc-15448afcc8d3fb975a4f1b2dec1e2a5f00279ab1.zip
gcc-15448afcc8d3fb975a4f1b2dec1e2a5f00279ab1.tar.gz
gcc-15448afcc8d3fb975a4f1b2dec1e2a5f00279ab1.tar.bz2
(simplify_rtx): In code that attempts to simplify conditional expressions...
(simplify_rtx): In code that attempts to simplify conditional expressions, if the result is an NE around another comparison, return the original expression. From-SVN: r10428
Diffstat (limited to 'gcc')
-rw-r--r--gcc/combine.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index aa30445..8e46de0 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -3057,6 +3057,9 @@ simplify_rtx (x, op0_mode, last, in_dest)
rtx cop1 = const0_rtx;
enum rtx_code cond_code = simplify_comparison (NE, &cond, &cop1);
+ if (cond_code == NE && GET_RTX_CLASS (GET_CODE (cond)) == '<')
+ return x;
+
/* Simplify the alternative arms; this may collapse the true and
false arms to store-flag values. */
true = subst (true, pc_rtx, pc_rtx, 0, 0);