diff options
author | Uros Bizjak <uros@kss-loka.si> | 2004-02-12 00:39:41 +0100 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2004-02-11 23:39:41 +0000 |
commit | 3b8e0c9129b0ed3fe2e4aa5bc466df5348e2d5fd (patch) | |
tree | 159c66f75d67ab22ee9d79a474ed9f6f66eab4ba /gcc/genopinit.c | |
parent | a6abdce327180878f4753126647b351026b2dcd0 (diff) | |
download | gcc-3b8e0c9129b0ed3fe2e4aa5bc466df5348e2d5fd.zip gcc-3b8e0c9129b0ed3fe2e4aa5bc466df5348e2d5fd.tar.gz gcc-3b8e0c9129b0ed3fe2e4aa5bc466df5348e2d5fd.tar.bz2 |
optabs.h (enum optab_index): Add new OTI_log10 and OTI_log2.
2004-02-11 Uros Bizjak <uros@kss-loka.si>
* optabs.h (enum optab_index): Add new OTI_log10 and OTI_log2.
(log10_optab, log2_optab): Define corresponding macros.
* optabs.c (init_optabs): Initialize log10_optab and log2_optab.
* genopinit.c (optabs): Implement log10_optab and log2_optab
using log10?f2 and log2?f2 patterns.
* builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LOG10{,F,L}
using log10_optab, and BUILT_IN_LOG2{,F,L} using log2_optab.
(expand_builtin): Expand BUILT_IN_LOG10{,F,L} and BUILT_IN_LOG2{,F,L}
using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
* config/i386/i386.md (log10sf2, log10df2, log10xf2, log2sf2,
log2df2, log2xf2): New patterns to implement log10, log10f, log10l,
log2, log2f and log2l built-ins as inline x87 intrinsics.
* gcc.dg/builtins-33.c: New test.
From-SVN: r77675
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 5e1599a..cbdc3dd 100644 --- a/gcc/genopinit.c +++ b/gcc/genopinit.c @@ -126,6 +126,8 @@ static const char * const optabs[] = "cos_optab->handlers[$A].insn_code = CODE_FOR_$(cos$a2$)", "exp_optab->handlers[$A].insn_code = CODE_FOR_$(exp$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$)", "tan_optab->handlers[$A].insn_code = CODE_FOR_$(tan$a2$)", "atan_optab->handlers[$A].insn_code = CODE_FOR_$(atan$a2$)", "strlen_optab->handlers[$A].insn_code = CODE_FOR_$(strlen$a$)", |