aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-09-04 20:49:52 -0700
committerMark Mitchell <mmitchel@gcc.gnu.org>1999-09-05 03:49:52 +0000
commitd7db66465081020447daa7e7feec774440d00f96 (patch)
tree2c396fe4710d0e39b742d734bf2a7abf16783c92 /gcc/expr.c
parentb224278904bb35e3aa54856b124e53fd3c0b3065 (diff)
downloadgcc-d7db66465081020447daa7e7feec774440d00f96.zip
gcc-d7db66465081020447daa7e7feec774440d00f96.tar.gz
gcc-d7db66465081020447daa7e7feec774440d00f96.tar.bz2
Makefile.in (stor-layout.o): Depend on ggc.h.
* Makefile.in (stor-layout.o): Depend on ggc.h. (expr.o): Depend on ggc.h. (profile.o): Depend on ggc.h. (stor-layout.o): Depend on ggc.h. * emit-rtl.c (init_emit_once): Add gc roots. * expr.c: Include ggc.h. (emit_block_move): Add gc roots. (clear_storage): Likewise. * expr.h (init_stor_layout_once): New function. * profile.c: Include ggc.h. (init_arc_profiler): profiler_label is a root. * scan.c (make_sstring_space): Trust xrealloc to function correctly with first parameter NULL. * stor-layout.c: Include ggc.h. (set_sizetype): Add gc root. (init_stor_layout_once): New function. * toplev.c (compile_file): Call it. Co-Authored-By: Bernd Schmidt <bernds@cygnus.co.uk> Co-Authored-By: Mark Mitchell <mark@codesourcery.com> From-SVN: r29122
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 967c3e7..315945a 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -40,6 +40,7 @@ Boston, MA 02111-1307, USA. */
#include "typeclass.h"
#include "defaults.h"
#include "toplev.h"
+#include "ggc.h"
#define CEIL(x,y) (((x) + (y) - 1) / (y))
@@ -1677,6 +1678,7 @@ emit_block_move (x, y, size, align)
fntype = build_pointer_type (void_type_node);
fntype = build_function_type (fntype, NULL_TREE);
fn = build_decl (FUNCTION_DECL, fn, fntype);
+ ggc_add_tree_root (&fn, 1);
DECL_EXTERNAL (fn) = 1;
TREE_PUBLIC (fn) = 1;
DECL_ARTIFICIAL (fn) = 1;
@@ -2451,6 +2453,7 @@ clear_storage (object, size, align)
fntype = build_pointer_type (void_type_node);
fntype = build_function_type (fntype, NULL_TREE);
fn = build_decl (FUNCTION_DECL, fn, fntype);
+ ggc_add_tree_root (&fn, 1);
DECL_EXTERNAL (fn) = 1;
TREE_PUBLIC (fn) = 1;
DECL_ARTIFICIAL (fn) = 1;