From 21e01bf10d229bdd98b45464021c10fb510e7348 Mon Sep 17 00:00:00 2001 From: Uros Bizjak Date: Mon, 21 Mar 2005 15:42:48 +0100 Subject: optabs.h (enum optab_index): Add new OTI_lrint and OTI_llrint. * optabs.h (enum optab_index): Add new OTI_lrint and OTI_llrint. (lrint_optab, llrint_optab): Define corresponding macros. * optabs.c (init_optabs): Initialize lrint_optab and llrint_optab. * genopinit.c (optabs): Implement lrint_optab using lrintsi2 pattern and llrint_optab using llrintdi2 patterns. * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LRINT{,F,L} using lrint_optab and BUILT_IN_LLRINT{,F,L} using llrint_optab. (expand_builtin): Expand BUILT_IN_LRINT{,F,L} and BUILT_IN_LLRINT{,F,L} using expand_builtin_mathfn if flag_unsafe_math_optimizations is set. testsuite: * gcc.dg/builtins-46.c: Also check lrint* and llrint*. From-SVN: r96802 --- gcc/optabs.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc/optabs.h') diff --git a/gcc/optabs.h b/gcc/optabs.h index b9aa6ac..9288564 100644 --- a/gcc/optabs.h +++ b/gcc/optabs.h @@ -191,6 +191,8 @@ enum optab_index OTI_round, OTI_nearbyint, OTI_rint, + OTI_lrint, + OTI_llrint, /* Tangent */ OTI_tan, /* Inverse tangent */ @@ -317,6 +319,8 @@ extern GTY(()) optab optab_table[OTI_MAX]; #define round_optab (optab_table[OTI_round]) #define nearbyint_optab (optab_table[OTI_nearbyint]) #define rint_optab (optab_table[OTI_rint]) +#define lrint_optab (optab_table[OTI_lrint]) +#define llrint_optab (optab_table[OTI_llrint]) #define tan_optab (optab_table[OTI_tan]) #define atan_optab (optab_table[OTI_atan]) #define copysign_optab (optab_table[OTI_copysign]) -- cgit v1.1