summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-01-07 13:45:33 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2001-01-07 13:45:33 +0000
commit5aa3f5e2a0c432ca6625a2c528a836b1148fe046 (patch)
tree66670355a53f26a7a08ae9ce8c0d1692fa530a98
parent79b403d418ab3d320ab9fde66539fd42b76c848c (diff)
downloadppe42-gcc-5aa3f5e2a0c432ca6625a2c528a836b1148fe046.tar.gz
ppe42-gcc-5aa3f5e2a0c432ca6625a2c528a836b1148fe046.zip
* jump.c (comparison_dominates_p): Support unordered compares.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38776 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/jump.c22
2 files changed, 23 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 14df3834582..2749261bebe 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Sun Jan 7 14:44:19 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (comparison_dominates_p): Support unordered compares.
+
Sun Jan 7 14:39:07 MET 2001 Jan Hubicka <jh@suse.cz>
* simplify-rtx.c (simplify_relational_operation): Always simplify
diff --git a/gcc/jump.c b/gcc/jump.c
index 032172d3907..2dae0e53333 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -2004,19 +2004,34 @@ comparison_dominates_p (code1, code2)
switch (code1)
{
+ case UNEQ:
+ if (code2 == UNLE || code2 == UNGE)
+ return 1;
+ break;
+
case EQ:
if (code2 == LE || code2 == LEU || code2 == GE || code2 == GEU
|| code2 == ORDERED)
return 1;
break;
+ case UNLT:
+ if (code2 == UNLE || code2 == NE)
+ return 1;
+ break;
+
case LT:
- if (code2 == LE || code2 == NE || code2 == ORDERED)
+ if (code2 == LE || code2 == NE || code2 == ORDERED || code2 == LTGT)
+ return 1;
+ break;
+
+ case UNGT:
+ if (code2 == UNGE || code2 == NE)
return 1;
break;
case GT:
- if (code2 == GE || code2 == NE || code2 == ORDERED)
+ if (code2 == GE || code2 == NE || code2 == ORDERED || code2 == LTGT)
return 1;
break;
@@ -2042,7 +2057,8 @@ comparison_dominates_p (code1, code2)
break;
case UNORDERED:
- if (code2 == NE)
+ if (code2 == NE || code2 == UNEQ || code2 == UNLE || code2 == UNLT
+ || code2 == UNGE || code2 == UNGT)
return 1;
break;
OpenPOWER on IntegriCloud