diff options
author | Jan Hubicka <jh@suse.cz> | 2005-03-31 00:28:02 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2005-03-30 22:28:02 +0000 |
commit | cd9c7bd28b72dd5c5a97f40f2f690db21f80c8e2 (patch) | |
tree | ddb809af63fbede05531dda040e688b7ae54b743 /gcc/java | |
parent | d19e9499fc4f7cf1bbcc48a8c7947d5818827a7f (diff) | |
download | gcc-cd9c7bd28b72dd5c5a97f40f2f690db21f80c8e2.zip gcc-cd9c7bd28b72dd5c5a97f40f2f690db21f80c8e2.tar.gz gcc-cd9c7bd28b72dd5c5a97f40f2f690db21f80c8e2.tar.bz2 |
[multiple changes]
2005-03-31 Jan Hubicka <jh@suse.cz>
2004-11-02 Jan Hubicka <jh@suse.cz>
* cgraph.c (cgraph_varpool_node_name): New function.
(dump_cgraph_varpool_node): New function.
(dump_varpool): New function.
* cgraphunit.c (cgraph_optimize): Dump varpool.
2004-10-16 Jan Hubicka <jh@suse.cz>
* cgraph.c (decide_is_variable_needed): New function.
(cgraph_varpool_finalize_decl): Use it.
* cgraphunit.c (cgraph_optimize): Assemble_pending_decls when not doing
unit-at-a-time.
* final.c (output_addr_const): Do not call mark_referenced.
* passes.c (rest_of_decl_compilation): ifdef out DECL_RTL_SET_P hack;
always go via cgraph.
* toplev.c (wrapup_global_declarations): Kill non-unit-at-a-time code.
(check_global_declarations): Ifdef out code clearing DECL_RTL.
* tree-optimize.c (execute_inline): Mark functions called.
* i386.c (output_pic_addr_const): Do not call mark_decl_referenced.
2004-10-11 Jan Hubicka <jh@suse.cz>
* cgraph.c (cgraph_varpool_first_unanalyzed_node): New global voriable
(cgraph_varpool_last_needed_node): New static variable.
(enqueue_needed_varpool_node): Break out from ...; add items to the
end of queue; update first pointers.
(cgraph_varpool_mark_needed_node): ... here.
(cgraph_varpool_finalize_decl): Use enqueue_needed_varpool_node.
(cgraph_varpool_assemble_pending_decls): Move to cgraphunit.c
* cgraph.h (cgraph_varpool_node): Add analyzed field.
(cgraph_varpool_first_unanalyzed_node): Declare.
* cgraphunit.c: Include output.h.
(cgraph_varpool_analyze_pending_decls): New function.
(cgraph_varpool_assemble_pending_decls): Move from cgraph.c; bail out
for errors, analyze pending decls.
(cgraph_finalize_compilation_unit): Only analyze decls.
(cgraph_optimize): Assemble the decls after expanding.
From-SVN: r97287
Diffstat (limited to 'gcc/java')
-rw-r--r-- | gcc/java/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/java/Make-lang.in | 4 | ||||
-rw-r--r-- | gcc/java/class.c | 9 | ||||
-rw-r--r-- | gcc/java/resource.c | 3 |
4 files changed, 19 insertions, 5 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index b46ec5b..3b11a3e 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,11 @@ +2005-03-31 Jan Hubicka <jh@suse.cz> + + * Make-lang.in (class.o, decl.o): Depend on cgraph.h. + * class.c: Include cgraph.h + (make_local_functoin_alias): Mark aslias as needed. + * resource.c: Include cgraph.h + (compile_resource_data): Go via cgraph interface. + 2005-03-30 Ian Lance Taylor <ian@airs.com> * parse.y (maybe_yank_clinit): Don't crash if bbody is NULL. diff --git a/gcc/java/Make-lang.in b/gcc/java/Make-lang.in index a6d2013..face962 100644 --- a/gcc/java/Make-lang.in +++ b/gcc/java/Make-lang.in @@ -299,13 +299,13 @@ java/check-init.o: java/check-init.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \ coretypes.h $(TM_H) toplev.h java/class.o: java/class.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(JAVA_TREE_H) $(RTL_H) java/jcf.h java/parse.h toplev.h output.h $(GGC_H) \ - $(TARGET_H) function.h gt-java-class.h + $(TARGET_H) function.h gt-java-class.h cgraph.h java/constants.o: java/constants.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) gt-java-constants.h java/decl.o: java/decl.c $(CONFIG_H) $(JAVA_TREE_H) $(RTL_H) java/jcf.h \ toplev.h flags.h $(SYSTEM_H) coretypes.h $(TM_H) function.h expr.h \ libfuncs.h except.h java/java-except.h $(GGC_H) real.h gt-java-decl.h \ - target.h + target.h cgraph.h java/except.o: java/except.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h real.h \ $(RTL_H) java/javaop.h java/java-opcodes.h except.h java/java-except.h \ toplev.h $(SYSTEM_H) coretypes.h $(TM_H) function.h diff --git a/gcc/java/class.c b/gcc/java/class.c index 5e2e535..1c7c3ab 100644 --- a/gcc/java/class.c +++ b/gcc/java/class.c @@ -45,6 +45,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "except.h" #include "cgraph.h" #include "tree-iterator.h" +#include "cgraph.h" /* DOS brain-damage */ #ifndef O_BINARY @@ -910,6 +911,7 @@ build_utf8_ref (tree name) layout_decl (decl, 0); pushdecl (decl); rest_of_decl_compilation (decl, global_bindings_p (), 0); + cgraph_varpool_mark_needed_node (cgraph_varpool_node (decl)); utf8_decl_list = decl; make_decl_rtl (decl); ref = build1 (ADDR_EXPR, utf8const_ptr_type, decl); @@ -2436,8 +2438,11 @@ emit_register_classes (tree *list_p) named_section_flags (JCR_SECTION_NAME, SECTION_WRITE); assemble_align (POINTER_SIZE); for (t = registered_class; t; t = TREE_CHAIN (t)) - assemble_integer (XEXP (DECL_RTL (t), 0), - POINTER_SIZE / BITS_PER_UNIT, POINTER_SIZE, 1); + { + mark_decl_referenced (t); + assemble_integer (XEXP (DECL_RTL (t), 0), + POINTER_SIZE / BITS_PER_UNIT, POINTER_SIZE, 1); + } #else /* A target has defined TARGET_USE_JCR_SECTION, but doesn't have a JCR_SECTION_NAME. */ diff --git a/gcc/java/resource.c b/gcc/java/resource.c index 7f7d72a..5f11810 100644 --- a/gcc/java/resource.c +++ b/gcc/java/resource.c @@ -42,6 +42,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "target.h" #include "expr.h" #include "tree-iterator.h" +#include "cgraph.h" /* DOS brain-damage */ #ifndef O_BINARY @@ -93,7 +94,7 @@ compile_resource_data (const char *name, const char *buffer, int length) pushdecl (decl); rest_of_decl_compilation (decl, global_bindings_p (), 0); make_decl_rtl (decl); - assemble_variable (decl, 1, 0, 0); + cgraph_varpool_finalize_decl (decl); resources = tree_cons (NULL_TREE, decl, resources); } |