ChangeLog.tree-ssa 13 KB

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