diff options
author | Uros Bizjak <uros@kss-loka.si> | 2004-03-10 23:36:22 +0100 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2004-03-10 22:36:22 +0000 |
commit | a251102ea16801ffecedfd591603dbaf90a42337 (patch) | |
tree | 48496cf34ecae86ed12d904899347666a9abbfb8 /gcc/genopinit.c | |
parent | 5199e2c6f14c3707ebc484f23bbc845af973f243 (diff) | |
download | gcc-a251102ea16801ffecedfd591603dbaf90a42337.zip gcc-a251102ea16801ffecedfd591603dbaf90a42337.tar.gz gcc-a251102ea16801ffecedfd591603dbaf90a42337.tar.bz2 |
optabs.h (enum optab_index): Add new OTI_exp10 and OTI_exp2.
2004-03-10 Uros Bizjak <uros@kss-loka.si>
* optabs.h (enum optab_index): Add new OTI_exp10 and OTI_exp2.
(exp10_optab, exp2_optab): Define corresponding macros.
* optabs.c (init_optabs): Initialize exp10_optab and exp2_optab.
* genopinit.c (optabs): Implement exp10_optab and exp2_optab
using exp10?f2 and exp2?f2 patterns.
* builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP10{,F,L}
using exp10_optab, and BUILT_IN_EXP2{,F,L} using exp2_optab.
(expand_builtin): Expand BUILT_IN_EXP10{,F,L} and BUILT_IN_EXP2{,F,L}
using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
* config/i386/i386.md (exp10sf2, exp10df2, exp10xf2, exp2sf2,
exp2df2, exp2xf2): New patterns to implement exp10, exp10f, exp10l,
exp2, exp2f and exp2l built-ins as inline x87 intrinsics.
* gcc.dg/builtins-34.c: New test.
From-SVN: r79279
Diffstat (limited to 'gcc/genopinit.c')
-rw-r--r-- | gcc/genopinit.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/genopinit.c b/gcc/genopinit.c index 52a224e..b3b6518 100644 --- a/gcc/genopinit.c +++ b/gcc/genopinit.c @@ -125,6 +125,8 @@ static const char * const optabs[] = "sin_optab->handlers[$A].insn_code = CODE_FOR_$(sin$a2$)", "cos_optab->handlers[$A].insn_code = CODE_FOR_$(cos$a2$)", "exp_optab->handlers[$A].insn_code = CODE_FOR_$(exp$a2$)", + "exp10_optab->handlers[$A].insn_code = CODE_FOR_$(exp10$a2$)", + "exp2_optab->handlers[$A].insn_code = CODE_FOR_$(exp2$a2$)", "log_optab->handlers[$A].insn_code = CODE_FOR_$(log$a2$)", "log10_optab->handlers[$A].insn_code = CODE_FOR_$(log10$a2$)", "log2_optab->handlers[$A].insn_code = CODE_FOR_$(log2$a2$)", |