aboutsummaryrefslogtreecommitdiff
path: root/gcc/passes.c
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2013-08-05 20:04:02 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2013-08-05 20:04:02 +0000
commit6a389ed508822befad6d8b994874b04a521431cc (patch)
tree809dc530fde0246b16ba125f9f342ee515aaefc8 /gcc/passes.c
parentf7695dbf402847104b2330126a3c61fae199cc1a (diff)
downloadgcc-6a389ed508822befad6d8b994874b04a521431cc.zip
gcc-6a389ed508822befad6d8b994874b04a521431cc.tar.gz
gcc-6a389ed508822befad6d8b994874b04a521431cc.tar.bz2
Zero-initialize pass_manager
gcc/ * passes.c (pass_manager::operator new): New. From-SVN: r201506
Diffstat (limited to 'gcc/passes.c')
-rw-r--r--gcc/passes.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/passes.c b/gcc/passes.c
index fcbd630..8efce30 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -1339,6 +1339,13 @@ pass_manager::register_pass (struct register_pass_info *pass_info)
-> all_passes
*/
+void *
+pass_manager::operator new (size_t sz)
+{
+ /* Ensure that all fields of the pass manager are zero-initialized. */
+ return xcalloc (1, sz);
+}
+
pass_manager::pass_manager (context *ctxt)
: all_passes(NULL), all_small_ipa_passes(NULL), all_lowering_passes(NULL),
all_regular_ipa_passes(NULL), all_lto_gen_passes(NULL),