builtins.c (fold_builtin_logarithm): Take decomposed arguments of CALL_EXPR.

* builtins.c (fold_builtin_logarithm): Take decomposed
	arguments of CALL_EXPR.
	(fold_builtin_1): Update a call to fold_builtin_logarithm.

From-SVN: r96342
This commit is contained in:
Kazu Hirata 2005-03-12 16:14:42 +00:00 committed by Kazu Hirata
parent 7cfb2e1049
commit fba0892110
2 changed files with 9 additions and 7 deletions

View File

@ -19,6 +19,10 @@
arguments of CALL_EXPR.
(fold_builtin_1): Update a call to fold_builtin_exponent.
* builtins.c (fold_builtin_logarithm): Take decomposed
arguments of CALL_EXPR.
(fold_builtin_1): Update a call to fold_builtin_logarithm.
2005-03-12 Geoffrey Keating <geoffk@apple.com>
* c-lex.c (c_lex_with_flags): Add parameter to call to

View File

@ -6783,13 +6783,11 @@ real_dconstp (tree expr, const REAL_VALUE_TYPE *value)
function. VALUE is the base of the logN function. */
static tree
fold_builtin_logarithm (tree exp, const REAL_VALUE_TYPE *value)
fold_builtin_logarithm (tree fndecl, tree arglist,
const REAL_VALUE_TYPE *value)
{
tree arglist = TREE_OPERAND (exp, 1);
if (validate_arglist (arglist, REAL_TYPE, VOID_TYPE))
{
tree fndecl = get_callee_fndecl (exp);
tree type = TREE_TYPE (TREE_TYPE (fndecl));
tree arg = TREE_VALUE (arglist);
const enum built_in_function fcode = builtin_mathfn_code (arg);
@ -8122,17 +8120,17 @@ fold_builtin_1 (tree exp, bool ignore)
case BUILT_IN_LOG:
case BUILT_IN_LOGF:
case BUILT_IN_LOGL:
return fold_builtin_logarithm (exp, &dconste);
return fold_builtin_logarithm (fndecl, arglist, &dconste);
case BUILT_IN_LOG2:
case BUILT_IN_LOG2F:
case BUILT_IN_LOG2L:
return fold_builtin_logarithm (exp, &dconst2);
return fold_builtin_logarithm (fndecl, arglist, &dconst2);
case BUILT_IN_LOG10:
case BUILT_IN_LOG10F:
case BUILT_IN_LOG10L:
return fold_builtin_logarithm (exp, &dconst10);
return fold_builtin_logarithm (fndecl, arglist, &dconst10);
case BUILT_IN_TAN:
case BUILT_IN_TANF: