[gcc/devel/ranger] amdgcn: Support unordered floating-point comparison operators
Aldy Hernandez
aldyh@gcc.gnu.org
Wed Jun 17 20:09:30 GMT 2020
https://gcc.gnu.org/g:1dff18a181b02355cbea5ebcc2c5d0b92ec64d0c
commit 1dff18a181b02355cbea5ebcc2c5d0b92ec64d0c
Author: Kwok Cheung Yeung <kcy@codesourcery.com>
Date: Fri Apr 3 03:03:35 2020 -0700
amdgcn: Support unordered floating-point comparison operators
2020-04-03 Kwok Cheung Yeung <kcy@codesourcery.com>
gcc/
* config/gcn/gcn.c (print_operand): Handle unordered comparison
operators.
* config/gcn/predicates.md (gcn_fp_compare_operator): Add unordered
comparison operators.
Diff:
---
gcc/ChangeLog | 7 +++++++
gcc/config/gcn/gcn.c | 15 +++++++++++++++
gcc/config/gcn/predicates.md | 2 +-
3 files changed, 23 insertions(+), 1 deletion(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 472ce173ed2..11510ac9411 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2020-04-03 Kwok Cheung Yeung <kcy@codesourcery.com>
+
+ * config/gcn/gcn.c (print_operand): Handle unordered comparison
+ operators.
+ * config/gcn/predicates.md (gcn_fp_compare_operator): Add unordered
+ comparison operators.
+
2020-04-03 Kewen Lin <linkw@gcc.gnu.org>
PR tree-optimization/94443
diff --git a/gcc/config/gcn/gcn.c b/gcc/config/gcn/gcn.c
index 12438cf6eb4..38b5b98c7c8 100644
--- a/gcc/config/gcn/gcn.c
+++ b/gcc/config/gcn/gcn.c
@@ -6007,6 +6007,21 @@ print_operand (FILE *file, rtx x, int code)
case UNORDERED:
s = "_u_";
break;
+ case UNEQ:
+ s = "_nlg_";
+ break;
+ case UNGE:
+ s = "_nlt_";
+ break;
+ case UNGT:
+ s = "_nle_";
+ break;
+ case UNLE:
+ s = "_ngt_";
+ break;
+ case UNLT:
+ s = "_nge_";
+ break;
case LTGT:
s = "_lg_";
break;
diff --git a/gcc/config/gcn/predicates.md b/gcc/config/gcn/predicates.md
index 7bf763a4ba5..91e5ca1111c 100644
--- a/gcc/config/gcn/predicates.md
+++ b/gcc/config/gcn/predicates.md
@@ -165,7 +165,7 @@
(match_code "eq,ne,gt,ge,lt,le,gtu,geu,ltu,leu"))
(define_predicate "gcn_fp_compare_operator"
- (match_code "eq,ne,gt,ge,lt,le,gtu,geu,ltu,leu,ordered,unordered,ltgt"))
+ (match_code "eq,ne,gt,ge,lt,le,gtu,geu,ltu,leu,ordered,unordered,uneq,unge,ungt,unle,unlt,ltgt"))
(define_predicate "unary_operator"
(match_code "not,popcount"))
More information about the Gcc-cvs
mailing list