diff options
author | Ilya Leoshkevich <iii@linux.ibm.com> | 2020-11-24 23:45:59 +0100 |
---|---|---|
committer | Ilya Leoshkevich <iii@linux.ibm.com> | 2020-12-01 12:03:30 +0100 |
commit | 3940daff128a995693b405f47dc706b9622c861b (patch) | |
tree | de52504f33f2fccc221bd94ad8afc1d0cdb780e6 /gcc/cp/parser.c | |
parent | 0fb378761f2c5eb906bf0a9698112dd65d4dc73b (diff) | |
download | gcc-3940daff128a995693b405f47dc706b9622c861b.zip gcc-3940daff128a995693b405f47dc706b9622c861b.tar.gz gcc-3940daff128a995693b405f47dc706b9622c861b.tar.bz2 |
Introduce can_vec_cmp_compare_p
This is the same as dcd2ca63ec5c ("Introduce can_vcond_compare_p
function"), but for vec_cmp. The reason it's needed is that since
5d9ade39b872 ("IBM Z: Fix PR97326: Enable fp compares in vec_cmp")
and 4acba4859013 ("IBM Z: Restrict vec_cmp<m><n> on z13") s390's vec_cmp
expander advertises that it supports floating point comparisons except
signaling ones on z13, but the common code ignores the latter
restriction.
gcc/ChangeLog:
2020-11-25 Ilya Leoshkevich <iii@linux.ibm.com>
* optabs-tree.c (vec_cmp_icode_p): New function.
(vec_cmp_eq_icode_p): New function.
(expand_vec_cmp_expr_p): Use vec_cmp_icode_p and
vec_cmp_eq_icode_p.
(vcond_icode_p): Use get_rtx_code_1, just to be uniform with
vec_cmp_icode_p.
* optabs.c (unsigned_optab_p): New function.
(insn_predicate_matches_p): New function.
(can_vec_cmp_compare_p): New function.
(can_vcond_compare_p): Use unsigned_optab_p and
insn_predicate_matches_p.
(get_rtx_code): Use get_rtx_code_1.
(get_rtx_code_1): Version of get_rtx_code that returns UNKNOWN
instead of asserting.
* optabs.h (can_vec_cmp_compare_p): New function.
(get_rtx_code_1): New function.
Diffstat (limited to 'gcc/cp/parser.c')
0 files changed, 0 insertions, 0 deletions