diff options
author | John Carr <jfc@mit.edu> | 1997-12-24 14:39:44 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1997-12-24 14:39:44 -0700 |
commit | 6e73e66606ebe0f3a1827b4401d259fac87fb36e (patch) | |
tree | 16ba7b39b3187d844bce4bf136901fa626027edb /gcc/calls.c | |
parent | 280e521f029df248a105d1bd90c251ef26080f09 (diff) | |
download | gcc-6e73e66606ebe0f3a1827b4401d259fac87fb36e.zip gcc-6e73e66606ebe0f3a1827b4401d259fac87fb36e.tar.gz gcc-6e73e66606ebe0f3a1827b4401d259fac87fb36e.tar.bz2 |
flags.h, [...]: Remove flag_alias_check; optimization is now always enabled.
* flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
optimization is now always enabled.
* calls.c (expand_call): Recognize C++ operator new as malloc-like
function.
* alias.c (memrefs_conflict_p): Eliminate tests now done by
base_alias_check.
(*_dependence): Call canon_rtx before base_alias_check.
(init_alias_once): New function to precompute set of registers which
can hold Pmode function arguments.
* rtl.h: Declare init_alias_once.
* toplev.c (compile_file): Call init_alias_once.
From-SVN: r17226
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index 15a3662..d779462 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -889,11 +889,13 @@ expand_call (exp, target, ignore) else if (tname[0] == 'l' && tname[1] == 'o' && ! strcmp (tname, "longjmp")) is_longjmp = 1; - /* Only recognize malloc when alias analysis is enabled. */ - else if (flag_alias_check - && ((tname[0] == 'm' && ! strcmp(tname + 1, "alloc")) - || (tname[0] == 'c' && ! strcmp(tname + 1, "alloc")) - || (tname[0] == 'r' && ! strcmp(tname + 1, "ealloc")))) + /* XXX should have "malloc" attribute on functions instead + of recognizing them by name. */ + else if (! strcmp (tname, "malloc") + || ! strcmp (tname, "calloc") + || ! strcmp (tname, "realloc") + || ! strcmp (tname, "__builtin_new") + || ! strcmp (tname, "__builtin_vec_new")) is_malloc = 1; } |