$subject - it's only used from the lto frontend.

LTO bootstrap running on x86_64-unknown-linux-gnu.

Richard.

2013-09-05  Richard Biener  <rguent...@suse.de>

        * lto-streamer.h (lto_global_var_decls): Remove.
        * Makefile.in (OBJS): Remove lto-symtab.o.
        (lto-symtab.o): Remove.
        (GTFILES): Remove lto-symtab.c
        * lto-symtab.c: Move to lto/

        lto/
        * lto-symtab.c: Move from gcc/
        * lto.h: Include vec.h.
        (lto_global_var_decls): Declare.
        * Make-lang.in (LTO_OBJS): Add lto-symtab.o.
        (lto-symtab.o): Add.
        * config-lang.in (gtfiles): Add lto-symtab.c.

Index: gcc/lto-streamer.h
===================================================================
--- gcc/lto-streamer.h  (revision 202275)
+++ gcc/lto-streamer.h  (working copy)
@@ -903,7 +903,6 @@ lto_symtab_encoder_t compute_ltrans_boun
 extern void lto_symtab_merge_decls (void);
 extern void lto_symtab_merge_symbols (void);
 extern tree lto_symtab_prevailing_decl (tree decl);
-extern GTY(()) vec<tree, va_gc> *lto_global_var_decls;
 
 
 /* In lto-opts.c.  */
Index: gcc/Makefile.in
===================================================================
--- gcc/Makefile.in     (revision 202275)
+++ gcc/Makefile.in     (working copy)
@@ -1320,7 +1320,6 @@ OBJS = \
        lto-streamer-out.o \
        lto-section-in.o \
        lto-section-out.o \
-       lto-symtab.o \
        lto-opts.o \
        lto-compress.o \
        mcf.o \
@@ -2220,9 +2220,6 @@ lto-section-out.o : lto-section-out.c $(
    $(CGRAPH_H) $(FUNCTION_H) $(GGC_H) $(EXCEPT_H) pointer-set.h \
    $(BITMAP_H) langhooks.h $(LTO_STREAMER_H) lto-compress.h \
    $(DATA_STREAMER_H)
-lto-symtab.o: lto-symtab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
-   $(TREE_H) $(GIMPLE_H) $(GGC_H) $(HASHTAB_H) \
-   $(LTO_STREAMER_H) $(LINKER_PLUGIN_API_H)
 lto-opts.o: lto-opts.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TREE_H) \
    $(HASHTAB_H) $(GGC_H) $(BITMAP_H) $(FLAGS_H) $(OPTS_H) $(OPTIONS_H) \
    $(COMMON_TARGET_H) $(DIAGNOSTIC_H) $(LTO_STREAMER_H)
@@ -3839,7 +3843,6 @@ GTFILES = $(CPP_ID_DATA_H) $(srcdir)/inp
   $(srcdir)/cgraphclones.c \
   $(srcdir)/tree-ssa-propagate.c \
   $(srcdir)/tree-phinodes.c \
-  $(srcdir)/lto-symtab.c \
   $(srcdir)/tree-ssa-alias.h \
   $(srcdir)/ipa-prop.h \
   $(srcdir)/trans-mem.c \
Index: gcc/lto/lto.h
===================================================================
--- gcc/lto/lto.h       (revision 202275)
+++ gcc/lto/lto.h       (working copy)
@@ -22,6 +22,7 @@ along with GCC; see the file COPYING3.
 #define LTO_H
 
 #include "hashtab.h"
+#include "vec.h"
 
 /* A file.  */
 typedef struct lto_file_struct
@@ -40,6 +41,9 @@ extern tree lto_eh_personality (void);
 extern void lto_main (void);
 extern void lto_read_all_file_options (void);
 
+/* In lto-symtab.c  */
+extern GTY(()) vec<tree, va_gc> *lto_global_var_decls;
+
 /* In lto-elf.c or lto-coff.c  */
 extern lto_file *lto_obj_file_open (const char *filename, bool writable);
 extern void lto_obj_file_close (lto_file *file);
Index: gcc/lto/Make-lang.in
===================================================================
--- gcc/lto/Make-lang.in        (revision 202275)
+++ gcc/lto/Make-lang.in        (working copy)
@@ -22,7 +22,7 @@
 # The name of the LTO compiler.
 LTO_EXE = lto1$(exeext)
 # The LTO-specific object files inclued in $(LTO_EXE).
-LTO_OBJS = lto/lto-lang.o lto/lto.o lto/lto-object.o attribs.o 
lto/lto-partition.o
+LTO_OBJS = lto/lto-lang.o lto/lto.o lto/lto-object.o attribs.o 
lto/lto-partition.o lto/lto-symtab.o
 LTO_H = lto/lto.h $(HASHTAB_H)
 LINKER_PLUGIN_API_H = $(srcdir)/../include/plugin-api.h
 LTO_TREE_H = lto/lto-tree.h $(LINKER_PLUGIN_API_H)
@@ -95,6 +95,9 @@ lto/lto-partition.o: lto/lto-partition.c
 lto/lto-object.o: lto/lto-object.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
        $(DIAGNOSTIC_CORE_H) $(LTO_H) $(TM_H) $(LTO_STREAMER_H) \
        ../include/simple-object.h
+lto/lto-symtab.o: lto/lto-symtab.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
+       $(TREE_H) $(GIMPLE_H) $(GGC_H) $(HASHTAB_H) \
+       $(LTO_STREAMER_H) $(LINKER_PLUGIN_API_H)
 
 # LTO testing is done as part of C/C++/Fortran etc. testing.
 check-lto:
Index: gcc/lto/config-lang.in
===================================================================
--- gcc/lto/config-lang.in      (revision 202275)
+++ gcc/lto/config-lang.in      (working copy)
@@ -21,7 +21,7 @@ language="lto"
 compilers="lto1\$(exeext)"
 stagestuff="lto1\$(exeext)"
 
-gtfiles="\$(srcdir)/lto/lto-tree.h \$(srcdir)/lto/lto-lang.c 
\$(srcdir)/lto/lto.c"
+gtfiles="\$(srcdir)/lto/lto-tree.h \$(srcdir)/lto/lto-lang.c 
\$(srcdir)/lto/lto.c \$(srcdir)/lto/lto-symtab.c"
 
 # LTO is a special front end.  From a user's perspective it is not
 # really a language, but a middle end feature.  However, the GIMPLE

Reply via email to