aboutsummaryrefslogtreecommitdiff
path: root/gcc/optabs.h
diff options
context:
space:
mode:
authorUros Bizjak <uros@kss-loka.si>2005-04-11 08:16:39 +0200
committerUros Bizjak <uros@gcc.gnu.org>2005-04-11 08:16:39 +0200
commitf94b16611c30340d61468354814e63916bd08303 (patch)
tree4f8876fc98292146b6f2b8bf4a5835e8ae42a92c /gcc/optabs.h
parent0dbca30748132482886593434b14d7242cdee9ad (diff)
downloadgcc-f94b16611c30340d61468354814e63916bd08303.zip
gcc-f94b16611c30340d61468354814e63916bd08303.tar.gz
gcc-f94b16611c30340d61468354814e63916bd08303.tar.bz2
* builtins.def (BUILT_IN_LCEIL, BUILT_IN_LCEILF, BUILT_IN_LCEILL)
(BUILT_IN_LLCEIL, BUILT_IN_LLCEILF, BUILT_IN_LLCEILL): New. * optabs.h (enum optab_index): Add new OTI_lceil. (lceil_optab): Define corresponding macro. * optabs.c (init_optabs): Initialize lceil_optab. * genopinit.c (optabs): Implement lceil_optab using lceilsi2 and lceildi2 patterns. * builtins.c (expand_builtin_int_roundingfn): Handle BUILT_IN_LCEIL{,F,L} and BUILT_IN_LLCEIL{,F,L}. (fold_builtin_int_roundingfn): Handle BUILT_IN_LCEIL{,F,L} and BUILT_IN_LLCEIL{,F,L}. (fold_builtin_1): Fold BUILT_IN_LCEIL{,F,L} and BUILT_IN_LLCEIL{,F,L} using fold_builtin_int_roundingfn. (mathfn_built_in): Handle BUILT_IN LCEIL and BUILT_IN_LLCEIL. (expand_builtin): Expand BUILT_IN_LCEIL{,F,L} and BUILT_IN_LLCEIL{,F,L} using expand_builtin_int_roundingfn. * convert.c (convert_to_integer): Convert (long int)ceil{,f,l}, into lceil built-in function and (long long int)ceil{,f,l} into llceil built-in function. * fold-const.c (tree_expr_nonnegative_p): Add BUILT_IN_LCEIL and BUILT_IN_LLCEIL. testsuite: * gcc.dg/builtins-53.c: Also check (int)ceil* and (long long int)ceil*. From-SVN: r97964
Diffstat (limited to 'gcc/optabs.h')
-rw-r--r--gcc/optabs.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/optabs.h b/gcc/optabs.h
index a1c2d37..dea332e 100644
--- a/gcc/optabs.h
+++ b/gcc/optabs.h
@@ -188,6 +188,7 @@ enum optab_index
OTI_floor,
OTI_lfloor,
OTI_ceil,
+ OTI_lceil,
OTI_btrunc,
OTI_round,
OTI_nearbyint,
@@ -316,6 +317,7 @@ extern GTY(()) optab optab_table[OTI_MAX];
#define floor_optab (optab_table[OTI_floor])
#define lfloor_optab (optab_table[OTI_lfloor])
#define ceil_optab (optab_table[OTI_ceil])
+#define lceil_optab (optab_table[OTI_lceil])
#define btrunc_optab (optab_table[OTI_btrunc])
#define round_optab (optab_table[OTI_round])
#define nearbyint_optab (optab_table[OTI_nearbyint])