diff options
author | Kewen Lin <linkw@linux.ibm.com> | 2024-07-17 00:19:00 -0500 |
---|---|---|
committer | Kewen Lin <linkw@gcc.gnu.org> | 2024-07-17 00:19:00 -0500 |
commit | b5c813ed6035cf6ef831927e66e184a5847afbe6 (patch) | |
tree | 955fbbf8ac5d6dce764ccd6d8a6ac4ab1e665536 | |
parent | fa86f510f51e6d940a28ea997fca3a6e3f50b4d3 (diff) | |
download | gcc-b5c813ed6035cf6ef831927e66e184a5847afbe6.zip gcc-b5c813ed6035cf6ef831927e66e184a5847afbe6.tar.gz gcc-b5c813ed6035cf6ef831927e66e184a5847afbe6.tar.bz2 |
tree: Remove KFmode workaround [PR112993]
The fix for PR112993 makes KFmode have 128 bit mode precision,
we don't need this workaround to fix up the type precision any
more, and just go with mode precision. So this patch is to
remove KFmode workaround.
PR target/112993
gcc/ChangeLog:
* tree.cc (build_common_tree_nodes): Drop the workaround for rs6000
KFmode precision adjustment.
-rw-r--r-- | gcc/tree.cc | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/gcc/tree.cc b/gcc/tree.cc index 2d2d5b6..a2d4316 100644 --- a/gcc/tree.cc +++ b/gcc/tree.cc @@ -9633,15 +9633,6 @@ build_common_tree_nodes (bool signed_char) if (!targetm.floatn_mode (n, extended).exists (&mode)) continue; int precision = GET_MODE_PRECISION (mode); - /* Work around the rs6000 KFmode having precision 113 not - 128. */ - const struct real_format *fmt = REAL_MODE_FORMAT (mode); - gcc_assert (fmt->b == 2 && fmt->emin + fmt->emax == 3); - int min_precision = fmt->p + ceil_log2 (fmt->emax - fmt->emin); - if (!extended) - gcc_assert (min_precision == n); - if (precision < min_precision) - precision = min_precision; FLOATN_NX_TYPE_NODE (i) = make_node (REAL_TYPE); TYPE_PRECISION (FLOATN_NX_TYPE_NODE (i)) = precision; layout_type (FLOATN_NX_TYPE_NODE (i)); |