OSDN Git Service

* ABOUT-GCC-NLS, ChangeLog, ChangeLog-1997, ChangeLog-1998,
[pf3gnuchains/gcc-fork.git] / gcc / java / ChangeLog.tree-ssa
1 2004-05-10  Andrew Haley  <aph@redhat.com>
2
3         * java-gimplify.c (java_gimplify_expr): Copy the LHS of a binary
4         expression into a temporary variable.
5
6         (java_gimplify_new_array_init): Set the DECL_CONTEXT of array and
7         tmp to current_function_decl.
8
9 2004-04-13  Diego Novillo  <dnovillo@redhat.com>
10
11         * expr.c (build_expr_wfl): Don't check type nodes for
12         side effects.
13
14 2004-04-12  Diego Novillo  <dnovillo@redhat.com>
15
16         * decl.c (java_expand_stmt): Remove.
17         * lang.c (LANG_HOOKS_RTL_EXPAND_STMT): Remove.
18
19 2004-02-24  Richard Henderson  <rth@redhat.com>
20
21         * java-gimplify.c (java_gimplify_new_array_init): Remove extra
22         argument building BLOCK.
23
24 2004-02-19  Steven Bosscher  <stevenb@suse.de>
25
26         * decl.c (poplevel): Don't output nested inline functions.
27
28 2004-02-16  Richard Henderson  <rth@redhat.com>
29
30         * builtins.c (java_build_function_call_expr): Add static chain
31         operand to call_expr.
32
33 2004-01-29  Richard Henderson  <rth@redhat.com>
34
35         PR java/12906
36         * decl.c (maybe_pushlevels): Careful with TREE_CHAIN when
37         registering decls with push_jvm_slot.
38
39 2003-12-10  Diego Novillo  <dnovillo@redhat.com>
40
41         * parse.y (resolve_field_access): Remove superfluous
42         initialization of decl.
43
44 2003-12-10  Richard Henderson  <rth@redhat.com>
45
46         * lang.c (java_post_options): Don't ever use rtl inlining.
47
48 2003-12-06  Jan Hubicka  <jh@suse.cz>
49
50         * parse.y (resolve_field_access): Initialize decl.
51
52 2003-11-31  Richard Henderson  <rth@redhat.com>
53
54         * lang.c (java_start_inlining): Remove.
55         (LANG_HOOKS_TREE_INLINING_START_INLINING): Remove.
56
57 2003-11-31  Richard Henderson  <rth@redhat.com>
58
59         * jcf-parse.c (java_parse_file): Finalize cgraph after emitting
60         class tables.
61
62 2003-11-24  Richard Henderson  <rth@redhat.com>
63
64         * Make-lang.in (parse.o): Remove -Wno-error.
65
66 2003-11-20  Richard Henderson <rth@redhat.com>
67
68         * constants.c (build_constant_data_ref): Lay out the array type.
69
70 2003-11-20  Richard Henderson <rth@redhat.com>
71
72         * class.c (build_indirect_class_ref): Use convert.
73         * constants.c (build_constant_data_ref): Fix type on the decl
74         and return that directly.
75         (build_constants_constructor): Remove kruft to match.
76         (build_ref_from_constant_pool): Use ARRAY_REF.
77         * expr.c (build_java_indirect_ref): Use convert.
78         (build_known_method_ref): Likewise.
79         * parse.y (patch_string_cst): Likewise.
80
81         * class.c (finish_class): Kill code to output_inline_function.
82
83 2003-11-12  Jason Merrill  <jason@redhat.com>
84
85         PR optimization/12547
86         * lang.c (java_tree_inlining_walk_subtrees): Restore.
87         (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Restore.
88
89 2003-11-12  Richard Henderson  <rth@redhat.com>
90
91         * java-gimplify.c (java_gimplify_expr): Use annotate_with_locus
92         instead of annotate_all_with_locus.
93
94 2003-11-10  Richard Henderson  <rth@redhat.com>
95
96         * expr.c: Use append_to_statement_list instead of add_tree.
97
98 2003-10-30  Richard Henderson  <rth@redhat.com>
99
100         * java-gimplify.c (cleanup_compound_expr): Remove.
101         (cleanup_try_finally_expr): Remove.
102         (java_gimplify_expr): Don't call them.
103         (java_gimplify_case_expr): Use create_artificial_label.
104         (java_gimplify_default_expr): Likewise.
105
106 2003-10-30  Richard Henderson  <rth@redhat.com>
107
108         * expr.c (expand_java_switch, expand_java_add_case): New.
109         (LOOKUP_SWITCH, TABLE_SWITCH): Use them.
110
111 2003-10-23  Richard Henderson  <rth@redhat.com>
112
113         * java-gimplify.c (java_gimplify_expr): Return gimplify_status.
114
115 2003-10-14  Richard Henderson  <rth@redhat.com>
116
117         * decl.c (finish_method): Set cfun->function_end_locus.
118         * java-gimplify.c (java_gimplify_expr): Set input_location
119         for EXPR_WITH_FILE_LOCATION.  Use annotate_all_with_locus.
120         * parse.h (DECL_SOURCE_LINE_MERGE): Remove.
121         (DECL_SOURCE_LINE_FIRST, DECL_SOURCE_LINE_LAST): Remove.
122         * parse.y (missing_return_error): Use DECL_FUNCTION_LAST_LINE.
123         (finish_method_declaration): Likewise.
124         (start_artificial_method_body): Likewise.
125         (lookup_cl): Use DECL_SOURCE_LINE.
126         (start_complete_expand_method): Likewise.
127         (java_complete_lhs): Fix IS_EXPR_CODE_CLASS check.
128
129 2003-10-13  Richard Henderson  <rth@redhat.com>
130
131         * decl.c (java_add_stmt): Use annotate_with_locus.
132
133 2003-10-13  Richard Henderson  <rth@redhat.com>
134
135         * expr.c (build_java_jsr): Don't emit LABEL_EXPR or
136         load_type_state here.
137
138 2003-10-12  Richard Henderson  <rth@redhat.com>
139
140         * class.c (build_utf8_ref, get_dispatch_table): Set TREE_INVARIANT.
141         (make_class_data, build_symbol_entry, emit_symbol_table): Likewise.
142         * decl.c (java_init_decl_processing): Likewise.
143         * except.c (prepare_eh_table_type): Likewise.
144         * parse.y (patch_assignment, patch_binop): Likewise.
145         (patch_string_cst, patch_new_array_init): Likewise.
146         * resource.c (compile_resource_data): Likewise.
147
148 2003-10-08  Jeff Sturm  <jsturm@one-point.com>
149
150         * decl.c (cgraph.h): Include.
151         (tree-inline.h, tree-dump.h, tree-flow.h): Remove includes.
152         (complete_start_java_method): Remove.
153         (start_java_method): Combine with complete_start_java_method.
154         Remove dead code.
155         (end_java_method): Don't patch or expand tree.
156         Use finish_method.
157         (finish_method): New function.
158         (java_expand_body): Use tree_rest_of_compilation.
159         (java_expand_stmt): New function.
160
161         * java-gimplify.c (tree-dump.h): Include.
162         (java_genericize): New function.
163         (dump_java_tree): Declare.  New function.
164
165         * java-tree.h (start_complete_expand_method): Remove declaration.
166         (complete_start_java_method): Remove declaration.
167         (finish_method, java_expand_stmt, java_genericize): Declare.
168
169         * lang.c (LANG_HOOKS_RTL_EXPAND_STMT): Define.
170
171         * parse.y (tree-inline.h, tree-dump.h, tree-flow.h,
172         cgraph.h): Remove includes.
173         (start_complete_expand_method): Declare.
174         (source_end_java_method): Don't expand tree.  Use finish_method.
175         Reset current_function_decl.
176         (java_expand_method_bodies): Don't patch tree for class
177         initialization or method synchronization.
178
179 2003-10-01  Richard Henderson  <rth@redhat.com>
180
181         * decl.c (end_java_method): Invoke remove_useless_stmts_and_vars
182         and lower_eh_constructs.
183         * parse.y (source_end_java_method): Likewise.
184
185 2003-09-24  Jason Merrill  <jason@redhat.com>
186
187         * decl.c, jcf-parse.c, jcf-write.c, parse.h, parse.y, resource.c:
188         Revert from TREE_LOCUS to DECL_SOURCE_LOCATION.
189
190 2003-09-18  Richard Henderson  <rth@redhat.com>
191
192         * lang.c (java_estimate_num_insns): Take an expr, not a decl.
193
194 2003-08-12  Diego Novillo  <dnovillo@redhat.com>
195
196         * java-gimplify.c (java_gimplify_block): If the body is a
197         NULL_TREE, return an empty statement.
198
199 2003-08-08  Jason Merrill  <jason@redhat.com>
200
201         * parse.y (source_end_java_method): Support
202         !keep_function_tree_in_gimple_form.
203         Do TDI_generic dump.
204
205 2003-07-31  Andrew Haley  <aph@redhat.com>
206
207         * java-tree.h: (add_stmt_to_compound): New function.
208         (java_add_stmt): New function.
209         (java_add_local_var): New function.
210         (get_stmts): New function.
211         * java-gimplify.c (java_gimplify_block): Allow for null body.
212         * except.c (link_handler): Set h->stmt.
213         (expand_start_java_handler): Build a TRY_CATCH_EXPR for this
214         range;  don't expand_eh_region_start.
215         (expand_end_java_handler): Rewrite.
216         * java-except.h (stmt): New field.
217         * expr.c (flush_quick_stack): Replace expand_assignment with
218         java_add_stmt.
219         (java_stack_dup): Replace emit_move_insn with java_add_stmt.
220         (build_java_athrow): Replace expand_expr_stmt with java_add_stmt.
221         (build_java_jsr): Replace emit_jump with java_add_stmt (build (GOTO_EXPR))
222         (build_java_ret): Replace expand_computed_goto with
223         java_add_stmt (build (GOTO_EXPR))
224         (expand_java_arraystore): Replace expand_assignment with
225         java_add_stmt.
226         (expand_java_return): Replace expand_return with
227         java_add_stmt (build (RETURN_EXPR))
228         (expand_load_internal): Remove layout_decl, DECL_REGISTER,
229         expand_decl, and expand_decl_init.  Instead, add the local
230         variable and a MODIFY_EXPR to the current tree.
231         (expand_iinc): Replace expand_assignment with
232         java_add_stmt.
233         (expand_compare): Replace expand_cond with
234         java_add_stmt(build (COND_EXPR))
235         (expand_java_goto): Replace expand_goto with
236         java_add_stmt (build (GOTO_EXPR))
237         (expand_invoke): Replace expand_expr_stmt with java_add_stmt.
238         (build_jni_stub): Generate a BIND_EXPR to hold the block we've
239         created.  Don't distinguish between source and byte compiler.
240         (expand_java_field_op):  Replace expand_assignment with
241         java_add_stmt.
242         (java_expand_expr): Abort.  No-one should call this function any
243         more.
244         (expand_byte_code): Replace expand_label with
245         java_add_stmt (build (LABEL_EXPR))
246         (process_jvm_instruction): Replace build (JAVA_EXC_OBJ_EXPR) with
247         build_exception_object_ref.  Replace expand_assignment with
248         java_add_stmt.
249         * except.c (link_handler): Null stmt field.
250         (expand_start_java_handler): Don't expand_eh_region_start.
251         Instead, generate a TRY_CATCH_EXPR and insert it into the tree
252         we're building.
253         (expand_end_java_handler): Don't expand_start_all_catch.  Instead,
254         build a TRY_FINALLY_EXPR and wrap the catch block with it.
255         Don't expand_end_all_catch.
256         * decl.c (push_jvm_slot): Call pushdecl().
257         (find_local_variable): Give symbolic names to unnamed local
258         variables.
259         (struct binding_level: stmts): New field.
260         (poplevel): If any statements have been generated at this level,
261         create a BIND_EXPR to hold them and copy the variables to it.  If
262         we are at the outermost level, save this BIND_EXPR in the
263         DECL_SAVED_TREE of this function.
264         (maybe_pushlevels): Don't expand_start_bindings.
265         (maybe_poplevels): Don't expand_end_bindings.
266         (complete_start_java_method): Reorganize static initialization and
267         synchronization logic for source compiler.  Remove pushlevel and
268         expand_start_bindings for byte compiler.
269         (end_java_method): Don't expand_end_bindings.  Add static
270         initialization and synchronization logic for byte compiler.
271         Set cfun->x_whole_function_mode_p.
272         Call gimplify_function_tree and optimize_function_tree and
273         expand_expr_stmt.
274         (add_stmt_to_compound): New.
275         (java_add_stmt): New.
276         (java_add_local_var): New.
277         (get_stmts): New.
278         * parse.y (add_stmt_to_compound): Remove.
279         * jcf-parse.c (parse_class_file): Don't call expand_expr_stmt for
280         a native method -- we'll do that later.
281
282 2003-07-27  Andreas Jaeger  <aj@suse.de>
283
284         * expr.c (build_expr_wfl): Convert remaining K&R prototypes
285         to ISO C90.
286
287 2003-06-28  Jeff Sturm  <jsturm@one-point.com>
288
289         * java-gimplify.c (java_gimplify_block): Rebuild BLOCK_SUBBLOCKS.
290         * lang.c (flag_disable_gimple): Remove initialization.
291
292 2003-06-23  Jeff Law  <law@redhat.com>
293
294         * Make-lang.in (java-gimplify.o): Add dependencies.
295
296 2003-06-22  Jeff Sturm  <jsturm@one-point.com>
297
298         * parse.y (source_end_java_method): Don't attempt to inline
299         or optimize trees if flag_disable_gimple.
300
301         * Make-lang.in (JAVA_OBJS): Remove java-tree-inline.o.
302
303 2003-06-21  Jeff Sturm  <jsturm@one-point.com>
304
305         * Make-lang.in (JAVA_OBJS): Add java-gimplify.o.
306
307         * decl.c (java_init_decl_processing): Initialize size_type_node.
308         (complete_start_java_method): Update DECL_SAVED_TREE.
309         (dump_function): Remove.
310         (java_optimize_inline): Remove.
311
312         * expr.c (always_initialize_class_p): Initialize to 1.
313         (build_instanceof): Build proper boolean condition.
314         (build_class_init): Set DECL_INITIAL for init_test_decl.
315         (force_evaluation_order): Don't save_expr a void expr node.
316
317         * java-gimplify.c: New file.
318
319         * java-tree.h (java_gimplify_expr): Declare.
320
321         * lang.c (java_tree_inlining_walk_subtrees): Remove declaration.
322         (flag_optimize_sci): Initialize to 0.
323         (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Remove define.
324         (LANG_HOOKS_SIMPLIFY_EXPR): Add define.
325         (java_tree_inlining_walk_subtrees): Remove function.
326         (java_init): Set flag_disable_gimple to 1.
327
328         * parse.y (source_end_java_method): Set cfun->x_whole_function_mode_p.
329         Gimplify.  Optimize tree before expanding.  Update comments.
330         (java_expand_method_bodies): Always save DECL_SAVED_TREE.
331         (patch_invoke): Don't save_expr force_evaluation_order result.
332         (patch_assignment): Use simpler compound expression.
333         (patch_if_else_statement): Don't optimize constant condition nodes.
334
335 2003-03-02  Diego Novillo  <dnovillo@redhat.com>
336
337         * class.c: Replace DECL_SOURCE_FILE with TREE_FILENAME and
338         DECL_SOURCE_LINE with TREE_LINENO everywhere.
339
340 2003-02-03  Diego Novillo  <dnovillo@redhat.com>
341
342         * parse.y (qualify_ambiguous_name): Initialize variable 'decl'.
343
344 2003-01-15  Jeff Law <law@redhat.com>
345
346         * class.c: Use TREE_FILENAME and TREE_LINENO to extract file/line
347         information from tree nodes.  Use annotate_with_file_line to
348         annotate tree nodes with file/line information.
349         * decl.c, jcf-parse.c, jcf-write.c, parse.h: Likewise.
350         * parse.y: Likewise.
351         * expr.c (java_expand_expr): Handle EXPR_WITH_FILE_LOCATION nodes.
352         (build_expr_wfl): New function.
353         * java-tree.def (EXPR_WITH_FILE_LOCATION): New node.
354         * java-tree.h (EXPR_WFL_*): New macros.
355         (build_expr_wfl): Declare.
356
357 Local Variables:
358 mode: change-log
359 change-log-default-name: "ChangeLog.tree-ssa"
360 End:
361
362 \f
363 Copyright (C) 2003, 2004 Free Software Foundation, Inc.
364
365 Copying and distribution of this file, with or without modification,
366 are permitted in any medium without royalty provided the copyright
367 notice and this notice are preserved.