diff options
author | Michael Meissner <meissner@linux.ibm.com> | 2020-11-20 18:24:13 -0500 |
---|---|---|
committer | Michael Meissner <meissner@linux.ibm.com> | 2020-11-20 18:24:13 -0500 |
commit | 9bdb34cebcb4f5a9dcebbb5895d1300c2f869cbf (patch) | |
tree | 4a31e6f4992e39921c7ae589015cc18a1d46d3e7 /gcc/config | |
parent | 83a1beee2766f01a1f46f81ed53f679419318942 (diff) | |
download | gcc-9bdb34cebcb4f5a9dcebbb5895d1300c2f869cbf.zip gcc-9bdb34cebcb4f5a9dcebbb5895d1300c2f869cbf.tar.gz gcc-9bdb34cebcb4f5a9dcebbb5895d1300c2f869cbf.tar.bz2 |
Power10: Add missing IEEE 128-bit XSCMP* built-in mappings.
This patch adds support for mapping the scalar_cmp_exp_qp_* built-in functions
to handle arguments that are either TFmode or KFmode, depending on whether long
double uses the IEEE 128-bit representation (TFmode) or the IBM 128-bit
representation (KFmode). This shows up in the float128-cmp2-runnable.c test
when long double uses the IEEE 128-bit representation.
gcc/
2020-11-20 Michael Meissner <meissner@linux.ibm.com>
* config/rs6000/rs6000-call.c (rs6000_expand_builtin): Add missing
XSCMP* cases for IEEE 128-bit long double.
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/rs6000/rs6000-call.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/config/rs6000/rs6000-call.c b/gcc/config/rs6000/rs6000-call.c index 3bd89a7..d619e23 100644 --- a/gcc/config/rs6000/rs6000-call.c +++ b/gcc/config/rs6000/rs6000-call.c @@ -12808,6 +12808,22 @@ rs6000_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED, case CODE_FOR_xsiexpqp_kf: icode = CODE_FOR_xsiexpqp_tf; break; case CODE_FOR_xsiexpqpf_kf: icode = CODE_FOR_xsiexpqpf_tf; break; case CODE_FOR_xststdcqp_kf: icode = CODE_FOR_xststdcqp_tf; break; + + case CODE_FOR_xscmpexpqp_eq_kf: + icode = CODE_FOR_xscmpexpqp_eq_tf; + break; + + case CODE_FOR_xscmpexpqp_lt_kf: + icode = CODE_FOR_xscmpexpqp_lt_tf; + break; + + case CODE_FOR_xscmpexpqp_gt_kf: + icode = CODE_FOR_xscmpexpqp_gt_tf; + break; + + case CODE_FOR_xscmpexpqp_unordered_kf: + icode = CODE_FOR_xscmpexpqp_unordered_tf; + break; } if (TARGET_DEBUG_BUILTIN) |