diff options
author | Jan Hubicka <jh@suse.cz> | 2006-12-11 15:19:11 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2006-12-11 14:19:11 +0000 |
commit | 34d85166bb9c4e6d27e52ab2f70b9130d9e1a47a (patch) | |
tree | 77f1ba617455cbee2a407e6f38b6978a81655463 /gcc/builtins.c | |
parent | fa283935def9d8589b50e651a6a9a3af774fe9a3 (diff) | |
download | gcc-34d85166bb9c4e6d27e52ab2f70b9130d9e1a47a.zip gcc-34d85166bb9c4e6d27e52ab2f70b9130d9e1a47a.tar.gz gcc-34d85166bb9c4e6d27e52ab2f70b9130d9e1a47a.tar.bz2 |
value-prof.c (tree_stringops_transform): New.
* value-prof.c (tree_stringops_transform): New.
(tree_value_profile_transformations): Require count to be non-zero;
call stringop transform; reset stmt BSI after BB changed.
(tree_divmod_fixed_value, tree_mod_pow2): Don't emit unnecesary label.
(interesting_stringop_to_profile_p, tree_stringop_fixed_value): New.
(tree_stringops_values_to_profile): New.
(tree_values_to_profile): Call tree_stringops_values_to_profile.
* tree.h (build_string_literal): Tidy prototype.
(validate_arglist, builtin_memset_read_str, get_pointer_alignment):
Declare.
* builtins.c (validate_arglist, builtin_memset_read_str,
get_pointer_alignment): Export.
From-SVN: r119735
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index 3c7d105..a6f1402 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -72,7 +72,6 @@ tree built_in_decls[(int) END_BUILTINS]; required to implement the function call in all cases). */ tree implicit_built_in_decls[(int) END_BUILTINS]; -static int get_pointer_alignment (tree, unsigned int); static const char *c_getstr (tree); static rtx c_readstr (const char *, enum machine_mode); static int target_char_cast (tree, char *); @@ -118,7 +117,6 @@ static rtx expand_builtin_strcpy (tree, tree, rtx, enum machine_mode); static rtx expand_builtin_stpcpy (tree, rtx, enum machine_mode); static rtx builtin_strncpy_read_str (void *, HOST_WIDE_INT, enum machine_mode); static rtx expand_builtin_strncpy (tree, rtx, enum machine_mode); -static rtx builtin_memset_read_str (void *, HOST_WIDE_INT, enum machine_mode); static rtx builtin_memset_gen_str (void *, HOST_WIDE_INT, enum machine_mode); static rtx expand_builtin_memset (tree, rtx, enum machine_mode, tree); static rtx expand_builtin_bzero (tree); @@ -141,7 +139,6 @@ static tree fold_builtin_classify_type (tree); static tree fold_builtin_strlen (tree); static tree fold_builtin_inf (tree, int); static tree fold_builtin_nan (tree, tree, int); -static int validate_arglist (tree, ...); static bool integer_valued_real_p (tree); static tree fold_trunc_transparent_mathfn (tree, tree); static bool readonly_data_expr (tree); @@ -235,7 +232,7 @@ static bool called_as_built_in (tree node) Otherwise, look at the expression to see if we can do better, i.e., if the expression is actually pointing at an object whose alignment is tighter. */ -static int +int get_pointer_alignment (tree exp, unsigned int max_align) { unsigned int align, inner; @@ -3486,7 +3483,7 @@ expand_builtin_strncpy (tree exp, rtx target, enum machine_mode mode) bytes from constant string DATA + OFFSET and return it as target constant. */ -static rtx +rtx builtin_memset_read_str (void *data, HOST_WIDE_INT offset ATTRIBUTE_UNUSED, enum machine_mode mode) { @@ -9503,7 +9500,7 @@ build_function_call_expr (tree fn, tree arglist) of tree_codes. If the last specifier is a 0, that represents an ellipses, otherwise the last specifier must be a VOID_TYPE. */ -static int +int validate_arglist (tree arglist, ...) { enum tree_code code; |