diff options
| author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-01-07 13:45:33 +0000 |
|---|---|---|
| committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-01-07 13:45:33 +0000 |
| commit | 5aa3f5e2a0c432ca6625a2c528a836b1148fe046 (patch) | |
| tree | 66670355a53f26a7a08ae9ce8c0d1692fa530a98 | |
| parent | 79b403d418ab3d320ab9fde66539fd42b76c848c (diff) | |
| download | ppe42-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/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/jump.c | 22 |
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; |

