diff options
author | Jeff Sturm <jsturm@one-point.com> | 2003-09-03 13:44:43 +0000 |
---|---|---|
committer | Jeff Sturm <jsturm@gcc.gnu.org> | 2003-09-03 13:44:43 +0000 |
commit | 916b57cedabb2d80ac3e947a682efa3bce15cf4e (patch) | |
tree | 67c1212abb34f567ee45068cdd132021ed676e26 /gcc/java/jcf-parse.c | |
parent | e71d3aae3f8c92f18732e8cca0d07e0b2c31f814 (diff) | |
download | gcc-916b57cedabb2d80ac3e947a682efa3bce15cf4e.zip gcc-916b57cedabb2d80ac3e947a682efa3bce15cf4e.tar.gz gcc-916b57cedabb2d80ac3e947a682efa3bce15cf4e.tar.bz2 |
decl.c (java_expand_body): New function.
* decl.c (java_expand_body): New function.
* expr.c (build_class_init): Set DECL_IGNORED_P.
* java-tree.h (start_complete_expand_method,
java_expand_body): Declare.
* jcf-parse.c (cgraph.h): Include.
(java_parse_file): Handle flag_unit_at_a_time.
* lang.c (LANG_HOOKS_TREE_INLINING_START_INLINING,
LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Define.
(java_estimate_num_insns): Use walk_tree_without_duplicates.
(java_start_inlining): New function.
* parse.h (java_finish_classes): Declare.
* parse.y: Include cgraph.h.
(block): Don't special-case empty block production.
(craft_constructor): Set DECL_INLINE.
(source_end_java_method): Handle flag_unit_at_a_time.
Replace inline code with call to java_expand_body.
(start_complete_expand_method): Remove static modifier.
(java_expand_method_bodies): Patch function tree for
class initialization and/or synchronization as needed.
Don't begin RTL expansion yet.
(java_expand_classes): Check flag_unit_at_a_time before
calling finish_class.
(java_finish_classes): New function.
(java_complete_lhs): Ensure COMPOUND_EXPR has non-NULL type.
(patch_assignment): Set DECL_CONTEXT on temporary variable.
(emit_test_initialization): Set DECL_IGNORED_P.
From-SVN: r71024
Diffstat (limited to 'gcc/java/jcf-parse.c')
-rw-r--r-- | gcc/java/jcf-parse.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/java/jcf-parse.c b/gcc/java/jcf-parse.c index 2393927..f47dbe0 100644 --- a/gcc/java/jcf-parse.c +++ b/gcc/java/jcf-parse.c @@ -42,6 +42,7 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */ #include "debug.h" #include "assert.h" #include "tm_p.h" +#include "cgraph.h" #ifdef HAVE_LOCALE_H #include <locale.h> @@ -1119,6 +1120,13 @@ java_parse_file (int set_yydebug ATTRIBUTE_UNUSED) java_expand_classes (); if (!java_report_errors () && !flag_syntax_only) { + if (flag_unit_at_a_time) + { + cgraph_finalize_compilation_unit (); + cgraph_optimize (); + java_finish_classes (); + } + emit_register_classes (); if (flag_indirect_dispatch) emit_offset_symbol_table (); |