1 2010-05-20 Jakub Jelinek <jakub@redhat.com>
4 * decl.c (start_java_method): Set DECL_ARTIFICIAL on the 'this'
7 2010-05-19 Anatoly Sokolov <aesok@post.ru>
9 * jcf-parse.c (get_constant): Use double_int_to_tree instead of
10 build_int_cst_wide_type.
12 2010-05-18 Nathan Froyd <froydnj@codesourcery.com>
14 * expr.c (pop_arguments): Fix use of undeclared variable.
16 2010-05-18 Nathan Froyd <froydnj@codesourcery.com>
18 * expr.c (expand_java_multianewarray): Use build_call_vec instead of
20 (pop_arguments): Return a VEC instead of a tree. Take a method type
21 rather than a list of argument types.
22 (rewrite_rule): Change signature. of rewrite_arglist member.
23 (rewrite_arglist_getcaller): Update signature.
24 (rewrite_arglist_getclass): Likewise.
25 (maybe_rewrite_invocation): Update for rewrite_arglist change.
26 (build_known_method_ref): Take a VEC instead of a tree.
27 (invoke_build_dtable): Likewise.
28 (expand_invoke): Update calls to pop_arguments. Use build_call_vec
29 instead of build_call_list.
30 (build_jni_stub): Use build_call_vec instead of build_call_list.
31 * java-tree.h (maybe_rewrite_invocation): Update declaration.
32 (build_known_method_ref): Likewise.
33 (invoke_build_dtable): Likewise.
35 2010-05-14 Nathan Froyd <froydnj@codesourcery.com>
38 * java-tree.h (START_RECORD_CONSTRUCTOR): Change first argument to a
39 vector. Move call to build_constructor...
40 (FINISH_RECORD_CONSTRUCTOR): ...here. Add necessary arguments. Clear
41 TREE_CONSTANT on the constructor.
42 (PUSH_SUPER_VALUE): Change first argument to a vector.
43 (PUSH_FIELD_VALUE): Likewise.
44 * resource.c (compile_resource_data): Update calls to above macros.
45 * constants.c (build_constants_constructor): Likewise.
46 * class.c (build_utf8_ref): Likewise.
47 (make_field_value): Likewise.
48 (make_method_value): Likewise.
49 (add_table_and_syms): New function.
50 (make_class_data): Call it. Update calls to above macros.
51 (build_symbol_table_entry): New function.
52 (build_symbol_entry): Call it. Update calls to above macros.
53 (emit_symbol_table): Likewise.
54 (make_catch_class_record): Update calls to above macros.
55 (build_assertion_table_entry): New function.
56 (add_assertion_table_entry): Call it.
57 (emit_assertion_table): Likewise.
59 2010-05-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
62 * lang.c (java_handle_option): Add argument kind.
64 2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
66 * decl.c (java_init_decl_processing): Remove argument in call to
69 2010-04-07 Jakub Jelinek <jakub@redhat.com>
71 * exception.cc (_Jv_Throw): Avoid set but not used warning.
72 * include/java-assert.h (JvAssertMessage, JvAssert): Use argument in
73 sizeof to avoid set but not used warnings.
75 2010-01-20 Joern Rennecke <amylaar@spamcop.net>
77 * lang.c (java_post_options): Constify variable "dot".
79 * jcf-parse.c (set_source_filename): Constify variable "dot".
80 (load_class): Constify variable "separator".
81 Use get_identifier_with_length.
83 * jvspec.c (lang_specific_driver): Constify two variables named "p".
85 2010-01-09 Jakub Jelinek <jakub@redhat.com>
87 * jcf-dump.c (version): Update copyright notice dates.
89 2009-11-28 Jakub Jelinek <jakub@redhat.com>
91 * jvspec.c (lang_specific_driver): Remove unused
92 saw_verbose_flag variable.
93 * jcf-dump.c (main): Remove unused general_purpose_bits
95 * builtins.c (initialize_builtins): Remove unused float_ftype_float
97 * expr.c (java_stack_pop): Remove unused val variable.
98 (build_jni_stub): Remove unused res_type variable.
99 * verify-impl.c (check_field_constant): Remove unused len variable.
101 2009-10-20 Joel Dice <dicej@mailsnare.net>
104 * mangle_name.c (append_unicode_mangled_name): Fix mangling
105 of names with multiple underscores and "U".
106 (unicode_mangling_length): Likewise.
108 2009-10-03 Simon Baldwin <simonb@google.com>
110 * config-lang.in (lang_dirs): Remove zlib.
112 2009-09-28 Richard Henderson <rth@redhat.com>
114 * builtins.c (initialize_builtins): Update call to
115 build_common_builtin_nodes.
116 * lang.c (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New.
118 2009-09-14 Richard Henderson <rth@redhat.com>
120 * builtins.c (initialize_builtins): Update call to
121 build_common_builtin_nodes.
122 * decl.c (java_init_decl_processing): Don't call
123 default_init_unwind_resume_libfunc.
124 * except.c: Include tree-iterator.h.
125 (build_exception_object_var): New.
126 (build_exception_object_ref): Use it.
127 (expand_end_java_handler): Initialize it from __builtin_eh_pointer.
128 Attach all CATCH_EXPRs to a single TRY_CATCH_EXPR.
129 * java-tree.h (DECL_FUNCTION_EXC_OBJ): New.
131 2009-09-13 Richard Guenther <rguenther@suse.de>
132 Rafael Avila de Espindola <espindola@google.com>
134 * decl.c (do_nothing): Remove.
135 (java_init_decl_processing): Do not set lang_eh_runtime_type.
136 * Make-lang.in (lang.o): Add $(EXCEPT_H) dependency.
137 * lang.c (java_eh_personality): New.
138 (java_eh_personality_decl): Likewise.
139 (LANG_HOOKS_EH_PERSONALITY): Define.
141 2009-09-03 Diego Novillo <dnovillo@google.com>
143 * lang.c (lang_hooks): Remove const qualifier.
145 2009-09-01 Jakub Jelinek <jakub@redhat.com>
147 * boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INT
150 2009-09-01 Richard Guenther <rguenther@suse.de>
152 * lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove.
153 * java-tree.h (java_mark_addressable): Likewise.
154 * typeck.c (java_mark_addressable): Likewise.
156 2009-08-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
158 * Make-lang.in (java.install-pdf): Install gcj.pdf in
159 $(pdfdir)/gcc, alongside the other manuals.
161 2009-08-12 Andrew Haley <aph@redhat.com>
163 * builtins.c (compareAndSwapInt_builtin): Use
164 flag_use_atomic_builtins.
165 (compareAndSwapLong_builtin): Likewise.
166 (compareAndSwapObject_builtin): Likewise.
167 * jvspec.c: Add flag_use_atomic_builtins.
168 * gcj.texi: Likewise.
169 * java-tree.h: Likewise.
170 * lang.opt: Likewise.
172 2009-08-11 Dodji Seketeli <dodji@redhat.com>
175 * lang.c (put_decl_node): Outputs different level of information
176 depending on the verbosity level.
178 2009-07-31 Andrew Haley <aph@redhat.com>
181 * decl.c (java_replace_references): Set EXPR_LOCATION on all
182 generated expressions.
183 (binding_level.loc): new field.
184 (clear_binding_level): Initialize loc.
185 (set_input_location): New function.
186 (pushlevel): Set new binding_level.loc.
187 (poplevel): Set EXPR_LOCATION on the new BIND_EXPR_BODY.
188 (start_java_method): Set DECL_SOURCE_LOCATION of this new method.
189 (java_add_stmt): Set the EXPR_LOCATION on all subtrees of new_stmt.
191 2009-07-17 Richard Guenther <rguenther@suse.de>
194 * java-gimplify.c (java_genericize): Do not gimplify here.
195 But replace all local references.
196 (java_gimplify_expr): Do not replace local references here.
197 (java_gimplify_modify_expr): Likewise.
198 * jcf-parse.c (java_parse_file): Do not finalize the CU or
199 optimize the cgraph here.
200 * decl.c (java_replace_reference): Make static.
201 (java_replace_references): New function.
202 (end_java_method): Clear base_decl_map.
203 * java-tree.h (java_replace_references): Declare.
204 (java_replace_reference): Remove.
206 2009-07-14 Taras Glek <tglek@mozilla.com>
207 Rafael Espindola <espindola@google.com>
209 * Make-lang.in (java.install-plugin): New target for
210 installing plugin headers.
212 2009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
214 * class.c: Replace %J by an explicit location. Update all calls.
216 2009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
218 * jcf-parse.c: Replace %H by an explicit location. Update all calls.
220 2009-06-29 Andrew Haley <aph@redhat.com>
223 * java-tree.h (cxx_keyword_p): New declaration.
224 * mangle_name.c (utf8_cmp): Move here from mangle.c.
225 (cxx_keywords): Likewise.
226 (cxx_keyword_p): Likewise.
227 (MANGLE_CXX_KEYWORDS): New macro.
228 (append_gpp_mangled_name): Use MANGLE_CXX_KEYWORDS.
229 (append_gpp_mangled_name): Likewise.
230 * mangle.c: Move code to mangle_name.c.
231 (mangle_member_name): Don't call cxx_keyword_p.
233 2009-06-12 Aldy Hernandez <aldyh@redhat.com>
235 * java-gimplify.c (java_gimplify_block): New argument to
237 * expr.c (force_evaluation_order): Same.
238 * typeck.c: Add location to build_decl or PUSH_FIELD calls.
247 * java-tree.h (PUSH_FIELD): Add location field.
249 2009-06-09 Ian Lance Taylor <iant@google.com>
251 * verify.h: Remove extern "C".
253 2009-06-07 Ian Lance Taylor <iant@google.com>
255 * jcf-parse.c (handle_constant): Change local variable 'kind' to
258 2009-06-01 Ian Lance Taylor <iant@google.com>
260 * jcf-io.c (find_class): Use CONST_CAST.
262 2009-05-27 Ian Lance Taylor <iant@google.com>
264 * Make-lang.in ($(XGCJ)$(exeext)): Change $(COMPILER) to
266 (jc1$(exeext), jcf-dump$(exeext), jvgenmain$(exeext)): Likewise.
268 2009-05-26 Ian Lance Taylor <iant@google.com>
270 * Make-lang.in (jvspec.o): Use $(COMPILER).
271 ($(XGCJ)$(exeext), jc1$(exeext), jcf-dump$(exeext)): Likewise.
272 (jvgenmain$(exeext), java/jcf-io.o, java/jcf-path.o): Likewise.
274 2009-05-12 Alexandre Oliva <aoliva@redhat.com>
276 * Make-lang.in (GCJ): Renamed to...
279 2009-04-27 Ian Lance Taylor <iant@google.com>
281 * builtins.c (java_builtins): Add casts to enum type.
282 * verify-impl.c (check_class_constant): Add cast to enum type.
283 (check_constant, check_wide_constant): Likewise.
285 2009-04-27 Richard Guenther <rguenther@suse.de>
288 * constants.c (build_constants_constructor): Retain the old
289 pointer type as valid TYPE_POINTER_TO after patching the
290 type of the constant pool decl.
292 2009-04-24 Ian Lance Taylor <iant@google.com>
294 * jcf-parse.c (handle_constant): Add cast to enum type.
296 2009-04-21 Taras Glek <tglek@mozilla.com>
298 * builtins.c: Update GTY annotations to new syntax
300 * java-tree.h: Likewise
304 2009-04-21 Joseph Myers <joseph@codesourcery.com>
306 * ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
309 2009-04-18 Ian Lance Taylor <iant@google.com>
311 * verify-impl.c (verify_instructions_0): Add cast to enum type.
313 2009-04-09 Paolo Bonzini <bonzini@gnu.org>
315 * builtins.c (compareAndSwapLong_builtin,
316 compareAndSwapInt_builtin, compareAndSwapObject_builtin,
317 VMSupportsCS8_builtin): Do not look at sync_compare_and_swap_cc.
319 2009-03-31 Richard Guenther <rguenther@suse.de>
321 * java-gimplify.c (java_gimplify_expr): Do not manually gimplify
322 the first operand of binary and comaprison expressions.
324 2009-03-30 Joseph Myers <joseph@codesourcery.com>
326 PR rtl-optimization/323
327 * lang.c (java_post_options): Set flag_excess_precision_cmdline.
328 Give an error for -fexcess-precision=standard for processors where
329 the option is significant.
331 2009-03-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
333 * lang.opt: Unify help text for -Wdeprecated.
335 2009-02-03 Jakub Jelinek <jakub@redhat.com>
337 * jcf-dump.c (version): Update copyright notice dates.
339 2009-01-16 Richard Guenther <rguenther@suse.de>
341 PR tree-optimization/38835
343 * builtins.c (build_addr_sum): Use POINTER_PLUS_EXPR.
345 2008-12-05 Sebastian Pop <sebastian.pop@amd.com>
348 * Make-lang.in (jc1): Add BACKENDLIBS, remove GMPLIBS.
350 2008-11-04 Andrew Haley <aph@redhat.com>
353 * jcf-parse.c (java_emit_static_constructor): Don't call
354 cgraph_build_static_cdtor. Rewrite.
356 2008-10-24 Jakub Jelinek <jakub@redhat.com>
358 * Make-lang.in (check-java-subtargets): New target.
360 2008-10-16 David Edelsohn <edelsohn@gnu.org>
363 * Make-lang.in (class.o): Depend on $(TM_P_H).
365 * class.c: Include tm_p.h.
366 * expr.c: Include tm_p.h.
368 2008-10-14 Andrew Haley <aph@redhat.com>
370 * constants.c (build_constant_data_ref): Make sure we only build
371 one copy of the decl for the constant pool.
373 2008-09-22 Andrew Haley <aph@redhat.com>
375 * expr.c (rules): Add new rule for
376 gnu.java.lang.VMCPStringBuilder.toString.
377 (rewrite_rule.new_classname): New field.
378 (maybe_rewrite_invocation): Use new_classname field instead of
379 DECL_CONTEXT (*method_p).
380 Allow rewrite_arglist to be NULL.
382 2008-09-17 Andrew Pinski <andrew_pinski@playstation.sony.com>
384 * lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): Don't define.
385 (java_get_callee_fndecl): Kill.
387 2008-09-17 Jan Hubicka <jh@suse.cz>
390 * class.c (add_method_1): Do not initialize DECL_INLINE.
391 (make_local_function_alias): Likewise.
392 * expr.c (rewrite_arglist_getcaller): Set DECL_UNINLINABLE.
393 * lang.c (java_decl_ok_for_sibcall): Use DECL_UNINLINABLE.
395 2008-09-09 Richard Guenther <rguenther@suse.de>
397 * decl.c (build_result_decl): Remove no longer applicable
400 2008-09-05 David Daney <ddaney@avtrex.com>
402 * gcj.texi (-freduced-reflection): Clarify option's restrictions.
404 2008-08-21 David Daney <ddaney@avtrex.com>
406 * class.c (make_class_data): Don't add field_index when
407 flag_reduced_reflection set.
409 2008-08-12 Ulrich Weigand <uweigand@de.ibm.com>
411 * typeck.c (convert): Do not check for TARGET_FLOAT_FORMAT.
413 2008-08-08 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
416 * lang.c (java_handle_option): Replace set_Wunused with
419 2008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
421 * gcj.texi: Update copyright years. Do not list GPL as
424 2008-07-29 Jakub Jelinek <jakub@redhat.com>
426 * class.c (build_utf8_ref): Set DECL_SIZE and DECL_SIZE_UNIT
429 * class.c (build_utf8_ref): Pad initializer string to utf8const_type's
432 2008-07-29 Jan Hubicka <jh@suse.cz>
434 * lang.c (java_post_options): Remove handling of flag_no_inline.
436 2008-07-28 Richard Guenther <rguenther@suse.de>
438 Merge from gimple-tuples-branch.
440 2008-07-18 Richard Guenther <rguenther@suse.de>
442 * expr.c: Include tree-iterator.h.
443 * Make-lang.in (expr.o): Add tree-iterator.h dependency.
445 2008-07-18 Aldy Hernandez <aldyh@redhat.com>
447 * java-gimplify.c: Include gimple.h instead of tree-gimple.h.
450 2008-07-14 Aldy Hernandez <aldyh@redhat.com>
452 * java-gimplify.c (java_gimplify_expr): Same.
453 (java_gimplify_modify_expr): Same.
454 * java-tree.h: Rename GENERIC_NEXT to TREE_CHAIN.
456 2008-05-02 Diego Novillo <dnovillo@google.com>
458 * expr.c (build_java_throw_out_of_bounds_exception): Fix
459 mixed declarations and code.
461 2008-05-02 Doug Kwan <dougkwan@google.com>
463 * expr.c (build_java_throw_out_of_bounds_exception ): Wrap call to
464 _Jv_ThrowBadArrayIndex with a COMPOUND_EXPR to return 0.
466 2008-02-19 Diego Novillo <dnovillo@google.com>
468 http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00804.html
470 * java-gimplify.c (java_gimplify_self_mod_expr): Change
471 gimple_seq arguments to gimple_seq *. Update all users.
473 2007-11-26 Aldy Hernandez <aldyh@redhat.com>
475 * java-gimplify.c (java_gimplify_expr): Make pre_p and post_p
477 (java_gimplify_self_mod_expr): Same.
478 * java-tree.h (java_gimplify_expr): Make pre_p and post_p
481 2008-07-24 Jan Hubicka <jh@suse.cz>
483 * java/decl.c: Include cgraph.h
484 (end_java_method): Remove non-unit-at-a-time code.
485 (java_mark_decl_local): Likewise; sanity check that we don't touch
488 2008-07-15 Jan Hubicka <jh@suse.cz>
490 * lang.c (java_init_options): Enable unit-at-a-time by default.
492 2008-07-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
494 * Make-lang.in (jvspec.o): Fix dependencies.
496 2008-07-06 Tom Tromey <tromey@redhat.com>
498 * Make-lang.in (java/parse.o-warn): Remove.
499 (java/jcf-io.o-warn): Remove.
501 2008-07-05 Tom Tromey <tromey@redhat.com>
503 * jcf-io.c: Don't include fnmatch.h. Don't use JCF_USE_SCANDIR.
504 (compare_path): Remove.
505 (java_or_class_file): Likewise.
506 (memoized_dirlist_entry): Likewise.
507 (memoized_dirlist_hash): Likewise.
508 (memoized_dirlist_lookup_eq): Likewise.
509 (memoized_dirlists): Likewise.
510 (caching_stat): Likewise.
511 (find_class): Use stat.
512 * jcf.h (JCF_USE_SCANDIR): Remove.
514 2008-06-30 Joshua Sumali <jsumali@redhat.com>
516 * Make-lang.in (JAVA_MANFILES): Add doc/aot-compile.1 and
518 (java.uninstall): Likewise.
519 (java.maintainer-clean): Likewise.
520 (aot-compile.pod): New rule.
521 (rebuild-gcj-db.pod): New rule.
522 (java.install-man): Install doc/aot-compile.1 and doc/rebuild-gcj-db.1
523 * gcj.texi: Add new sections for aot-compile and rebuild-gcj-db.
525 2008-06-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
527 * Make-lang.in (java/jcf-io.o-warn): New.
529 2008-06-24 Tom Tromey <tromey@redhat.com>
531 * jcf-path.c (jcf_path_init): Don't name variable 'try'.
532 * expr.c (add_type_assertion): Rename argument.
533 (build_java_arrayaccess): Don't name variable 'throw'.
534 (ARRAY_NEW_MULTI): Don't name variable 'class'.
535 * jcf-io.c (find_class): Don't name variable 'class'.
536 * mangle.c (compression_table_add): Don't name variable 'new'.
537 * constants.c (cpool_for_class): Rename argument.
538 (alloc_constant_fieldref): Likewise.
539 * jcf-parse.c (handle_innerclass_attribute): Don't name variable
541 (read_class): Likewise.
542 (parse_zip_file_entries): Likewise.
543 (process_zip_dir): Likewise.
544 * decl.c (java_mark_class_local): Rename argument.
545 * class.c (GEN_TABLE): Use type_name, not typename.
546 (gen_indirect_dispatch_tables): Likewise.
547 (add_field): Rename argument.
548 (is_compiled_class): Likewise.
549 (safe_layout_class): Likewise.
550 (emit_assertion_table): Likewise.
551 * typeck.c (has_method): Rename argument.
553 2008-06-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
555 * class.c (ident_subst, mangled_classname, unmangle_classname,
556 gen_indirect_dispatch_tables, add_method_1,
557 build_fieldref_cache_entry, make_local_function_alias,
558 layout_class, java_treetreehash_find, java_treetreehash_new,
559 split_qualified_name): Fix for -Wc++-compat.
560 * constants.c (set_constant_entry, cpool_for_class): Likewise.
561 * decl.c (make_binding_level, java_dup_lang_specific_decl,
562 start_java_method): Likewise.
563 * except.c (prepare_eh_table_type): Likewise.
564 * expr.c (type_assertion_hash, note_instructions): Likewise.
565 * java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC,
566 MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Likewise.
567 * jcf-io.c (jcf_filbuf_from_stdio, opendir_in_zip, find_class):
569 * jcf-parse.c (reverse, java_read_sourcefilenames,
570 annotation_grow, rewrite_reflection_indexes, java_parse_file,
571 process_zip_dir): Likewise.
572 * jcf-path.c (add_entry, add_path, jcf_path_init,
573 jcf_path_extdirs_arg): Likewise.
574 * jcf-reader.c (jcf_parse_constant_pool): Likewise.
575 * jvgenmain.c (do_mangle_classname): Likewise.
576 * lang.c (put_decl_string): Likewise.
577 * verify-impl.c (make_state_copy, make_state, add_new_state):
580 2008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
582 * gcj.texi: Expand TABs, remove whitespace from blank lines.
584 2008-06-14 Tom Tromey <tromey@redhat.com>
587 * class.c (build_class_ref): Initialize this_classdollar when
590 2008-05-23 Andrew Haley <aph@redhat.com>
592 * jcf-parse.c (give_name_to_class): Call find_sourcefile to find full
593 pathname of source file.
595 2008-05-12 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
597 * jcf-dump.c (print_constant): Use
598 HOST_LONG_LONG_FORMAT.
600 2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>
602 * decl.c (java_init_decl_processing): Change DECL_IS_PURE to
605 2008-04-23 Paolo Bonzini <bonzini@gnu.org>
607 * class.c (build_utf8_ref): Don't set TREE_INVARIANT.
608 (build_classdollar_field): Don't set TREE_INVARIANT.
609 (get_dispatch_table): Don't set TREE_INVARIANT.
610 (make_class_data): Don't set TREE_INVARIANT.
611 (build_symbol_entry): Don't set TREE_INVARIANT.
612 (emit_symbol_table): Don't set TREE_INVARIANT.
613 * constants.c (build_constant_data_ref): Don't set TREE_INVARIANT.
614 (build_ref_from_constant_pool): Don't set TREE_INVARIANT.
615 * resource.c (compile_resource_data): Don't set TREE_INVARIANT.
616 * expr.c (cache_cpool_data_ref): Don't set TREE_INVARIANT.
618 2008-04-03 Tom Tromey <tromey@redhat.com>
620 * Make-lang.in (java_OBJS): New variable.
622 2008-04-03 Paolo Bonzini <bonzini@gnu.org>
624 * java-tree.h (insert_block): Kill.
625 * decl.c (insert_block): Kill.
627 2008-04-01 Joseph Myers <joseph@codesourcery.com>
629 * gcj.texi: Include gpl_v3.texi instead of gpl.texi
630 * Make-lang.in (TEXI_JAVA_FILES): Include gpl_v3.texi instead of
633 2008-03-27 Tom Tromey <tromey@redhat.com>
635 * Make-lang.in: Revert automatic dependency patch.
637 2008-03-25 Tom Tromey <tromey@redhat.com>
639 * Make-lang.in: Removed most explicit .o targets.
640 (java/jvspec.o): Reduce to variable setting. Moved to java/.
641 ($(GCJ)$(exeext)): Update.
642 (JAVA_OBJS): New variable.
643 (JCFDUMP_OBJS): Reformat.
644 (java_OBJS): New variable.
645 (java/jvspec.o-warn): Update.
646 (java/parse.o-warn): Remove.
647 (JAVA_TREE_H): Remove.
648 (java/jcf-io.o): Reduce to variable setting.
649 (ALL_CPPFLAGS): Likewise.
651 2008-03-12 Paolo Bonzini <bonzini@gnu.org>
653 * mangle.c (java_mangle_decl): Remove dead check.
655 2008-03-11 Paolo Bonzini <bonzini@gnu.org>
657 * jcf-parse.c (java_parse_file): Assert binding levels are
659 * lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, java_clear_binding_stack):
662 2008-03-02 Jakub Jelinek <jakub@redhat.com>
664 * jcf-dump.c (version): Update copyright notice dates.
666 2008-02-29 Tom Tromey <tromey@redhat.com>
668 * expr.c (expand_byte_code): Set DECL_FUNCTION_LAST_LINE on
670 * java-tree.h (struct lang_decl_func): Remove obsolete comment.
672 2008-02-26 Tom Tromey <tromey@redhat.com>
674 * lang.c (java_post_options): Remove conditional.
675 * expr.c (expand_byte_code): Remove old location code.
676 * jcf-parse.c (set_source_filename): Remove old location code.
677 (give_name_to_class): Likewise.
678 (jcf_parse): Likewise.
679 (duplicate_class_warning): Likewise.
680 (parse_class_file): Likewise.
681 (java_parse_file): Likewise.
682 * decl.c (finish_method): Remove old location code.
683 * class.c (push_class): Remove old location code.
685 2008-02-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
688 * Make-lang.in (jc1): Add $(GMPLIBS).
690 2008-01-23 David Daney <ddaney@avtrex.com>
692 * class.c (hide) Rename to...
693 (java_hide_decl) ... this throughout, and make public.
694 * resource.c (Jr_count): Remove.
695 (compile_resource_data): Call java_mangle_resource_name to generate
696 decl name. Make resource decl public and hidden.
697 * mangle.c (java_mangle_resource_name): New function.
698 * java-tree.h (java_hide_decl, java_mangle_resource_name): Declare
701 2008-01-04 Andrew Haley <aph@redhat.com>
704 * jcf-parse.c (parse_zip_file_entries): Move decl to compile on
707 2008-01-03 Andrew Haley <aph@redhat.com>
710 * jcf-parse.c (parse_zip_file_entries): Unset TYPE_ALIAS_SET if
711 we're about to re-layout the type.
713 2007-12-20 Alexandre Oliva <aoliva@redhat.com>
715 * lang.c (java_classify_record): Don't return
716 RECORD_IS_INTERFACE for now.
718 2007-12-18 Andrew Haley <aph@redhat.com>
721 * jcf-parse.c (java_parse_file): Remove call to
722 java_mark_class_local.
723 (parse_class_file): Reinstate call to java_mark_class_local here.
724 * decl.c (java_mark_cni_decl_local): If the ASSEMBLER_NAME is
725 already set, call java_mangle_decl() and make_decl_rtl() to
726 rewrite its name as a hidden alias.
728 2007-12-15 Alexandre Oliva <aoliva@redhat.com>
731 * lang.c (java_classify_record): New.
732 (LANG_HOOKS_CLASSIFY_RECORD): Override.
734 2007-11-26 Andreas Krebbel <krebbel1@de.ibm.com>
737 * decl.c (finish_method): Pass 'false' for the new
738 allocate_struct_function parameter.
740 2007-11-26 Alexandre Oliva <aoliva@redhat.com>
742 * expr.c (build_jni_stub): Use the computed jni func type for
745 2007-11-26 Alexandre Oliva <aoliva@redhat.com>
747 * class.c (JAVA_TREEHASHHASH_H): Use TYPE_UID.
749 2007-11-26 Alexandre Oliva <aoliva@redhat.com>
751 * expr.c (type_assertion_hash): Hash type uids rather than
754 2007-11-17 David Daney <ddaney@avtrex.com>
755 Andrew Haley <aph@redhat.com>
757 * constants.c (build_constants_constructor): Use POINTER_SIZE
758 insead of BITS_PER_WORD in big-endian work around.
760 2007-11-07 Tom Tromey <tromey@redhat.com>
763 * gcj.texi (Input Options): Add missing noun.
765 2007-11-02 Tom Tromey <tromey@redhat.com>
768 * jcf-parse.c (java_parse_file): Ignore ZIPEMPTYMAGIC files.
769 * zipfile.h (ZIPEMPTYMAGIC): New define.
771 2007-11-01 Tom Tromey <tromey@redhat.com>
773 * Make-lang.in (java/jcf-dump.o): Depend on zipfile.h.
774 (java/jcf-parse.o): Depend on jcf-reader.c, zipfile.h, and jcf.h.
775 (java/jcf-io.o): Depend on zipfile.h.
777 2007-10-17 Richard Guenther <rguenther@suse.de>
779 * Make-lang.in (java/builtins.o): Add $(OPTABS_H) and $(EXPR_H)
782 2007-10-03 Andrew Haley <aph@redhat.com>
785 * class.c (mangled_classname): Detect and replace illegal
786 characters in assembly language symbols.
787 (gen_indirect_dispatch_tables): Call mangled_classname() on
790 2007-09-27 Jakub Jelinek <jakub@redhat.com>
792 * lang.c (java_print_error_function): Add third argument.
794 2007-09-15 Tom Tromey <tromey@redhat.com>
796 * java-tree.h (struct lang_decl_func) <function_decl_body>:
798 <init_final>: Likewise.
799 * lang.c (java_dump_tree): Update.
800 * java-tree.h (DECL_FUNCTION_BODY): Remove.
802 2007-09-11 Jan Hubicka <jh@suse.cz>
804 * decl.c (java_expand_body): Kill.
805 (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
807 2007-09-06 Tom Tromey <tromey@redhat.com>
809 * jcf-parse.c (parse_class_file): Re-enter the current file.
811 2007-09-07 Roman Zippel <zippel@linux-m68k.org>
813 * boehm.c (mark_reference_fields): Move misaligned pointer check
814 after JREFERENCE_TYPE_P test
816 2007-09-06 Roman Zippel <zippel@linux-m68k.org>
818 * boehm.c (mark_reference_fields): Don't use bitmap as gc_descr
819 if pointer is misaligned.
821 2007-09-06 Tom Tromey <tromey@redhat.com>
823 * lang.c (java_post_options): Update.
824 * jcf-parse.c (set_source_filename): Update.
825 (give_name_to_class): Update.
827 (duplicate_class_warning): Update.
828 (parse_class_file): Update.
829 (java_parse_file): Update.
830 * expr.c (expand_byte_code): Update.
832 2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
834 * decl.c (finish_method): Use set_cfun.
836 2007-09-04 Andrew Haley <aph@redhat.com>
838 * decl.c (java_init_decl_processing): Call "__cxa_end_cleanup"
839 when using the ARM EABI.
841 2007-09-03 Daniel Jacobowitz <dan@codesourcery.com>
843 * Make-lang.in (jvspec.o): Remove SHLIB_MULTILIB.
845 2007-09-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
847 * jcf-parse.c (read_class, java_parse_file): Supply a TYPE for
849 * jcf.h (JCF_FINISH): Likewise.
851 2007-08-28 Tom Tromey <tromey@redhat.com>
853 * Make-lang.in (java.tags): Don't tag '*.y' files.
855 2007-08-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
857 * lang.c (java_decl_ok_for_sibcall): Likewise.
859 2007-08-21 Paul Brook <paul@codesourcery.com>
860 Nathan Sidwell <nathan@codesourcery.com>
861 Mark Mitchell <mark@codesourcery.com>
862 Joseph Myers <joseph@codesourcery.com>
864 * jcf-dump.c (version): Use pkgversion_string. Update copyright
867 2007-08-20 Richard Guenther <rguenther@suse.de>
869 * lang.c (java_tree_inlining_walk_subtrees): Remove.
870 (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Remove.
872 2007-08-17 Tom Tromey <tromey@redhat.com>
874 * typeck.c (find_method_in_interfaces): Update.
875 * jcf-parse.c (load_class): Update.
876 * java-gimplify.c (java_gimplify_component_ref): Removed.
877 (java_gimplify_modify_expr): Update. Removed pre_p and post_p
879 (java_gimplify_expr): Update.
880 * decl.c (java_init_decl_processing): Update.
881 * class.c (set_constant_value): Update.
882 (make_class_data): Update.
883 (finish_class): Update.
884 (build_static_field_ref): Update.
885 (is_compiled_class): Update.
886 (maybe_layout_super_class): Update.
887 (layout_class): Update.
888 (layout_class_method): Update.
889 * java-tree.h (CAN_COMPLETE_NORMALLY): Removed.
890 (lang_decl_var) <am, final_iud, cif>: Removed fields.
891 (lang_decl_func) <init_calls_this>: Removed field.
892 (lang_type) <dot_class, verify_method>: Removed fields.
893 (FIELD_NESTED_ACCESS): Removed.
894 (FIELD_NESTED_ACCESS_P): Removed.
895 (DECL_FIELD_FINAL_IUD): Removed.
896 (DECL_LOCAL_FINAL_IUD): Removed
897 (LOCAL_FINAL_P): Removed.
898 (FINAL_VARIABLE_P): Removed.
899 (CLASS_FINAL_VARIABLE_P): Removed.
900 (DECL_BIT_INDEX): Removed.
901 (DECL_INIT_CALLS_THIS): Removed.
902 (FIELD_LOCAL_ALIAS): Removed.
903 (FIELD_LOCAL_ALIAS_USED): Removed.
904 (FIELD_THISN): Removed.
905 (DECL_FUNCTION_INIT_TEST_CLASS): Removed.
906 (LOCAL_CLASS_INITIALIZATION_FLAG): Removed.
907 (LOCAL_CLASS_INITIALIZATION_FLAG_P): Removed.
908 (TYPE_DOT_CLASS): Removed.
909 (TYPE_VERIFY_METHOD): Removed.
910 (ID_CLASSDOLLAR_P): Removed.
911 (enum java_tree_index) <JTI_CLASSDOLLAR_IDENTIFIER_NODE>:
913 (classdollar_identifier_node): Removed.
914 (TYPE_UNKNOWN): Removed.
915 (CLASS_FROM_SOURCE_P): Removed.
916 * expr.c (build_jni_stub): Update.
917 (force_evaluation_order): Update.
918 (build_java_empty_stmt): Update.
919 (build_class_init): Update.
920 (java_stack_swap): Update.
921 (build_jni_stub): Update.
923 2007-08-17 Tom Tromey <tromey@redhat.com>
925 * java-tree.h (LABEL_TYPE_STATE): Removed.
926 (load_type_state): Removed.
928 (LABEL_VERIFIED): Removed.
929 (type_states): Declare.
930 * expr.c (type_states): New global.
931 (load_type_state): Now static. Use type_states. Changed
933 (lookup_label): Don't set LABEL_PC.
934 (expand_byte_code): Don't use LABEL_VERIFIED.
935 (note_instructions): Initialize type_states.
936 * verify-glue.c (vfy_note_stack_depth): Rewrote.
937 (vfy_note_stack_type): Use type_states.
938 (vfy_note_local_type): Likewise.
940 2007-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
942 * jcf-parse.c (read_class, java_parse_file): Use CONST_CAST.
943 * jcf.h (JCF_FINISH): Likewise.
945 2007-07-31 Nick Clifton <nickc@redhat.com>
947 * java-gimplify.c: Change copyright header to refer to version 3
948 of the GNU General Public License and to point readers at the
949 COPYING3 file and the FSF's license web page.
950 * typeck.c, lang-specs.h, mangle_name.c, jcf-dump.c, class.c,
951 decl.c, config-lang.in, jcf-parse.c, constants.c, Make-lang.in,
952 resource.c, except.c, builtins.c, jvspec.c, java-tree.def,
953 javaop.def, jcf-path.c, verify-glue.c, jcf-depend.c, lang.opt,
954 jcf-reader.c, mangle.c, zextract.c, jcf-io.c, jcf.h, zipfile.h,
955 verify.h, java-except.h, win32-host.c, expr.c, jvgenmain.c,
956 parse.h, lang.c, java-tree.h, javaop.h, boehm.c: Likewise.
958 2007-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
960 * jcf-io.c (find_class): Fix -Wcast-qual warnings.
962 2007-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
964 * lang.c (java_get_callee_fndecl): Constify.
966 2007-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
968 * mangle.c (set_type_package_list): Constify.
969 * verify-glue.c (vfy_make_string): Delete.
970 * verify.h (vfy_make_string): Likewise.
972 2007-07-26 Tom Tromey <tromey@redhat.com>
974 * java-tree.h (push_labeled_block, pop_labeled_block): Remove.
975 (LABELED_BLOCK_LABEL, LABELED_BLOCK_BODY,
976 EXIT_BLOCK_LABELED_BLOCK): Likewise.
977 * lang.c (java_tree_inlining_walk_subtrees): Update.
978 (java_dump_tree): Likewise.
979 * java-tree.def (LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, TRY_EXPR):
981 * decl.c (push_labeled_block, pop_labeled_block): Remove.
982 * java-gimplify.c (java_gimplify_labeled_block_expr,
983 java_gimplify_exit_block_expr, java_gimplify_try_expr): Remove.
984 (java_gimplify_expr): Update.
986 2007-07-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
988 * class.c (java_treetreehash_hash, java_treetreehash_compare):
990 * expr.c (type_assertion_eq): Likewise.
991 * jcf-io.c (compare_path): Likewise.
992 * jcf-parse.c (cmpstringp): Likewise.
993 * verify-impl.c (get_one_type, compute_argument_types,
994 compute_return_type): Likewise.
996 2007-07-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1000 * class.c (hide): Wrap in HAVE_GAS_HIDDEN.
1002 2007-07-12 Richard Guenther <rguenther@suse.de>
1004 * expr.c (expand_java_return): RETURN_EXPR has void type.
1005 (build_jni_stub): Likewise. Use a comparison against zero
1006 for null-pointer test in COND_EXPR.
1007 (build_field_ref): Build POINTER_PLUS_EXPR with correct
1008 type. Convert result instead.
1009 (build_invokevirtual): Likewise.
1011 2007-07-09 Geoffrey Keating <geoffk@apple.com>
1014 * lang.c (java_init): Remove setting of force_align_functions_log.
1015 * class.c (add_method_1): Set DECL_ALIGN of non-static method
1016 to cope with ptrmemfunc_vbit_in_pfn.
1018 2007-07-03 David Daney <ddaney@avtrex.com>
1020 * java/Make-lang.in (doc/gcj.info): Add $(gcc_docdir) to
1022 (doc/gcj.dvi): Same.
1023 (doc/gcj.pdf): Same.
1024 (java/index.html): Same.
1026 2007-06-15 Andrew Pinski <andrew_pinski@playstation.sony.com>
1028 * class.c (make_class_data): Build the index in sizetype.
1029 Use POINTER_PLUS_EXPR instead of PLUS_EXPR when
1030 adding to a pointer type.
1031 (build_symbol_entry): Likewise.
1032 * expr.c (build_java_arrayaccess): Likewise.
1033 (build_field_ref): Likewise.
1034 (build_known_method_ref): Likewise.
1035 (build_invokevirtual): Likewise.
1036 * except.c (build_exception_object_ref): Do a
1037 NEGATIVE and then a POINTER_PLUS_EXPR instead
1040 2007-06-11 Rafael Ávila de Espíndola <espindola@google.com>
1042 * typeck.c (java_signed_type): Remove.
1043 * lang.c (LANG_HOOKS_SIGNED_TYPE): Remove.
1044 * java-tree.h (java_signed_type): Remove.
1046 2007-05-18 Geoffrey Keating <geoffk@apple.com>
1048 * jcf-dump.c (HANDLE_MAGIC): Use 'unsigned long' for %lx.
1049 (print_constant): Likewise.
1051 2007-05-14 Rafael Ávila de Espíndola <espindola@google.com>
1053 * expr.c (build_java_binop): Use unsigned_type_for instead of
1055 * java-tree.h (java_unsigned_type): Remove.
1056 * lang.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
1057 * typeck.c (java_unsigned_type): Remove.
1059 2007-04-21 Andrew Pinski <andrew_pinski@playstation.sony.com>
1061 * java-tree.h (lang_tree_node): Use GENERIC_NEXT
1062 instead of checking GIMPLE_STMT_P in chain_next.
1064 2007-04-06 Colin Walters <walters@redhat.com>
1066 https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=161701
1067 * jcf-io.c (open_class): Copy 'filename'.
1069 2007-04-03 Andrew Haley <aph@redhat.com>
1071 * jvgenmain.c (main): Change main to use class$, not class$$.
1072 (do_mangle_classname): Likewise.
1073 * class.c (hide): New function.
1074 (add_field): Hide everything that shouldn't be visible outside a
1076 (build_static_class_ref): Likewise.
1077 (build_classdollar_field): Likewise.
1078 (make_class_data): Likewise.
1079 (layout_class_method): Likewise.
1080 * expr.c (special_method_p): New function.
1082 * class.c (push_class): Don't bogusly guess the source filename.
1083 * jcf-parse.c (give_name_to_class): Don't set input_location from
1084 DECL_ARTIFICIAL decls.
1086 2007-03-30 Rafael Ávila de Espíndola <espindola@google.com>
1088 * typeck.c (java_signed_or_unsigned_type): Removed.
1089 (java_signed_type): use get_signed_or_unsigned_type instead of
1090 java_signed_or_unsigned_type.
1091 (java_unsigned_type): Ditto.
1092 * lang.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Removed.
1093 * java-tree.h (java_signed_or_unsigned_type): Removed.
1095 2007-03-26 Tom Tromey <tromey@redhat.com>
1097 * Make-lang.in (JAVA_MANFILES): Removed grmiregistry.1.
1098 (java.maintainer-clean): Likewise.
1099 (java.install-man): Likewise.
1100 (.INTERMEDIATE): Removed grmiregistry.pod.
1101 (grmiregistry.pod): Removed.
1102 * gcj.texi (Invoking gcjh): Removed.
1103 (Invoking gjnih): Likewise.
1104 (Invoking grmiregistry): Likewise.
1105 (direntry): Updated.
1107 (which-gcj): Removed.
1109 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
1111 * Make-lang.in: Add install-pdf target as copied from
1112 automake v1.10 rules.
1114 2007-02-27 Brooks Moses <brooks.moses@codesourcery.com>
1116 * gcj.texi: Standardize title page.
1118 2007-02-18 Kazu Hirata <kazu@codesourcery.com>
1120 * class.c: Fix a comment typo.
1122 2007-02-15 Sandra Loosemore <sandra@codesourcery.com>
1123 Brooks Moses <brooks.moses@codesourcery.com>
1124 Lee Millward <lee.millward@codesourcery.com>
1126 * java-tree.h (BUILD_MONITOR_ENTER): Use build_call_nary instead
1128 (BUILD_MONITOR_EXIT): Likewise.
1130 * java-gimplify.c (java_gimplify_component_ref): Use build_call_expr.
1131 (java_gimplify_modify_expr): Likewise.
1133 * class.c (cache_this_class_ref): Use build_call_expr.
1134 (build_static_field_ref): Likewise.
1135 (emit_indirect_register_classes): Likewise.
1136 (emit_register_classes): Likewise.
1138 * resource.c (write_resource_constructor): Use build_call_expr.
1140 * builtins.c (builtin_creator_function): Change interpretation of
1141 the second parameter to be the whole CALL_EXPR instead of the arglist.
1142 (max_builtin): Tweak parameter list. Use new CALL_EXPR accessors.
1143 (min_builtin): Likewise.
1144 (abs_builtin): Likewise.
1145 (java_build_function_call_expr): Likewise.
1146 (convert_real): Likewise.
1147 (UNMARSHAL3): Likewise.
1148 (UNMARSHAL4): Likewise.
1149 (UNMARSHAL5): Likewise.
1150 (build_arglist_for_builtin): Delete. Fix callers to use
1151 build_call_expr instead.
1152 (putObject_builtin): Tweak parameter list. Use new CALL_EXPR
1154 (compareAndSwapInt_builtin): Likewise.
1155 (compareAndSwapLong_builtin): Likewise.
1156 (compareAndSwapObject_builtin): Likewise.
1157 (putVolatile_builtin): Likewise.
1158 (getVolatile_builtin): Likewise.
1159 (VMSupportsCS8_builtin): Likewise.
1160 (check_for_builtin): Pass entire CALL_EXPR to builtin expander
1163 * expr.c (build_java_athrow): Use build_call_nary instead of build3.
1164 (build_java_throw_out_of_bounds_exception): Likewise.
1165 (java_check_reference): Likewise.
1166 (build_java_arraystore_check): Likewise.
1167 (build_newarray): Likewise.
1168 (build_anewarray): Likewise.
1169 (expand_java_multinewarray): Use build_call_list instead of build3.
1170 (build_java_monitor): Use build_call_nary instead of build3.
1171 (java_create_object): Likewise.
1172 (expand_java_NEW): Likewise.
1173 (build_instanceof): Likewise.
1174 (expand_java_CHECKCAST): Likewise.
1175 (build_java_soft_divmod): Likewise.
1176 (build_java_binop): Likewise.
1177 (build_field_ref): Likewise.
1178 (build_class_init): Likewise.
1179 (rewrite_arglist_getcaller): Use build_call_expr.
1180 (build_invokeinterface): Use build_call_nary instead of build3.
1181 (expand_invoke): Use build_call_list instead of build3.
1182 (build_jni_stub): Use build_call_nary, build_call_list, or
1183 build_call_expr instead of build3.
1184 (expand_java_field_op): Use build_call_expr instead of build3.
1185 (force_evaluation_order): Use new CALL_EXPR accessors.
1187 * lang.c (java_get_callee_fndecl): Use new CALL_EXPR accessors.
1189 2007-02-15 David Daney <ddaney@avtrex.com>
1191 * Make-lang.in (JAVA_MANFILES): Add doc/gc-analyze.1.
1192 (java.maintainer-clean):Add gc-analyze.1.
1193 (.INTERMEDIATE): Add gc-analyze.pod.
1194 (gc-analyze.pod): New rule.
1195 (java.install-man): Install gc-analyze.1
1196 * gcj.texi: Add new section for the gc-analyze program.
1198 2007-02-07 Andrew Haley <aph@redhat.com>
1200 * class.c (uncache_this_class_ref): New.
1201 * expr.c (build_jni_stub): Initialize the class.
1202 (expand_byte_code): Call uncache_this_class_ref after generating
1205 2007-02-06 Tom Tromey <tromey@redhat.com>
1208 * jvspec.c (lang_specific_driver): Check for the '-' in '-I'.
1210 2007-02-03 Kazu Hirata <kazu@codesourcery.com>
1212 * java-tree.h, javaop.def, jcf-parse.c: Fix comment typos.
1214 2007-02-02 Andrew Haley <aph@redhat.com>
1216 * expr.c (expand_byte_code): Call cache_this_class_ref() and
1217 cache_cpool_data_ref().
1218 Set TYPE_CPOOL_DATA_REF.
1219 (cache_cpool_data_ref): New function.
1220 * constants.c (build_ref_from_constant_pool): Remove special-case
1221 code for flag_indirect_classes.
1222 (build_constant_data_ref): Move special-case code for
1223 flag_indirect_classes here from build_ref_from_constant_pool.
1224 * decl.c (finish_method): Move class initialization from here to
1225 cache_this_class_ref.
1226 * class.c (cache_this_class_ref): New function.
1227 (build_class_ref): Use this_classdollar for the ouput class.
1229 2007-02-02 David Daney <ddaney@avtrex.com>
1231 * class.c (is_compiled_class): Move check to avoid reloading
1233 (layout_class_method): Don't calculate DECL_EXTERNAL if it is
1236 2007-02-01 Andrew Haley <aph@redhat.com>
1239 * jcf-parse.c (jcf_parse): Clear the field_offsets bitmap.
1241 2007-01-31 Kazu Hirata <kazu@codesourcery.com>
1243 * class.c, jcf-parse.c: Fix comment typos.
1245 2007-01-30 Tom Tromey <tromey@redhat.com>
1247 * gcj.texi (Strings): Fix documentation for JvNewString.
1249 2007-01-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1251 * gcj.texi (Invoking gcjh, Invoking gjnih, Arrays): Fix some
1254 2007-01-30 Ben Elliston <bje@au.ibm.com>
1256 * jvspec.c (lang_specific_driver): Remove unused classpath_args.
1258 2007-01-29 Tom Tromey <tromey@redhat.com>
1261 * jvspec.c (lang_specific_driver): Handle separate -I argument.
1262 * lang.opt (-I): Add 'Separate'.
1264 2007-01-29 Andrew Haley <aph@redhat.com>
1266 * class.c (add_method_1): Mark fndecl as external unless we are
1267 compiling it into this object file.
1269 2007-01-24 Andrew Haley <aph@redhat.com>
1271 * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): current_class is a
1272 type node, not a decl, so use TYPE_SYNTHETIC not CLASS_SYNTHETIC.
1274 2007-01-22 Andrew Haley <aph@redhat.com>
1276 * builtins.c (VMSupportsCS8_builtin): New function.
1278 2007-01-23 Andrew Pinski <pinskia@gmail.com>
1281 * jcf-io.c (opendir_in_zip): Close the file
1282 and free zipf before returning after an error.
1284 2007-01-16 Tom Tromey <tromey@redhat.com>
1286 * java-tree.def: Added copyright header.
1288 2007-01-15 Tom Tromey <tromey@redhat.com>
1290 * lang.c (dump_compound_expr) <EXPR_WITH_FILE_LOCATION>: Removed
1292 * java-gimplify.c (java_gimplify_expr) <EXPR_WITH_FILE_LOCATION>:
1294 * java-tree.h (EXPR_WFL_EMIT_LINE_NOTE): Removed.
1295 (EXPR_WFL_NODE): Likewise.
1296 (EXPR_WFL_LINECOL): Likewise.
1297 (EXPR_WFL_FILENAME): Likewise.
1298 (EXPR_WFL_LINENO): Likewise.
1299 (build_expr_wfl, expr_add_location): Don't declare.
1300 (build_unknown_wfl): Removed.
1301 (EXPR_WFL_FILENAME_NODE): Removed.
1302 (EXPR_WFL_COLNO): Removed.
1303 (EXPR_WFL_SET_LINECOL): Removed.
1304 (DECL_FUNCTION_WFL): Removed.
1305 (DECL_FIELD_FINAL_WFL): Removed.
1306 (struct lang_decl_func) <wfl>: Removed field.
1307 <called_constructor>: Likewise.
1308 <inner_access>: Likewise.
1309 (struct lang_decl_var) <wfl>: Removed field.
1310 (DECL_CONSTRUCTOR_CALLS): Removed.
1311 (DECL_FUNCTION_ACCESS_DECL): Likewise.
1312 (DECL_FUNCTION_INNER_ACCESS): Likewise.
1313 (DECL_SPECIFIC_COUNT): Likewise.
1314 * java-tree.def (EXPR_WITH_FILE_LOCATION): Removed.
1315 * expr.c (build_expr_wfl): Removed.
1316 (expr_add_location): Likewise.
1318 2007-01-12 Tom Tromey <tromey@redhat.com>
1320 * jcf-dump.c (main): Updated call to find_class.
1321 * lang.c (java_init): Removed dead code.
1322 * jcf-parse.c (read_class): Don't use java_source field. Removed
1324 (parse_zip_file_entries): Don't use java_source field.
1325 (process_zip_dir): Likewise.
1326 (jcf_parse): Removed dead code.
1327 (java_parse_file): Likewise.
1328 (read_class): Updated call to find_class.
1329 * jcf-io.c (find_class): Don't use java_source field. Removed
1330 'source_ok' argument, .java logic.
1331 * jcf.h (JCF) <java_source>: Removed field.
1332 (JCF_ZERO): Updated. (find_class): Updated.
1333 * decl.c: Removed dead code.
1334 * class.c: Removed dead code.
1336 2007-01-11 Tom Tromey <tromey@redhat.com>
1338 * typeck.c (convert): Don't use flag_emit_class_files.
1339 * lang.c (java_post_options): Don't use flag_emit_class_files.
1340 (java_handle_option): Don't use flag_extraneous_semicolon or
1342 * jcf-parse.c (HANDLE_CONSTANTVALUE): Don't use
1343 flag_emit_class_files.
1344 (load_class): Likewise.
1345 * java-tree.h (flag_emit_class_files): Don't declare.
1346 (STATIC_CLASS_INIT_OPT_P): Don't use flag_emit_class_files.
1347 (flag_extraneous_semicolon): Don't declare.
1348 (flag_not_overriding): Likewise.
1349 (flag_static_local_jdk1_1): Likewise.
1350 (flag_redundant): Likewise.
1351 * expr.c (build_newarray): Don't use flag_emit_class_files.
1352 * class.c (DEFAULT_ENABLE_ASSERT): Don't use
1353 flag_emit_class_files.
1354 (build_class_ref): Likewise.
1355 * builtins.c (check_for_builtin): Don't use
1356 flag_emit_class_files.
1358 2007-01-10 Tom Tromey <tromey@redhat.com>
1360 * lang.c (java_can_use_bit_fields_p): Removed.
1361 (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): Removed.
1363 2007-01-09 Andrew Haley <aph@redhat.com>
1365 * expr.c (build_java_arrayaccess): Rewrite to generate array
1366 access in canonical form.
1367 (expand_java_arraystore): Use build_fold_addr_expr() on address of
1370 2007-01-03 Andrew Haley <aph@redhat.com>
1373 * expr.c (expand_java_field_op): If we're initializing a field's
1374 declaring interface we should not also initialize the class
1375 context in which it was referenced.
1377 2007-01-02 Tom Tromey <tromey@redhat.com>
1379 * java-tree.h (compiling_from_source, current_encoding,
1380 JTI_FINIT_IDENTIFIER_NODE, JTI_INSTINIT_IDENTIFIER_NODE,
1381 JTI_LENGTH_IDENTIFIER_NODE, JTI_SUPER_IDENTIFIER_NODE,
1382 JTI_CONTINUE_IDENTIFIER_NODE, JTI_ACCESS0_IDENTIFIER_NODE,
1383 JTI_WFL_OPERATOR): Removed
1384 (finit_identifier_node, instinit_identifier_node,
1385 length_identifier_node, super_identifier_node,
1386 continue_identifier_node, access0_identifier_node, wfl_operator):
1388 (cyclic_inheritance_report,
1389 DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND,
1390 DECL_FUNCTION_NAP, DECL_FUNCTION_SYNTHETIC_CTOR,
1391 DECL_FIXED_CONSTRUCTOR_P): Removed.
1392 (struct lang_decl_func) <smic, nap, synthetic_ctor, fixed_ctor>:
1394 (TYPE_FINIT_STMT_LIST, TYPE_CLINIT_STMT_LIST, TYPE_II_STMT_LIST,
1395 TYPE_IMPORT_LIST, TYPE_IMPORT_DEMAND_LIST): Removed.
1396 (struct lang_type) <finit_stmt_list, clinit_stmt_list, ii_block,
1397 import_list, import_demand_list>: Removed.
1398 (java_layout_seen_class_methods, init_jcf_parse, init_src_parse,
1399 cxx_keyword_p): Removed.
1400 (DECL_FINIT_P, DECL_INSTINIT_P, ID_FINIT_P, ID_INSTINIT_P,
1401 TYPE_UNUSED, TYPE_UNDERFLOW, TYPE_UNEXPECTED,
1402 CLASS_ACCESS0_GENERATED_P, CLASS_HAS_FINIT_P,
1403 IS_A_SINGLE_IMPORT_CLASSFILE_NAME_P, IS_A_CLASSFILE_NAME,
1404 IS_AN_IMPORT_ON_DEMAND_P, COMPOUND_ASSIGN_P, SWITCH_HAS_DEFAULT,
1405 PRIMARY_P, MODIFY_EXPR_FROM_INITIALIZATION_P,
1406 CLASS_METHOD_CHECKED_P, FOR_LOOP_P, ANONYMOUS_CLASS_P,
1407 LOCAL_CLASS_P, ARG_FINAL_P, SUPPRESS_UNREACHABLE_ERROR,
1408 RESOLVE_PACKAGE_NAME_P, RESOLVE_TYPE_NAME_P, IS_BREAK_STMT_P,
1409 IS_CRAFTED_STRING_BUFFER_P, IS_INIT_CHECKED, CALL_USING_SUPER,
1410 NESTED_FIELD_ACCESS_IDENTIFIER_P, TOPLEVEL_CLASS_DECL_P,
1411 PURE_INNER_CLASS_TYPE_P, TOPLEVEL_CLASS_TYPE_P,
1412 CALL_CONSTRUCTOR_P, CALL_EXPLICIT_CONSTRUCTOR_P,
1413 CALL_THIS_CONSTRUCTOR_P, CALL_SUPER_CONSTRUCTOR_P,
1414 FINALLY_EXPR_LABEL, FINALLY_EXPR_BLOCK, BLOCK_IS_IMPLICIT,
1415 BLOCK_EMPTY_P, IS_UNCHECKED_EXCEPTION_P, java_error_count,
1416 java_parse_abort_on_error, extract_field_decl): Removed.
1418 * lang.c: (compiling_from_source, current_encoding): Removed.
1419 (java_handle_option): Ignore -fencoding.
1420 * parse.h: Don't include lex.h.
1421 (java_error_count, int_fits_type_p, stabilize_reference, RULE,
1422 RECOVERED, DRECOVERED, RECOVER, DRECOVER, YYERROR_NOW,
1423 YYNOT_TWICE, CLASS_MODIFIERS, FIELD_MODIFIERS, METHOD_MODIFIERS,
1424 INTERFACE_MODIFIERS, INTERFACE_INNER_MODIFIERS,
1425 INTERFACE_METHOD_MODIFIERS, INTERFACE_FIELD_MODIFIERS,
1426 MODIFIER_WFL, THIS_MODIFIER_ONLY, parse_error_context,
1427 ABSTRACT_CHECK, JCONSTRUCTOR_CHECK, exit_java_complete_class,
1428 CLASS_OR_INTERFACE, GET_REAL_TYPE, GET_TYPE_NAME,
1429 OBSOLETE_MODIFIER_WARNING, OBSOLETE_MODIFIER_WARNING2,
1430 BUILD_PTR_FROM_NAME, INCOMPLETE_TYPE_P,
1431 JAVA_MAYBE_GENERATE_DEBUG_INFO, JBSC_TYPE_P, JSTRING_P,
1432 JNULLP_TYPE_P, JDECL_P, TYPE_INTERFACE_P, TYPE_CLASS_P,
1433 IDENTIFIER_INNER_CLASS_OUTER_FIELD_ACCESS,
1434 MANGLE_OUTER_LOCAL_VARIABLE_NAME,
1435 MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_ID,
1436 MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_STRING,
1437 SKIP_THIS_AND_ARTIFICIAL_PARMS, MARK_FINAL_PARMS,
1438 UNMARK_FINAL_PARMS, CRAFTED_PARAM_LIST_FIXUP,
1439 AIPL_FUNCTION_CREATION, AIPL_FUNCTION_DECLARATION,
1440 AIPL_FUNCTION_CTOR_INVOCATION, AIPL_FUNCTION_FINIT_INVOCATION,
1441 ERROR_CANT_CONVERT_TO_BOOLEAN, ERROR_CANT_CONVERT_TO_NUMERIC,
1442 ERROR_CAST_NEEDED_TO_INTEGRAL, ERROR_VARIABLE_NOT_INITIALIZED,
1443 LOOP_EXPR_BODY_MAIN_BLOCK, LOOP_EXPR_BODY_UPDATE_BLOCK,
1444 LOOP_EXPR_BODY_CONDITION_EXPR, LOOP_EXPR_BODY_LABELED_BODY,
1445 LOOP_EXPR_BODY_BODY_EXPR, PUSH_LABELED_BLOCK, POP_LABELED_BLOCK,
1446 PUSH_LOOP, POP_LOOP, PUSH_EXCEPTIONS, POP_EXCEPTIONS,
1447 IN_TRY_BLOCK_P, EXCEPTIONS_P, ANONYMOUS_ARRAY_BASE_TYPE,
1448 ANONYMOUS_ARRAY_DIMS_SIG, ANONYMOUS_ARRAY_INITIALIZER,
1449 INVOKE_STATIC, INVOKE_NONVIRTUAL, INVOKE_SUPER, INVOKE_INTERFACE,
1450 INVOKE_VIRTUAL, jdep_code, struct _jdep, JDEP_DECL, JDEP_DECL_WFL,
1451 JDEP_KIND, JDEP_WFL, JDEP_MISC, JDEP_ENCLOSING, JDEP_CLASS,
1452 JDEP_APPLY_PATCH, JDEP_GET_PATCH, JDEP_CHAIN, JDEP_TO_RESOLVE,
1453 JDEP_RESOLVED_DECL, JDEP_RESOLVED, JDEP_RESOLVED_P, struct
1454 jdeplist_s, jdeplists, CLASSD_FIRST, CLASSD_LAST, CLASSD_CHAIN,
1455 JDEP_INSERT, SET_TYPE_FOR_RESOLUTION, WFL_STRIP_BRACKET,
1456 STRING_STRIP_BRACKETS, PROMOTE_RECORD_IF_COMPLETE,
1457 BLOCK_CHAIN_DECL, GET_CURRENT_BLOCK, EXPR_WFL_GET_LINECOL,
1458 EXPR_WFL_QUALIFICATION, QUAL_WFL, QUAL_RESOLUTION, QUAL_DECL_TYPE,
1459 GET_SKIP_TYPE, COMPLETE_CHECK_OP, COMPLETE_CHECK_OP_0,
1460 COMPLETE_CHECK_OP_1, COMPLETE_CHECK_OP_2, BUILD_APPEND,
1461 BUILD_STRING_BUFFER, BUILD_THROW, SET_WFL_OPERATOR,
1462 PATCH_METHOD_RETURN_ERROR, CHECK_METHODS, CLEAR_DEPRECATED,
1463 CHECK_DEPRECATED_NO_RESET, CHECK_DEPRECATED, REGISTER_IMPORT,
1464 CURRENT_OSB, struct parser_ctxt, GET_CPC_LIST, CPC_INNER_P,
1465 GET_CPC, GET_CPC_UN, GET_CPC_UN_MODE, GET_CPC_DECL_NODE,
1466 GET_ENCLOSING_CPC, GET_NEXT_ENCLOSING_CPC,
1467 GET_ENCLOSING_CPC_CONTEXT, INNER_ENCLOSING_SCOPE_CHECK, PUSH_CPC,
1468 PUSH_ERROR, POP_CPC, DEBUG_CPC, CPC_INITIALIZER_LIST,
1469 CPC_STATIC_INITIALIZER_LIST, CPC_INSTANCE_INITIALIZER_LIST,
1470 CPC_INITIALIZER_STMT, CPC_STATIC_INITIALIZER_STMT,
1471 CPC_INSTANCE_INITIALIZER_STMT, SET_CPC_INITIALIZER_STMT,
1472 SET_CPC_STATIC_INITIALIZER_STMT,
1473 SET_CPC_INSTANCE_INITIALIZER_STMT, JAVA_NOT_RADIX10_FLAG,
1474 java_complete_class, java_check_circular_reference,
1475 java_fix_constructors, java_layout_classes, java_reorder_fields,
1476 java_method_add_stmt, java_get_line_col, reset_report,
1477 java_init_lex, yyparse, java_parse, yyerror, java_expand_classes,
1478 java_finish_classes, ctxp, ctxp_for_generation,
1479 ctxp_for_generation_last): Removed.
1480 * expr.c (force_evaluation_order): Don't mention NEW_CLASS_EXPR.
1481 * mangle.c (utf8_cmp): New function.
1482 (cxx_keywords): New global.
1483 (cxx_keyword_p): New function.
1484 * jvspec.c (JAVA_START_CHAR): Removed obsolete comment.
1485 * java-tree.def (UNARY_PLUS_EXPR, NEW_ARRAY_EXPR,
1486 NEW_ANONYMOUS_ARRAY_EXPR, NEW_CLASS_EXPR, THIS_EXPR,
1487 CASE_EXPR, DEFAULT_EXPR, JAVA_CATCH_EXPR, SYNCHRONIZED_EXPR,
1488 THROW_EXPR, CONDITIONAL_EXPR, INSTANCEOF_EXPR, NEW_ARRAY_INIT,
1489 CLASS_LITERAL, JAVA_EXC_OBJ_EXPR): Removed.
1490 * Make-lang.in (java.srcextra): Do nothing.
1491 (parse.c, keyword.h, gt-java-parse.h): Removed targets.
1492 (JAVA_OBJS): Don't mention deleted files.
1493 (java.mostlyclean): Likewise.
1494 (java.clean): Likewise.
1495 (JAVA_LEX_C): Removed.
1496 (buffer.o, check-init.o, parse.o): Remove unused targets.
1497 (typeck.o): Updated.
1498 * jcf-parse.c (read_class): Comment out unused code.
1499 (java_layout_seen_class_methods): New function.
1500 (parse_source_file_1, parse_source_file_2, parse_source_file_3):
1502 (java_parse_file): Comment out unused code. Don't use 'ctxp'.
1503 (init_jcf_parse): Removed.
1504 * config-lang.in (gtfiles): Remove deleted files.
1505 * decl.c (java_init_decl_processing): Don't initialize
1506 finit_identifier_node, instinit_identifier_node,
1507 length_identifier_node, super_identifier_node,
1508 continue_identifier_node, access0_identifier_node. Don't call
1510 * class.c (cyclic_inheritance_report): New global.
1511 (add_method_1): Don't use
1512 DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND.
1513 (maybe_layout_super_class): Comment out code.
1514 (safe_layout_class): New function.
1515 * java-gimplify.c (java_gimplify_expr): Removed CASE_EXPR,
1516 DEFAULT_EXPR, NEW_ARRAY_INIT, JAVA_CATCH_EXPR, JAVA_EXC_OBJ_EXPR,
1517 UNARY_PLUS_EXPR, NEW_ARRAY_EXPR, NEW_ANONYMOUS_ARRAY_EXPR,
1518 NEW_CLASS_EXPR, SYNCHRONIZED_EXPR, CONDITIONAL_EXPR,
1519 INSTANCEOF_EXPR, CLASS_LITERAL, THIS_EXPR.
1520 (java_gimplify_case_expr): Removed.
1521 (java_gimplify_default_expr): Likewise.
1522 (java_gimplify_new_array_init): Likewise.
1524 * keyword.gperf, keyword.h: Removed.
1525 * chartables.h: Removed.
1526 * check-init.c: Removed.
1527 * buffer.c, buffer.h: Removed.
1528 * convert.h: Removed.
1529 * gen-table.pl: Removed.
1530 * lex.c, lex.h: Removed.
1532 2007-01-02 Andrew Haley <aph@redhat.com>
1534 * expr.c (expand_java_arraystore): Make sure we perform a bounds
1535 check at runtime before we perform a type check.
1537 2006-12-19 Andrew Haley <aph@redhat.com>
1539 * decl.c: Bump minor BC ABI version.
1541 2006-12-13 Gary Benson <gbenson@redhat.com>
1543 * jcf-depend.c (jcf_dependency_add_file): Mark filename unused.
1545 2006-12-12 Tom Tromey <tromey@redhat.com>
1547 * lang-specs.h: Pass -M options to jc1.
1548 * jcf-depend.c (jcf_dependency_add_file): Don't emit
1551 2006-12-07 Mohan Embar <gnustuff@thisiscool.com>
1553 * jcf-path.c (jcf_path_compute): Use platform PATH_SEPARATOR.
1555 2006-12-06 Mohan Embar <gnustuff@thisiscool.com>
1557 * lang-specs.h: Pass '%U'-based options as separate arguments.
1559 2006-12-05 Tom Tromey <tromey@redhat.com>
1562 * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): Mark fields and
1564 * class.c (add_field): Handle ACC_SYNTHETIC.
1565 (add_method_1): Likewise. Handle bridge and varargs.
1566 (get_access_flags_from_decl): Handle synthetic, bridge, varargs,
1568 (set_class_decl_access_flags): Handle synthetic and annotation.
1569 * java-tree.h (METHOD_BRIDGE): New macro.
1570 (METHOD_VARARGS): Likewise.
1571 (TYPE_SYNTHETIC): Likewise.
1572 (TYPE_ANNOTATION): Likewise.
1573 (lang_type): New fields 'synthetic' and 'annotation'.
1574 (lang_decl_func): New fields 'varargs' and 'bridge'.
1576 2006-12-04 Andrew Haley <aph@redhat.com>
1578 * jcf-parse.c (rewrite_reflection_indexes): Don't do anything if
1581 2006-11-29 Gary Benson <gbenson@redhat.com>
1583 * expr.c (rewrite_arglist_getcaller): Reorder.
1585 2006-11-29 Andrew Haley <aph@redhat.com>
1587 * expr.c (rewrite_arglist_getcaller): Remove DECL_INLINE.
1588 * lang.c (java_decl_ok_for_sibcall): Check for DECL_INLINE.
1590 2006-11-23 Andrew Haley <aph@redhat.com>
1592 * expr.c (rewrite_arglist_getcaller): New.
1593 (rewrite_arglist_getclass): Fix indentation.
1594 (rules): Add gnu.classpath.VMStackWalker.getCallingClass() and
1595 gnu.classpath.VMStackWalker.getCallingClassLoader().
1596 * builtins.c (initialize_builtins): Remove duplicate def'n of
1598 Add __builtin_return_address.
1600 2006-11-22 Andrew Haley <aph@redhat.com>
1602 * jcf-reader.c (get_attribute): Mark attr_type unused.
1604 * builtins.c (compareAndSwapObject_builtin): Fix declaration.
1606 2007-01-08 Richard Guenther <rguenther@suse.de>
1608 * lex.c (do_java_lex): Use build_int_cst_wide_type.
1609 * jcf-parse.c (get_constant): Likewise.
1611 2006-11-12 Jan Hubicka <jh@suse.cz>
1613 * resource.c (compile_resource_data): Update for new varpool names.
1614 * java/class.c (build_utf8_ref): Likewise.
1616 2006-11-12 David Daney <ddaney@avtrex.com>
1619 * typeck.c (build_java_array_type): Increase buffer sizes.
1621 2006-11-11 Richard Guenther <rguenther@suse.de>
1623 * check-init.c (check_init): Remove handling of FIX_CEIL_EXPR,
1624 FIX_FLOOR_EXPR and FIX_ROUND_EXPR.
1626 2006-11-06 Andrew Haley <aph@redhat.com>
1628 * java-tree.h (CONSTANT_LazyFlag): New.
1629 * constants.c (build_constants_constructor): Mask CONSTANT_LazyFlag.
1630 * jcf-parse.c (handle_innerclass_attribute): Write attribute to
1632 (handle_constant): Return 0 for dummy cpool entries.
1633 Handle constants of kind Class.
1634 Handle constants of kind NameAndType.
1635 (handle_enclosingmethod_attribute): New.
1636 (handle_signature_attribute): New.
1637 (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): New.
1638 (HANDLE_SIGNATURE_ATTRIBUTE): New.
1639 (handle_constant): Use unmangle_classname()rather than calling
1640 identifier_subst() directly.
1642 2006-11-02 Andrew Haley <aph@redhat.com>
1644 * java-tree.h (FIELD_ENUM): New.
1645 (lang_decl_var.field_enum): New.
1646 (lang_type.enum_class): New.
1648 * class.c (set_class_decl_access_flags): Handle enum types.
1649 (add_field): Handle enum fields.
1650 (get_access_flags_from_decl): Likewise.
1652 * class.c (make_class_data): Put reflection_data into rodata.
1654 2006-11-01 Andrew Haley <aph@redhat.com>
1656 * jcf-parse.c (field_offsets, bit_obstack): New variables.
1657 (jcf_parse): Write end marker to annotation_data.
1658 (java_parse_file): Create field_offsets bitmap. Destroy it.
1659 (annotation_grow, annotation_rewrite_byte)
1660 (annotation_rewrite_short, annotation_rewrite_int)
1661 (annotation_read_short, annotation_write_byte)
1662 (annotation_write_short, annotation_write_int)
1663 (handle_long_constant, handle_constant, handle_element_value)
1664 (handle_annotation, handle_annotations)
1665 (handle_annotation_attribute, rewrite_reflection_indexes)
1666 (handle_member_annotations, handle_parameter_annotations)
1667 (handle_default_annotation): New functions.
1668 (HANDLE_RUNTIMEVISIBLEANNOTATIONS_ATTRIBUTE)
1669 (HANDLE_RUNTIMEINVISIBLEANNOTATIONS_ATTRIBUTE)
1670 (HANDLE_RUNTIMEVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE)
1671 (HANDLE_RUNTIMEINVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE)
1672 (HANDLE_ANNOTATIONDEFAULT_ATTRIBUTE): New definitions.
1673 * java-tree.h (enum jv_attr_type, enum jv_attr_kind): New.
1674 (TYPE_REFLECTION_DATA): New.
1675 (TYPE_REFLECTION_DATASIZE): New.
1676 * jcf.h (enum cpool_tag): Convert a bunch of #define constants to
1678 * jcf-reader.c (get_attribute): Pass field/method index and
1679 attribute type to get_attribute().
1680 * constants.c (find_class_or_string_constant): Make nonstatic.
1681 (cpool_for_class): Likewise.
1682 (build_constants_constructor): Separate string and scalar types.
1683 * class.c (make_class_data): Generate field_indexes permutation.
1684 Pass it to rewrite_reflection_indexes().
1685 (make_class_data): Generate constructor for reflection_data field.
1687 2006-10-20 Tom Tromey <tromey@redhat.com>
1689 * gcj.texi (Top): Don't mention jv-scan.
1690 (Invoking gcj): Likewise.
1691 (Invoking gcjh): Likewise.
1692 (Invoking gjnih): Likewise.
1693 (Invoking gij): Likewise.
1694 (Invoking gcj-dbtool): Likewise.
1695 (Invoking jv-scan): Removed.
1696 * parse-scan.y: Removed.
1697 * jv-scan.c: Removed.
1698 * config-lang.in (stagestuff): Don't mention jv-scan.
1699 * Make-lang.in (java): Removed jv-scan.
1700 (JAVA_TARGET_INDEPENDENT_BIN_TOOLS): Likewise.
1701 (JVSCAN_OBJS): Removed.
1702 (jv-scan$(exeext)): Likewise.
1703 (JAVA_MANFILES): Removed jv-scan.1.
1704 (java.uninstall): Don't mention jv-scan.
1705 (java.mostlyclean): Likewise.
1706 (java.maintainer-clean): Likewise.
1707 (.INTERMEDIATE): Likewise.
1708 (java/jv-scan.o): Removed.
1709 (jv-scan.pod): Likewise.
1710 (java.srcextra): Don't mention parse-scan.c.
1711 (java.mostlyclean): Likewise.
1712 (java/parse-scan.c): Removed.
1713 (java/parse-scan.o-warn): Removed.
1714 (java/parse-scan.o): Removed.
1716 2006-10-20 Tom Tromey <tromey@redhat.com>
1718 * lang.c (java_handle_option): Don't use
1719 jcf_write_base_directory.
1720 * jcf.h (jcf_write_base_directory): Removed.
1721 * parse.y (java_expand_classes): Don't call write_classfile.
1722 * config-lang.in (gtfiles): Removed jcf-write.c.
1723 * Make-lang.in (JAVA_OBJS): Removed jcf-write.o.
1724 (java/jcf-write.o): Removed.
1725 * jcf-parse.c (parse_class_file): Don't call write_classfile.
1726 * java-tree.h (write_classfile): Removed declaration.
1727 * jcf-write.c: Removed.
1729 2006-10-20 Tom Tromey <tromey@redhat.com>
1731 * Make-lang.in (java): Removed gjnih, gcjh.
1732 (JAVA_TARGET_INDEPENDENT_BIN_TOOLS): Likewise.
1733 (GCJH_OBJS): Removed.
1734 (GJNIH_OBJS): Likewise.
1735 (gjnih$(exeext)): Likewise.
1736 (gcjh$(exeext)): Likewise.
1737 (JAVA_MANFILES): Removed gcjh.1, gjnih.1.
1738 (java.install-common): Don't special case gcjh.
1739 (java.uninstall): Don't mention gcjh, gjnih.
1740 (java.mostlyclean): Likewise.
1741 (java.maintainer-clean): Likewise.
1742 (.INTERMEDIATE): Likewise.
1743 (gcjh.pod): Removed.
1744 (gjnih.pod): Likewise.
1745 (GCJH_TARGET_INSTALL_NAME): Removed.
1746 (java/gjavah-jni.o): Removed.
1747 (java/gjavah.o): Likewise.
1748 * config-lang.in (stagestuff): Removed gjnih, gcjh.
1749 * gjavah.c: Removed.
1751 2006-10-17 Tom Tromey <tromey@redhat.com>
1753 * jcf-dump.c (print_element_value): Expect a utf8 constant in the
1756 2006-10-17 Tom Tromey <tromey@redhat.com>
1758 * jvgenmain.c (main): Handle -findirect-dispatch.
1759 * jvspec.c (jvgenmain_spec): Pass -findirect-dispatch to
1762 2006-10-06 Andrew Haley <aph@redhat.com>
1764 * builtins.c (compareAndSwapInt_builtin): Check that we really do
1765 have a compare_and_swap builtin.
1766 (compareAndSwapLong_builtin): Likewise.
1767 (compareAndSwapObject_builtin): Likewise.
1769 2006-10-04 Andrew Haley <aph@redhat.com>
1771 * builtins.c (java_builtins): Add compareAndSwapInt,
1772 compareAndSwapLong, compareAndSwapObject, putOrderedInt,
1773 putOrderedLong, putOrderedObject, putIntVolatile, putLongVolatile,
1774 putObjectVolatile, getObjectVolatile, getIntVolatile,
1775 getLongVolatile, getLong.
1776 (UNMARSHAL3): New macro.
1777 (UNMARSHAL4): Likewise.
1778 (UNMARSHAL5): Likewise.
1779 (build_arglist_for_builtin): New function.
1780 (build_addr_sum, build_check_this): New functions.
1781 (putObject_builtin. compareAndSwapInt_builtin,
1782 compareAndSwapLong_builtin, compareAndSwapObject_builtin,
1783 putVolatile_builtin, getVolatile_builtin): New builtins.
1785 2006-06-08 Andrew Haley <aph@redhat.com>
1787 * expr.c (build_field_ref): Pass NULL_TREE as SPECIAL arg to
1788 get_symbol_table_index().
1789 (maybe_rewrite_invocation): Set SPECIAL if we need to access a
1791 (build_known_method_ref): New arg: special. Pass it to
1792 get_symbol_table_index.
1793 (get_symbol_table_index): Put SPECIAL in the TREE_PURPOSE field of
1795 (build_invokevirtual): New arg: special. Pass it to
1796 get_symbol_table_index.
1797 (expand_invoke): New variable: special.
1798 Pass it to maybe_rewrite_invocation().
1799 Pass it to build_known_method_ref().
1800 * class.c (build_symbol_entry): Add new arg: special. Use it to
1801 build the symbol table conbstructor.
1802 (emit_symbol_table): Extract SPECIAL from the method list and pass
1803 it to build_symbol_entry().
1804 * parse.y (patch_invoke): Call maybe_rewrite_invocation() and set
1805 special accordingly.
1807 2006-09-08 Andrew Haley <aph@redhat.com>
1809 * class.c (layout_class_method): Use build_java_signature, not
1810 build_java_argument_signature. Use lookup_java_method, not
1811 lookup_argument_method.
1813 2006-08-16 Jakub Jelinek <jakub@redhat.com>
1814 Bryce McKinlay <bryce@mckinlay.net.nz>
1816 * jvspec.c (lang_specific_driver): Add -s-bc-abi when needed.
1818 2006-07-18 Tom Tromey <tromey@redhat.com>
1820 * lang.opt: Added missing -W options.
1822 2006-07-12 Tom Tromey <tromey@redhat.com>
1825 * lang-specs.h: Pass '%U'-based options as separate arguments.
1826 Use -faux-classpath.
1827 * lang.c (java_handle_option): Handle OPT_faux_classpath.
1828 * lang.opt (faux-classpath): New option.
1830 2006-07-07 Tom Tromey <tromey@redhat.com>
1832 * class.c (make_class_data): Set value for reflection_data field.
1833 * decl.c (java_init_decl_processing): Add reflection_data field.
1835 2006-07-07 Tom Tromey <tromey@redhat.com>
1837 * jcf-dump.c (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): Declare locals
1839 (HANDLE_SIGNATURE_ATTRIBUTE): Likewise.
1841 2006-07-07 Andrew Haley <aph@redhat.com>
1843 * jcf-parse.c (set_source_filename): Don't check for
1844 CLASS_FROM_CURRENTLY_COMPILED_P.
1847 2006-07-07 Andrew Haley <aph@redhat.com>
1849 * java-tree.h (java_read_sourcefilenames): Declare.
1850 * lang.c (java_handle_option): Call java_read_sourcefilenames().
1851 * lang.opt (fsource-filename): New opt.
1852 * lang-specs.h: Add -fsource-filename.
1853 * jcf-parse.c (num_files, filenames): New variables.
1854 (reverse, cmpstringp, java_read_sourcefilenames,
1855 find_sourcefile): New.
1856 (set_source_filename): Call find_sourcefile to find the real name
1859 2006-06-27 Tom Tromey <tromey@redhat.com>
1861 * jcf-reader.c (get_attribute): Handle EnclosingMethod,
1862 Signature, LocalVariableTypeTable, annotation attributes.
1863 * jcf-dump.c (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): New macro.
1864 (HANDLE_SIGNATURE_ATTRIBUTE): Likewise.
1865 (HANDLE_START_FIELD): Mention 'descriptor', not 'signature'.
1866 (HANDLE_METHOD): Likewise.
1867 (HANDLE_LOCALVARIABLETYPETABLE_ATTRIBUTE): New macro.
1868 (print_annotation): New function.
1869 (print_element_value): Likewise.
1871 (HANDLE_RUNTIMEVISIBLEANNOTATIONS_ATTRIBUTE): New macro.
1872 (HANDLE_RUNTIMEINVISIBLEANNOTATIONS_ATTRIBUTE): Likewise.
1873 (print_parameter_annotations): New function.
1874 (HANDLE_RUNTIMEVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE): New macro.
1875 (HANDLE_RUNTIMEINVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE):
1877 (HANDLE_ANNOTATIONDEFAULT_ATTRIBUTE): Likewise.
1878 (print_annotations): New function.
1880 2006-06-23 Tom Tromey <tromey@redhat.com>
1882 * lang-specs.h: Default -fsource and -ftarget to 1.5. If
1883 emitting class files, always use 1.5.
1884 * gcj.texi (Input Options): Document -fsource.
1885 (Code Generation): Document -ftarget.
1887 2006-06-21 Tom Tromey <tromey@redhat.com>
1890 * expr.c (expand_java_field_op): Initialize field's declaring
1893 2006-06-20 Tom Tromey <tromey@redhat.com>
1895 * expr.c (push_value): Always flush quick stack.
1897 2006-06-19 Tom Tromey <tromey@redhat.com>
1899 * expr.c (push_value): Also flush quick stack if value is a
1902 2006-06-19 Tom Tromey <tromey@redhat.com>
1904 * expr.c (push_value): Flush quick stack if value has side
1907 2006-06-13 Tom Tromey <tromey@redhat.com>
1909 * class.c (is_compiled_class): Explicitly check for current
1912 2006-06-09 Tom Tromey <tromey@redhat.com>
1914 * gjavah.c (decompile_method): Don't decompile a static field
1917 2006-06-06 Tom Tromey <tromey@redhat.com>
1919 * lang-specs.h <jc1>: Add .jar file to command line if
1920 -fsaw-java-file. Also, remove -ffilelist-file in this case.
1922 2006-06-05 Tom Tromey <tromey@redhat.com>
1924 * jcf-dump.c (print_access_flags): Handle varargs, bridge,
1925 synthetic, enum, annotation.
1926 * jcf.h (ACC_BRIDGE): New macro.
1927 (ACC_VARARGS): Likewise.
1928 (ACC_SYNTHETIC): Likewise.
1929 (ACC_ENUM): Likewise.
1930 (ACC_ANNOTATION): Likewise.
1932 2006-06-04 Tom Tromey <tromey@redhat.com>
1934 * lang.opt (-fsaw-java-file, -fsource, -ftarget): New options.
1935 * jvspec.c (jvgenmain_spec): Remove -fsaw-java-file, -fsource,
1937 (lang_specific_driver): Removed dead code. Add -fsaw-java-file
1938 when needed. Handle classpath-setting.
1939 * Make-lang.in ($(GCJ)$(exeext)): Link in jcf-path.o.
1940 * lang-specs.h: Rewrote.
1942 2006-06-04 Tom Tromey <tromey@redhat.com>
1944 * jcf-io.c (find_class): Set source_ok to 0.
1945 * jcf-parse.c (jcf_parse): Disable gnu.gcj.gcj-compiled warning.
1946 (parse_class_file): Don't call java_mark_class_local.
1947 (java_parse_file): Skip .java files. Call java_mark_class_local
1948 before lowering any code.
1949 (parse_zip_file_entries): Don't call duplicate_class_warning
1951 (process_zip_dir): ... call it here.
1952 * class.c (add_field): Don't mark field external if it is being
1953 compiled into this object.
1954 (make_class_data): Handle situation where class_dtable_decl is
1955 created before Class is compiled.
1956 (is_compiled_class): Don't assume files in zip are compiled into
1958 (layout_class_method): Don't mark method external if it is being
1959 compiled into this object.
1961 2006-06-04 Tom Tromey <tromey@redhat.com>
1963 * jcf-path.c (jcf_path_compute): New function.
1964 * jcf.h (jcf_path_compute): Declare.
1966 2006-10-23 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
1968 * decl.c: Include langhooks.h.
1969 (builtin_function): Remove.
1970 (java_init_decl_processing): Replace calls to builtin_function
1971 with add_builtin_function.
1972 * Make-lang.in (jc1$(exeext)): Depend on and link with attribs.o.
1973 (java/decl.o): Depend on langhooks.h.
1974 * java-tree.h (builtin_function): Remove.
1976 2006-10-10 Brooks Moses <bmoses@stanford.edu>
1978 * Make-lang.in: Added "java.pdf", "gcj.pdf" target support.
1980 2006-09-12 Tom Tromey <tromey@redhat.com>
1982 * expr.c (push_value): Always flush quick stack.
1984 2006-09-12 Tom Tromey <tromey@redhat.com>
1987 * jcf-write.c (generate_bytecode_insns) <CALL_EXPR>: Always note
1988 the push of the called method's return result.
1990 2006-09-12 Tom Tromey <tromey@redhat.com>
1992 * jvspec.c (lang_specific_driver): Read spec file even if
1995 2006-09-12 Tom Tromey <tromey@redhat.com>
1998 * expr.c (expand_java_field_op): Initialize field's declaring
1999 interface if necessary.
2001 2006-09-12 Tom Tromey <tromey@redhat.com>
2004 * expr.c (expand_java_field_op): No error for assignments not in
2005 class initializer or constructor.
2007 2006-08-22 Andrew Haley <aph@redhat.com>
2009 * decl.c (java_add_stmt): Give the statement list a type.
2011 2006-08-16 Jakub Jelinek <jakub@redhat.com>
2012 Bryce McKinlay <bryce@mckinlay.net.nz>
2014 * jvspec.c (lang_specific_driver): Add -s-bc-abi when needed.
2016 2006-08-10 Simon Martin <simartin@users.sourceforge.net>
2019 * parse.y (build_incdec): Emit an error instead of an ICE if '++'
2020 or '--' is used with a constant operand.
2021 (java_complete_lhs): When processing a '++' or '--' expression,
2022 don't call java_complete_tree but java_complete_lhs, so that a
2023 static final variable operand is never replaced by its value. This
2024 avoids an ICE later on.
2025 (patch_unaryop): Fixed typo in comment.
2027 2006-07-28 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
2029 * Make-lang.in: Use $(HEADER_H) instead of header.h in dependencies.
2031 2006-07-12 Bryce McKinlay <mckinlay@redhat.com>
2033 * builtins.c (check_for_builtin): If a builtin could result in a
2034 direct call being generated, don't use it if flag_indirect_dispatch
2037 2006-07-12 Bryce McKinlay <mckinlay@redhat.com>
2039 * gcj.texi (Invocation): Corrections for Invocation API example.
2041 2006-07-04 Andrew Haley <aph@redhat.com>
2043 * class.c (build_fieldref_cache_entry): Set DECL_IGNORED_P on the
2046 2006-06-21 Andrew Haley <aph@redhat.com>
2048 * java-tree.h (update_aliases): Remove
2049 * expr.c (expand_iinc): Remove call to update_aliases().
2050 (STORE_INTERNAL): Likewise.
2051 * decl.c (update_aliases, initialize_local_variable)
2052 (maybe_pushlevels): Set DECL_VALUE_EXPR for debugging decls.
2054 2006-06-19 Andrew Haley <aph@redhat.com>
2058 * expr.c (java_modify_addr_for_volatile): New function.
2059 (expand_java_field_op): Handle volatile fields.
2060 * java-gimplify.c (java_gimplify_component_ref): Call
2061 java_modify_addr_for_volatile to give the field_ref the correct
2063 (java_gimplify_modify_expr): Likewise.
2064 * java-tree.h (java_modify_addr_for_volatile): New decl.
2066 2006-06-17 Karl Berry <karl@gnu.org>
2068 * gcj.texi (@dircategory): Use "Software development" instead
2069 of "Programming", following the Free Software Directory.
2071 2006-06-16 Andrew Haley <aph@redhat.com>
2073 * class.c (make_class_data): When using flag_indirect_classes,
2074 don't initialize the vtable of Class instances.
2076 2006-06-09 Andrew Haley <aph@redhat.com>
2080 * builtins.c (initialize_builtins): Add __sync_synchronize().
2081 * class.c (add_field): Mark volatile fields.
2082 * java-gimplify.c (java_gimplify_expr): Call new functions to
2083 handle self-modifying exprs and COMPONENT_REFs.
2084 (java_gimplify_component_ref): New.
2085 (java_gimplify_modify_expr): Add handling for volatiles.
2087 2006-06-08 Tom Tromey <tromey@redhat.com>
2089 * gcj.texi (libgcj Runtime Properties): Document
2090 gnu.gcj.user.realname.
2092 2006-06-08 Andrew Haley <aph@redhat.com>
2094 * expr.c (build_field_ref): Pass NULL_TREE as SPECIAL arg to
2095 get_symbol_table_index().
2096 (maybe_rewrite_invocation): Set SPECIAL if we need to access a
2098 (build_known_method_ref): New arg: special. Pass it to
2099 get_symbol_table_index.
2100 (get_symbol_table_index): Put SPECIAL in the TREE_PURPOSE field of
2102 (build_invokevirtual): New arg: special. Pass it to
2103 get_symbol_table_index.
2104 (expand_invoke): New variable: special.
2105 Pass it to maybe_rewrite_invocation().
2106 Pass it to build_known_method_ref().
2107 * class.c (build_symbol_entry): Add new arg: special. Use it to
2108 build the symbol table conbstructor.
2109 (emit_symbol_table): Extract SPECIAL from the method list and pass
2110 it to build_symbol_entry().
2111 * parse.y (patch_invoke): Call maybe_rewrite_invocation() and set
2112 special accordingly.
2114 2006-06-06 David Daney <ddaney@avtrex.com>
2116 * gcj.texi (libgcj Runtime Properties): Document
2117 gnu.gcj.runtime.NameFinder.show_raw and
2118 gnu.gcj.runtime.NameFinder.remove_unknown.
2120 2006-06-06 Tom Tromey <tromey@redhat.com>
2122 * jcf-dump.c (print_access_flags): Handle varargs, bridge,
2123 synthetic, enum, annotation.
2124 * jcf.h (ACC_BRIDGE): New macro.
2125 (ACC_VARARGS): Likewise.
2126 (ACC_SYNTHETIC): Likewise.
2127 (ACC_ENUM): Likewise.
2128 (ACC_ANNOTATION): Likewise.
2130 2006-06-06 Mike Stump <mrs@apple.com>
2132 * Make-lang.in: Rename to htmldir to build_htmldir to avoid
2133 installing during build.
2135 2006-05-31 Thomas Fitzsimmons <fitzsim@redhat.com>
2137 * gcj.texi (Extensions): Document the new gcj-dbtool-based
2138 classname-to-library resolution mechanism.
2139 Declare the old gnu.gcj.runtime.VMClassLoader.library_control
2140 mechanism deprecated.
2141 (libgcj Runtime Properties): Document
2142 gnu.gcj.runtime.VMClassLoader.library_control's new default.
2144 2006-05-29 Jakub Jelinek <jakub@redhat.com>
2146 * javaop.h (int16, int32, int64): Define to exactly 16 (resp. 32, 64)
2148 (jword): Define to uint64 on 64-bit arches.
2149 * jcf-dump.c (print_constant): Cast JPOOL_UINT to long.
2151 2006-05-28 Kazu Hirata <kazu@codesourcery.com>
2153 * class.c, except.c, expr.c, java-gimplify.c: Fix comment
2156 2006-05-26 Tom Tromey <tromey@redhat.com>
2158 * expr.c (java_push_constant_from_pool): Handle 'ldc class'.
2159 * verify-glue.c (vfy_class_type): New function.
2160 * verify-impl.c (check_constant): Allow 'ldc class'.
2161 * verify.h (vfy_class_type): Declare.
2163 2006-05-25 Andrew Haley <aph@redhat.com>
2166 * decl.c (maybe_pushlevels): When variable ranges are non-nested
2167 update all lifetimes, not just the first one.
2169 2006-05-24 Tom Tromey <tromey@redhat.com>
2171 * java-tree.h: Fixed flag documentation.
2173 2006-05-24 Tom Tromey <tromey@redhat.com>
2176 * jcf.h (ACC_INVISIBLE): Changed value.
2178 2006-05-24 Andrew Haley <aph@redhat.com>
2181 * decl.c (java_add_stmt): Use a STATEMENT_LIST rather than a
2184 2006-05-16 H.J. Lu <hongjiu.lu@intel.com>
2186 * lang.opt (femit-class-file): Remove VarExists.
2188 2006-05-16 Tom Tromey <tromey@redhat.com>
2190 * verify-impl.c (verify_instructions_0) <op_return>: Special case
2193 2006-05-16 H.J. Lu <hongjiu.lu@intel.com>
2196 * Make-lang.in ($(GCJ)$(exeext)): Replace gcc.o with
2199 2006-05-14 H.J. Lu <hongjiu.lu@intel.com>
2201 * Make-lang.in (java/decl.o): Add dependency on $(TARGET_H).
2202 (java/expr.o): Replace target.h with $(TARGET_H).
2203 (java/parse.o): Likewise.
2205 2006-05-10 Andrew Haley <aph@redhat.com>
2207 * class.c (emit_indirect_register_classes): Fix comment.
2209 2006-05-04 Tom Tromey <tromey@redhat.com>
2211 * java-tree.h (uses_jv_markobj_p): Declare.
2212 * class.c (uses_jv_markobj_p): Removed.
2213 * boehm.c (PROCEDURE_OBJECT_DESCRIPTOR): New define.
2214 (get_boehm_type_descriptor): Use it.
2215 (uses_jv_markobj_p): Moved from class.c. Return bool.
2217 2006-05-04 Tom Tromey <tromey@redhat.com>
2219 * java-tree.def (THIS_EXPR): Now a tcc_expression.
2221 2006-05-04 Andrew Haley <aph@redhat.com>
2223 * class.c (make_field_value): Always build_address_of fdecl if
2224 there is an initializer.
2226 2006-05-03 Andrew Haley <aph@redhat.com>
2229 * expr.c (maybe_rewrite_invocation): New function.
2230 (rewrite_arglist_getclass): Likewise.
2232 (expand_invoke): Call maybe_rewrite_invocation.
2233 * parse.y (patch_invoke): Likewise.
2234 * java-tree.h: (maybe_rewrite_invocation): New function.
2236 2006-04-21 Andrew Haley <aph@redhat.com>
2238 * lang.c (java_init): Handle flag_indirect_classes.
2239 * jvgenmain.c: Use "class$$" instead of "class$".
2240 * mangle.c (java_mangle_decl): Accept RECORD_TYPEs sw well as
2242 (mangle_class_field): Special case "class$$" as well as "class$".
2243 * constants.c (build_ref_from_constant_pool): If
2244 flag_indirect_classes, generate a ref into the heap.
2245 * decl.c (constants_field_decl_node,
2246 constants_data_field_decl_node): New.
2247 * class.c (build_static_class_ref): New.
2248 (build_classdollar_field): Factor out from build_class_ref().
2249 (make_field_value): Handle static fields in heap.
2250 (make_class_data): Make sure we get a static ref to class.
2251 Make class initializer const if flag_indirect_classes.
2252 (register_class): Build a class_ref for initialization if
2253 flag_indirect_classes.
2254 (emit_indirect_register_classes): New.
2256 2006-04-08 Kazu Hirata <kazu@codesourcery.com>
2258 * expr.c, gjavah.c: Fix comment typos.
2260 2006-04-03 Andrew Haley <aph@redhat.com>
2263 * expr.c (build_field_ref): Don't check the field offset if
2266 2006-03-30 Andrew Haley <aph@redhat.com>
2269 * lang.c (java_attribute_table): New.
2270 (LANG_HOOKS_ATTRIBUTE_TABLE): Define.
2271 * expr.c (build_field_ref): Add a null pointer check for all
2272 fields of offset > 4k. Don't do so for accesses via the this
2273 pointer, which we know can never be null.
2274 * class.c (build_java_method_type): Mark arg 1 of all nonstatic
2277 2006-03-30 Carlos O'Donell <carlos@codesourcery.com>
2279 * Make-lang.in: Rename docdir to gcc_docdir.
2281 2006-03-30 Tom Tromey <tromey@redhat.com>
2284 * parse.y (java_reorder_fields): Reset superclass field's size as
2287 2006-03-28 Tom Tromey <tromey@redhat.com>
2290 * parse.y (find_most_specific_methods_list): Added 'class'
2292 (lookup_method_invoke): Updated.
2294 2006-03-15 Tom Tromey <tromey@redhat.com>
2296 * jcf-write.c (generate_bytecode_insns): Use qualifying type for
2297 non-static method calls.
2299 2006-03-15 David Daney <ddaney@avtrex.com>
2301 * java-tree.h : Moved comment for TYPE_DOT_CLASS adjacent to its
2304 2006-03-15 David Daney <ddaney@avtrex.com>
2306 * lang.opt (-freduced-reflection): New option.
2307 * lang.c (java_post_options): Generate an error if
2308 -freduced-reflection used with -fjni or -findirect-dispatch.
2309 * java-tree.h (flag_reduced_reflection): Declare new variable.
2310 * boehm.c (get_boehm_type_descriptor): Indicate all pointers
2311 if bitmap overflows and flag_reduced_reflection set.
2312 * class.c (uses_jv_markobj_p): New function.
2313 (make_class_data): Moved generation of vtable to before
2314 reflection data, generate less reflection data if
2315 flag_reduced_reflection set.
2316 * gcj.texi: Document -freduced-reflection.
2318 2006-03-15 Tom Tromey <tromey@redhat.com>
2321 * class.c (get_interface_method_index): Don't put <clinit> into
2324 2006-03-15 Tom Tromey <tromey@redhat.com>
2326 * parse.y (analyze_clinit_body): Ignore empty statements.
2328 2006-03-08 David Daney <ddaney@avtrex.com>
2330 * gcj.texi: Document -static-libgcj option.
2332 2006-02-20 Andrew Haley <aph@redhat.com>
2334 * jcf-parse.c (parse_class_file): Set input_location from
2337 2006-02-15 Andrew Haley <aph@redhat.com>
2339 * class.c (GEN_TABLE): Don't pushdecl *_SYMS_DECL here.
2340 (make_class_data): pushdecl_top_level TYPE_OTABLE_SYMS_DECL,
2341 TYPE_ATABLE_SYMS_DECL, TYPE_ITABLE_SYMS_DECL here.
2343 2006-02-09 Andrew Haley <aph@redhat.com>
2346 * expr.c (expand_invoke): Allow methods in arrays to be resolved
2347 in their superclass.
2349 * typeck.c (build_java_array_type): Generate TYPE_STUB_DECLs for
2352 2006-02-08 Tom Tromey <tromey@redhat.com>
2355 * check-init.c (check_init): Handle VIEW_CONVERT_EXPR.
2356 * builtins.c (convert_real): New function.
2357 (java_builtins): Handle Float.intBitsToFloat,
2358 Float.floatToRawIntBits, Double.longBitsToDouble,
2359 Double.doubleToRawLongBits.
2361 2006-02-07 Andrew Haley <aph@redhat.com>
2363 * expr.c (expand_invoke): (BC mode.) If we find a method in a
2364 class other than the one in which we expected to find it, ignore
2368 * constants.c (build_constants_constructor): move initializer into
2369 first halfword on a 64-bit big-endian machine.
2371 2006-02-04 Tom Tromey <tromey@redhat.com>
2374 * builtins.c (max_builtin): Skip floating point 'max'.
2375 (min_builtin): Skip floating point 'min'.
2376 (check_for_builtin): Never return NULL_TREE.
2378 2006-02-04 Tom Tromey <tromey@redhat.com>
2381 * expr.c (push_type): Avoid side effect in gcc_assert.
2383 2006-02-04 Roger Sayle <roger@eyesopen.com>
2385 * decl.c (java_init_decl_processing): Create char_type_node as a
2386 regular INTEGER_TYPE node.
2387 (push_promoted_type): Preserve TYPE_STRING_FLAG on types.
2388 * typeck.c (convert): No longer check for CHAR_TYPEs but instead
2389 test for char_type_node and promoted_char_type_node as special
2390 instances of INTEGER_TYPE tree codes.
2391 (promote_type,build_java_signature): Likewise.
2392 * jcf-write.c (adjust_typed_op): Likewise.
2393 * mangle.c (mangle_type): Likewise.
2394 * parse.y (do_unary_numeric_promotion): No longer handle CHAR_TYPE.
2395 * parse.h (JINTEGRAL_TYPE_P): Likewise.
2397 2006-02-04 Andreas Tobler <a.tobler@schweiz.ch>
2399 * expr.c (java_stack_swap): Revert gcc_assert patch.
2401 2006-02-03 Ben Elliston <bje@au.ibm.com>
2403 * java-gimplify.c: Use gcc_assert and gcc_unreachable throughout.
2404 * typeck.c: Likewise.
2405 * verify-impl.c: Likewise.
2406 * class.c: Likewise.
2408 * jcf-parse.c: Likewise.
2409 * constants.c: Likewise.
2410 * check-init.c: Likewise.
2411 * jcf-write.c: Likewise.
2412 * verify-glue.c: Likewise.
2413 * mangle.c: Likewise.
2416 * boehm.c: Likewise.
2418 2006-02-01 Jan Hubicka <jh@suse.cz>
2420 * decl.c (end_java_method): Kill hack disabling unit-at-a-time.
2421 * lang.c (java_init_options): Set no_unit_at_a_time_default.
2423 2006-01-30 Andrew Haley <aph@redhat.com>
2426 * parse.y: (source_start_java_method): Mark DECL_ARTIFICIAL("this").
2428 2006-01-21 Joseph S. Myers <joseph@codesourcery.com>
2430 * jv-scan.c (version), jcf-dump.c (version), gjavah.c (version):
2431 Update copyright notice dates.
2433 2006-01-16 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
2435 * jvspec.c (lang_specific_spec_functions): Remove.
2437 2006-01-06 Tom Tromey <tromey@redhat.com>
2439 * gcj.texi (Arrays): Added more documentation for
2441 (Primitive types): Correct information about primitive classes.
2442 (Reference types): New node.
2445 2005-12-16 Alexandre Oliva <aoliva@redhat.com>
2447 * jcf-parse.c (set_source_filename): Set the decl source location
2448 even when returning early.
2450 2005-12-15 Tom Tromey <tromey@redhat.com>
2451 Andrew Haley <aph@redhat.com>
2454 * parse.y (resolve_expression_name): Don't generate accessor
2455 methods for constant fields.
2457 2005-12-13 Andrew Haley <aph@redhat.com>
2461 * class.c (maybe_layout_super_class): Update current_class before
2462 calling do_resolve_class.
2464 2005-12-12 H.J. Lu <hongjiu.lu@intel.com>
2467 * jcf-write.c (write_classfile): Use PID in temporary class
2468 file. Save/restore errno when reporting error.
2470 2005-12-10 Terry Laurenzo <tlaurenzo@gmail.com>
2473 * mangle.c (mangle_method_decl): Mangle Java methods by prepending 'J'
2474 to bare_function_type and including the return type
2475 * builtins.c (initialize_builtins) : Change builtin mangled name
2476 constants to conform to new mangling scheme
2478 2005-12-08 Andrew Haley <aph@redhat.com>
2481 * java-tree.h (enum java_tree_index): Add JTI_SOFT_NOSUCHFIELD_NODE.
2482 (soft_abstractmethod_node): New.
2483 * expr.c (build_field_ref): Add in-line check for missing field.
2484 * decl.c (java_init_decl_processing): Add soft_nosuchfield_node.
2486 2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
2488 * Make-lang.in (java.all.build, java.install-normal): Remove.
2490 2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
2492 * Make-lang.in: Remove all dependencies on s-gtype, except for
2495 2005-12-07 Richard Sandiford <richard@codesourcery.com>
2497 * class.c (build_utf8_ref, emit_register_classes): Use
2498 switch_to_section and get_section.
2500 2005-12-06 Tom Tromey <tromey@redhat.com>
2503 * parse.y (patch_new_array_init): Revert previous patch.
2504 (lookup_method_invoke): Use size-less array type when creating an
2505 anonymous constructor.
2507 2005-12-05 Tom Tromey <tromey@redhat.com>
2509 * parse.y (patch_new_array_init): Don't set length on array.
2511 2005-12-02 Richard Guenther <rguenther@suse.de>
2513 * java-gimplify.c (java_gimplify_labeled_block_expr): Use
2514 buildN instead of build.
2515 * class.c (finish_class): Likewise.
2516 * expr.c (java_create_object): Likewise.
2518 2005-11-28 Tom Tromey <tromey@redhat.com>
2521 * expr.c (build_jni_stub): Unwrap the return value.
2522 * java-tree.h (soft_unwrapjni_node): New define.
2523 (enum java_tree_index): Added JTI_SOFT_UNWRAPJNI_NODE.
2524 * decl.c (java_init_decl_processing): Initialize
2525 soft_unwrapjni_node.
2527 2005-11-24 Bryce McKinlay <mckinlay@redhat.com>
2529 * gcj.texi (gij options): Add -Xss documentation.
2531 2005-11-08 Wil Mahan <wmahan@gmail.com>
2534 * zextract.c (read_zip_archive): Fix out of memory error when
2535 reading jar files with zip-style comments.
2537 2005-11-07 Terry Laurenzo <tlaurenzo@gmail.com>
2539 * gjavah.c (HANDLE_CODE_ATTRIBUTE): Only define for ELF Object
2541 * gjavah.c (decompile_method): Add ATTRIBUTE_UNUSED
2543 2005-10-12 Nathan Sidwell <nathan@codesourcery.com>
2544 Wil Mahan <wmahan@gmail.com>
2547 * class.c (make_class): Create empty binfo here.
2548 (set_super_info): Only create binfo if we have superclasses.
2550 2005-10-03 Ranjit Mathew <rmathew@gcc.gnu.org>
2553 * parse.y (method_header): Make the result of the rule a NULL_TREE
2554 when a parsing error occurs.
2556 2005-09-29 Tom Tromey <tromey@redhat.com>
2559 * jcf-io.c (memoized_dirlist_hash): New function.
2560 (caching_stat): Use it.
2562 2005-09-21 Ranjit Mathew <rmathew@gcc.gnu.org>
2565 * class.c (inherits_from_p): Try to lay out super class
2566 if it is not already laid out.
2567 (maybe_layout_super_class): Handle the case where SUPER_CLASS
2570 2005-09-18 James A. Morrison <phython@gcc.gnu.org>
2572 * builtins.c (max_builtin, min_builtin, abs_builtin,
2573 java_build_function_call_expr): Use fold_buildN.
2574 * class.c (layout_class_method): Likewise.
2575 * expr.c (java_truthvalue_conversion, build_java_jsr,
2576 build_java_arrayaccess, expand_java_arrayload, expand_iinc,
2577 build_java_binop, build_field_ref, expand_compare,
2578 build_known_method_ref, build_invokevirtual,
2579 process_jvm_instruction): Likewise.
2580 * parse.y (patch_binop, patch_exit_expr): Likewise.
2581 * typeck.c (convert_ieee_real_to_integer): Likewise.
2582 (convert): Don't call fold after convert_ieee_real_to_integer.
2584 2005-09-14 Bryce McKinlay <mckinlay@redhat.com>
2587 * parse.y (maybe_create_class_interface_decl): Set TYPE_PACKAGE for
2588 the newly created type. Set import lists here, not in create_class.
2589 (jdep_resolve_class): Set current_class.
2590 (do_resolve_class): Use current_class's TYPE_PACKAGE to determine
2591 the current package context, not ctxp->package.
2592 (cicp_cache): Removed.
2593 (class_in_current_package): Simplify implementation using TYPE_PACKAGE.
2594 * jcf-parse.c (give_name_to_class): Set TYPE_PACKAGE.
2595 * java-tree.h (TYPE_PACKAGE): New macro.
2596 (struct lang_type): New member 'package'.
2598 2005-09-09 Andrew Haley <aph@redhat.com>
2601 * expr.c (pop_type_0): If the expected type is object or ptr
2602 (i.e. void*), return the type of the object we just popped from
2605 2005-09-06 Andrew Pinski <pinskia@physics.uc.edu>
2607 * java-gimplify.c (java_gimplify_block): NULL out the old BLOCK's
2608 BLOCK_EXPR_BODY before returning the new BIND_EXPR.
2610 2005-09-06 Kazu Hirata <kazu@codesourcery.com>
2612 * check-init.c, decl.c, expr.c, gcj.texi, java-tree.h,
2613 jcf-parse.c, jcf.h, parse.h, parse.y, typeck.c: Fix comment
2614 typos. Follow spelling conventions.
2616 2005-09-05 Ranjit Mathew <rmathew@hotmail.com>
2619 * typeck.c (lookup_do): Look up interfaces for the original class,
2621 * parse.y (java_check_regular_methods): Fix diagnostic message for
2622 more restrictive overriding of a method from an interface.
2624 2005-08-16 Tom Tromey <tromey@redhat.com>
2626 * class.c (make_class_data): Always emit JV_STATE_PRELOADING for
2627 class' initial state.
2629 2005-08-16 Ranjit Mathew <rmathew@hotmail.com>
2632 * lex.c (do_java_lex): Define MAX_TOKEN_LEN. Avoid overflowing
2633 `literal_token' for large numeric input tokens.
2635 2005-08-16 Ranjit Mathew <rmathew@hotmail.com>
2638 * parse.y (nested_field_access_p): Rename to nested_member_access_p
2639 and expand to handle method accesses across nested classes.
2640 (build_outer_method_access_method): Rename to
2641 build_nested_method_access_method. Minor adjustments to comments.
2642 (resolve_expression_name): Use the newly-renamed
2643 nested_member_access_p method.
2644 (resolve_qualified_expression_name): Likewise.
2645 (patch_method_invocation): Also consider static methods for access
2646 method generation. Minor adjustments to comments.
2647 (maybe_use_access_method): Use the more general
2648 nested_memeber_access_p to determine access across nested class
2649 boundaries. Allow THIS_ARG to be NULL (for static methods).
2651 2005-08-15 Tom Tromey <tromey@redhat.com>
2654 * expr.c (build_field_ref): Don't generate otable reference when
2655 DECL_FIELD_OFFSET is 0.
2656 * class.c (maybe_layout_super_class): Pass outer class to
2659 2005-08-15 Tom Tromey <tromey@redhat.com>
2661 * java-tree.h (LABEL_IN_SUBR): Removed.
2662 (LABEL_IN_SUBR): Likewise.
2663 (LABEL_IS_SUBR_START): Likewise.
2664 (LABEL_SUBR_START): Likewise.
2665 (LABEL_SUBR_CONTEXT): Likewise.
2666 (LABEL_CHANGED): Likewise.
2667 (LABEL_RETURN_LABEL): Likewise.
2668 (LABEL_RETURN_TYPE_STATE): Likewise.
2669 (LABEL_RETURN_LABELS): Likewise.
2670 (RETURN_MAP_ADJUSTED): Likewise.
2671 (LABEL_PENDING_CHAIN): Likewise.
2673 2005-08-15 Tom Tromey <tromey@redhat.com>
2675 * Make-lang.in (JAVA_OBJS): Removed verify.o
2676 (java/verify.o): Removed.
2677 * verify.c: Removed.
2678 * lang.c (flag_new_verifier): Removed.
2679 (java_post_options): Updated.
2680 * java-tree.h (flag_new_verifier): Removed.
2681 (verify_jvm_instructions): Removed.
2682 * expr.c (pop_type_0): Assume flag_new_verifier is true.
2683 (build_java_check_indexed_type): Likewise.
2684 (expand_java_arraystore): Likewise.
2685 (expand_java_arrayload): Likewise.
2686 (pop_arguments): Likewise.
2687 (expand_byte_code): Likewise.
2688 (process_jvm_instruction): Likewise.
2690 2005-08-10 Andrew Haley <aph@redhat.com>
2692 * java-gimplify.c (java_gimplify_modify_expr): Fix any pointer
2693 type mismatches to make legal GIMPLE.
2695 2005-08-10 Robin Green <greenrd@greenrd.org>
2698 * parse.y (maybe_use_access_method): Generalize check from
2699 java.lang.Object to any superclass of current_class
2701 2005-08-08 Nathan Sidwell <nathan@codesourcery.com>
2703 * class.c (build_class_ref): Wrap the primary class type in a
2705 * parse.y (java_complete_lhs) <COMPONENT_REF case>: Extract the
2706 primary class type from the NOP_EXPR in which it was placed.
2708 2005-07-28 Diego Novillo <dnovillo@redhat.com>
2710 * expr.c (expand_load_internal): Fix missing parens in
2713 2005-07-28 Andrew Haley <aph@redhat.com>
2715 * expr.c (expand_load_internal): Convert to destination type.
2717 2005-07-22 Manfred Hollstein <mh@suse.com>
2719 * verify-impl.c (check_class_constant): Fix uninitialised warnings.
2720 (check_constant): Likewise.
2721 (check_wide_constant): Likewise.
2723 2005-07-20 Giovanni Bajo <giovannibajo@libero.it>
2725 Make CONSTRUCTOR use VEC to store initializers.
2726 * check-init.c (check_init): Update to cope with VEC in
2728 * class.c (make_field_value, make_method_value, get_dispatch_table,
2729 make_class_data, emit_symbol_table, emit_catch_table,
2730 emit_assertion_table): Use build_constructor_from_list instead of
2732 * constants.c (build_constants_constructor): Likewise.
2733 * java-gimplify.c (java_gimplify_new_array_init): Update to cope with
2734 VEC in CONSTRUCTOR_ELTS.
2735 * java-tree.h (START_RECORD_CONSTRUCTOR, PUSH_SUPER_VALUE,
2736 PUSH_FIELD_VALUE, FINISH_RECORD_CONSTRUCTOR): Create a VEC instead
2738 * jcf-write.c (generate_bytecode_insns): Update to cope with VEC in
2740 * parse.y (build_new_array_init): Use build_constructor_from_list
2741 instead of build_constructor.
2742 (patch_new_array_init): Update to cope with VEC in
2744 (array_constructor_check_entry): Likewise.
2746 2005-07-12 Tom Tromey <tromey@redhat.com>
2748 * jvspec.c (lang_specific_driver): Put filelist_filename first on
2751 2005-07-12 Tom Tromey <tromey@redhat.com>
2754 * parse-scan.y (interface_member_declaration): Added
2757 2005-07-08 Daniel Berlin <dberlin@dberlin.org>
2759 * java-tree.h (LABEL_RETURN_LABELS): Use decl_non_common.
2760 (LABEL_PENDING_CHAIN): Ditto.
2762 (DECL_BIT_INDEX): Ditto.
2764 2005-07-07 Bryce McKinlay <mckinlay@redhat.com>
2767 * parse.y (inner_class_accessible): New function. Logic moved from
2768 check_inner_class_access.
2769 (check_inner_class_access): Use inner_class_accessible.
2770 (resolve_inner_class): Simplify arguments. Create circularity hash
2771 here. Keep looking for classes if we found one that was inaccessible.
2772 Return the inaccessible class only if there is no other match.
2773 (do_resolve_class): Update for new resolve_inner_class arguments.
2774 Don't create circularity_hash here.
2776 2005-07-07 Bryce McKinlay <mckinlay@redhat.com>
2779 * parse.y (add_exception_to_throws): New function.
2780 (purge_unchecked_exceptions): Removed.
2781 (get_constructor_super): Renamed from verify_constructor_super. Now
2782 returns the super constructor after verification.
2783 (java_complete_expand_method): Don't use purge_unchecked_exceptions
2784 or save/restore the exception list.
2785 (check_thrown_exceptions): Add uncaught exceptions in anonymous
2786 class initializers and constructors to the throws clause of the method.
2788 2005-07-05 Bryce McKinlay <mckinlay@redhat.com>
2791 * parse.y (interface_member_declaration): Allow empty statements in
2792 interface declarations.
2794 2005-07-05 Paolo Bonzini <bonzini@gnu.org>
2796 * Makefile.in (parse.o): Adjust dependencies.
2797 * parse.y: Include tree-dump.h.
2799 2005-07-02 Joseph S. Myers <joseph@codesourcery.com>
2801 * class.c, decl.c, expr.c: Use '+' flag instead of %J. Use 'q'
2804 2005-07-01 Andrew Pinski <pinskia@physics.uc.edu>
2806 * parse.y (issue_warning_error_from_context): Call
2807 pp_output_formatted_text to be able to get the buffer.
2809 2005-06-30 Andrew Pinski <pinskia@physics.uc.edu>
2811 * parse.y (issue_warning_error_from_context): Update for the
2812 renaming of pp_format_text to pp_format.
2814 2005-06-28 Paul Brook <paul@codesourcery.com>
2816 * decl.c (java_init_decl_processing): Call
2817 default_init_unwind_resume_libfunc.
2819 2005-06-27 Tom Tromey <tromey@redhat.com>
2821 PR java/21540, PR java/13788:
2822 * parse.y (java_complete_lhs) <CASE_EXPR>: Use
2823 fold_constant_for_init.
2824 (patch_binop): Added 'folding' argument. Updated all callers.
2825 (patch_unaryop) <NOP_EXPR>: New case.
2826 (fold_constant_for_init) <NOP_EXPR>: Likewise.
2827 (fold_constant_for_init) <COND_EXPR>: Fix sense of test.
2829 2005-06-25 Jan Hubicka <jh@suse.cz>
2831 * builtins.c (define_builtin): Accept new flags parameter.
2832 (initialize_builtins): Mark the builtins const and nothrow accordingly.
2834 2005-06-25 Kelley Cook <kcook@gcc.gnu.org>
2836 * all files: Update FSF address in copyright headers.
2838 2005-06-24 Tom Tromey <tromey@redhat.com>
2840 * verify-impl.c (verify_instructions_0): Correctly handle
2841 situation where PC falls off end.
2843 2005-06-23 Bryce McKinlay <mckinlay@redhat.com>
2846 * parse.y (find_most_specific_methods_list): Remove special case for
2849 2005-06-15 Tom Tromey <tromey@redhat.com>
2852 * class.c (make_method_value): Use soft_abstractmethod_node for
2854 * java-tree.h (soft_abstractmethod_node): New define.
2855 (JTI_SOFT_ABSTRACTMETHOD_NODE): New enum constant.
2856 * decl.c (java_init_decl_processing): Initialize
2857 soft_abstractmethod_node.
2859 2005-06-13 Geoffrey Keating <geoffk@apple.com>
2861 * Make-lang.in (rule for installing gcj.1): Depends on installdirs.
2863 2005-06-13 Per Bothner <per@bothner.com>
2865 * expr.c (int highest_label_pc_this_method,
2866 start_label_pc_this_method): New globals.
2867 (lookup_label): Add start_label_pc_this_method to pc for label, and
2868 update highest_label_pc_this_method. This prevents conflicts between
2869 labels from different methods.
2870 * java-tree.h: Declare new globals.
2871 * jcf-parse.c (parse_class_file): If needed bump
2872 start_label_pc_this_method and reset highest_label_pc_this_method.
2874 2005-06-13 Tom Tromey <tromey@redhat.com>
2877 * parse.y (nested_field_access_p): Handle case where outer field
2878 is inherited by enclosing class.
2880 2005-06-12 Per Bothner <per@bothner.com>
2882 * class.c (inherits_from_p): Do load_class if needed.
2884 2005-06-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2886 * gjavah.c (error): Add ATTRIBUTE_PRINTF_1.
2887 * java-tree.h (parse_error_context): Move...
2888 * parse.h (parse_error_context): ... here, add ATTRIBUTE_GCC_DIAG.
2889 * parse.y (parse_warning_context): Add ATTRIBUTE_GCC_DIAG.
2890 * verify-impl.c (debug_print): Add ATTRIBUTE_PRINTF_1.
2892 2005-06-08 Roger Sayle <roger@eyesopen.com>
2894 * typeck.c (convert): Only clear TREE_OVERFLOW on INTEGER_CST nodes.
2896 2005-06-06 Jakub Jelinek <jakub@redhat.com>
2898 * jv-scan.c (fatal_error, warning, warning0): Use gmsgid instead of
2899 msgid for argument name.
2900 * gjavah.c (error): Likewise.
2901 * java-tree.h (parse_error_context): Likewise.
2902 * parse.y (parse_error_context, parse_warning_context,
2903 issue_warning_error_from_context): Likewise.
2905 2005-06-01 Tom Tromey <tromey@redhat.com>
2908 * class.c (build_static_field_ref): Don't fold constant fields if
2909 current class is from a .class file and we're using indirect
2912 2005-05-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2914 * java/verify-glue.c: Don't include errors.h and include toplev.h.
2915 * java/Make-lang.in: Updates dependencies.
2917 2005-05-26 Ranjit Mathew <rmathew@hotmail.com>
2920 * java-tree.h (OUTER_FIELD_ACCESS_IDENTIFIER_P): Rename to
2921 NESTED_FIELD_ACCESS_IDENTIFIER_P.
2922 (FIELD_INNER_ACCESS): Rename to FIELD_NESTED_ACCESS.
2923 (FIELD_INNER_ACCESS_P): Rename to FIELD_NESTED_ACCESS_P.
2924 * jcf-write.c (generate_classfile): Use
2925 NESTED_FIELD_ACCESS_IDENTIFIER_P instead of
2926 OUTER_FIELD_ACCESS_IDENTIFIER_P.
2927 * parse.y (build_outer_field_access): Rename to
2928 build_nested_field_access. Support static fields and outer-to-inner
2930 (outer_field_access_p): Rename to nested_field_access_p. Support
2931 static fields and generalise to outer-to-inner class and sibling
2932 inner class accesses.
2933 (outer_field_expanded_access_p): Rename to
2934 nested_field_expanded_access_p and support static fields.
2935 (outer_field_access_fix): Rename to nested_field_access_fix and
2936 support static fields.
2937 (build_outer_field_access_expr): Rename to
2938 build_nested_field_access_expr and support static fields.
2939 (build_outer_field_access_methods): Rename to
2940 build_nested_field_access_methods and support static fields. For
2941 static fields, generate accessors without class instance parameters.
2942 (build_outer_field_access_method): Rename to
2943 build_nested_field_access_method and support static fields.
2944 (build_outer_method_access_method): Use
2945 NESTED_FIELD_ACCESS_IDENTIFIER_P instead of
2946 OUTER_FIELD_ACCESS_IDENTIFIER_P.
2947 (resolve_expression_name): Consider static field accesses across
2949 (resolve_qualified_expression_name): Likewise.
2950 (java_complete_lhs): Use nested_field_access_fix instead of
2951 outer_field_access_fix.
2952 (patch_unary_op): Rename outer_field_flag to nested_field_flag.
2953 Use nested_field_expanded_access_p instead of
2954 outer_field_expanded_access_p. Use nested_field_access_fix instead
2955 of outer_field_access_fix.
2956 (check_thrown_exceptions): Use NESTED_FIELD_ACCESS_IDENTIFIER_P
2957 instead of OUTER_FIELD_ACCESS_IDENTIFIER_P.
2959 2005-05-26 Bryce McKinlay <mckinlay@redhat.com>
2961 * decl.c (GCJ_BINARYCOMPAT_ADDITION,
2962 GCJ_BOOTSTRAP_LOADER_ADDITION): Removed.
2963 (FLAG_BINARYCOMPAT_ABI, FLAG_BOOTSTRAP_LOADER,
2964 MINOR_BINARYCOMPAT_ABI_VERSION): New.
2965 (GCJ_CURRENT_BC_ABI_VERSION): Use new method to calculate version ID.
2966 (parse_version): Calculate version ID using new method. Use bit-flags
2967 for flag_indirect_dispatch and flag_bootstrap_classes.
2969 2005-05-25 Richard Henderson <rth@redhat.com>
2972 * Make-lang.in (java/mangle.o): Depend on LANGHOOKS_DEF_H.
2973 * class.c (build_class_ref): Set DECL_CLASS_FIELD_P and
2974 DECL_CONTEXT; avoid pushdecl_top_level.
2975 (build_dtable_decl): Set DECL_VTABLE_P and DECL_CONTEXT.
2976 (layout_class): Don't SET_DECL_ASSEMBLER_NAME.
2977 (layout_class_method): Likewise.
2978 * decl.c (java_mark_cni_decl_local): New.
2979 (java_mark_class_local): Use it.
2980 * java-tree.h (DECL_LOCAL_CNI_METHOD_P): New.
2981 (DECL_CLASS_FIELD_P, DECL_VTABLE_P): New.
2982 (struct lang_decl_func): Add local_cni;
2983 (struct lang_decl_var): Add class_field, vtable.
2984 (java_mangle_decl): Declare.
2985 * lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): New.
2986 * mangle.c: Remove dup obstack.h; include langhooks-def.h.
2987 (mangle_obstack_1): New.
2988 (java_mangle_decl): Remove obstack argument. Call mangle_class_field,
2989 mangle_vtable, and mangle_local_cni_method_decl. Fall back to
2990 lhd_set_decl_assembler_name for things that don't need mangling.
2991 (mangle_class_field): Rename from java_mangle_class_field, make
2992 static, don't call init_mangling or finish_mangling.
2993 (mangle_vtable): Similarly.
2994 (mangle_local_cni_method_decl): New.
2995 (init_mangling): Remove obstack argument. Use &mangle_obstack_1,
2996 gcc_assert, and MANGLE_RAW_STRING.
2997 (finish_mangling): Use gcc_assert, remove if 0 debugging code.
2999 2005-05-25 DJ Delorie <dj@redhat.com>
3001 * class.c (set_constant_value): Move warning control from if() to
3004 2005-05-24 Richard Henderson <rth@redhat.com>
3006 * builtins.c (define_builtin): Don't call make_decl_rtl.
3007 * constants.c (build_constant_data_ref): Likewise.
3008 * class.c (build_utf8_ref): Likewise.
3009 (build_fieldref_cache_entry, build_static_field_ref): Likewise.
3010 (get_dispatch_table, layout_class_method): Likewise.
3011 (build_class_ref): Likewise. Don't set DECL_SIZE or DECL_SIZE_UNIT
3013 (make_local_function_alias): Don't SET_DECL_ASSEMBLER_NAME.
3014 (make_method_value): Use METHOD_ABSTRACT instead of DECL_RTL_SET_P
3015 to determine if we need a non-zero address.
3016 * decl.c (builtin_function): Don't call make_decl_rtl.
3017 (give_name_to_locals): Don't SET_DECL_ASSEMBLER_NAME.
3018 * expr.c (build_known_method_ref): Don't call make_decl_rtl.
3019 * resource.c (compile_resource_data): Likewise.
3020 * parse.y (resolve_field_access): Re-word comment to avoid
3023 2005-05-24 Richard Henderson <rth@redhat.com>
3025 * class.c (registered_class): Take it out of class_roots; turn into
3027 (register_class): Make static. Don't duplicate decl node. Use
3029 (emit_register_classes): Use VEC_iterate. Use output_constant
3030 instead of assemble_integer. Don't call mark_decl_referenced
3032 * java-tree.h (register_class): Remove decl.
3034 2005-05-19 Paolo Bonzini <bonzini@gnu.org>
3038 * parse.y (register_package, package_list): Remove.
3039 (package_declaration): Do not call register_package.
3040 (do_resolve_class): Do not use package_list.
3042 2005-05-15 Gerald Pfeifer <gerald@pfeifer.com>
3044 * jcf-write.c (generate_bytecode_insns) <SAVE_EXPR>: Remove
3047 2005-05-15 Tom Tromey <tromey@redhat.com>
3050 * jcf-write.c (generate_bytecode_insns) <SAVE_EXPR>: Don't call
3053 2005-05-12 Aaron Luchko <aluchko@redhat.com>
3055 * gcj.texi: Add '-verify', '-noverify', and '-verifyremote'.
3057 2005-05-11 Tom Tromey <tromey@redhat.com>
3059 * gcj.texi (Code Generation): Document -fbootstrap-classes.
3060 * decl.c (GCJ_BOOTSTRAP_LOADER_ADDITION): New macro.
3061 (parse_version): Use it.
3062 * lang.opt (-fbootstrap-classes): New option.
3064 2005-05-10 Paolo Bonzini <bonzini@gnu.org>
3067 * class.c (maybe_layout_super_class): Look for imports in this_class.
3068 * parse.h (ctxp_for_generation_last): New.
3069 (do_resolve_class): Add a parameter.
3070 * parse.y (ctxp_for_generation_last): New.
3071 (java_pop_parser_context): Add at end of list.
3072 (find_in_imports, find_in_imports_on_demand): Look in ctxp
3073 if the TYPE_IMPORT_LIST or respectively the TYPE_IMPORT_DEMAND_LIST of
3074 the given type are NULL.
3075 (do_resolve_class): Look into the imports of the new second parameter.
3076 Adjust recursive calls.
3077 (resolve_class, resolve_inner_class, find_as_inner_class): Adjust
3078 calls to do_resolve_class.
3079 (create_class): Set the TYPE_IMPORT_LIST and TYPE_IMPORT_DEMAND_LIST.
3080 (java_complete_class): Do not do that here.
3082 2005-05-03 Thomas Fitzsimmons <fitzsim@redhat.com>
3085 * Make-lang.in (java): Add gjnih.
3086 (JAVA_TARGET_INDEPENDENT_BIN_TOOLS): Likewise.
3087 (GJNIH_OBJS): New variable.
3088 (gjnih$(exeext)): New target.
3089 (JAVA_MANFILES): Add gjnih.1.
3090 (java.uninstall): Add gjnih.1.
3091 (java.mostlyclean): Add gjnih.
3092 (java.maintainer-clean): Add gjnih.1.
3093 (java/gjavah-jni.o): New target.
3094 (.INTERMEDIATE): Add gjnih.pod.
3095 (gjnih.pod): New target.
3096 * config-lang.in (stagestuff): Add gjnih.
3097 * gcj.texi (Top): Add gjnih node.
3098 (Invoking gcjh): Add descriptions of -force, -old, -trace, -J and
3099 -bootclasspath options.
3100 (Invoking gjnih): New node.
3101 * gjavah.c Initialize flag_jni to 1 if JNI_DEFAULT is defined.
3102 (TOOLNAME): New macro.
3103 (error): Replace hard-coded gcjh with TOOLNAME.
3104 (process_file): Likewise.
3106 (version): Likewise.
3107 (help): Likewise. Add help output for -force, -old, -trace and -J
3109 (OPT_FORCE, OPT_OLD, OPT_TRACE): New macros.
3110 (options): Add force, old, trace and J fields.
3111 (main): Handle -force, -old, -trace and -J options.
3113 2005-05-03 Tom Tromey <tromey@redhat.com>
3116 * gjavah.c (main): Unlink output file on error.
3118 2005-05-03 Kazu Hirata <kazu@cs.umass.edu>
3120 * constants.c, jvgenmain.c, lang.opt, resource.c: Update
3123 2005-04-29 Tom Tromey <tromey@redhat.com>
3125 * expr.c (build_jni_stub): Updated for change to build_block.
3127 2005-04-29 Andrew Pinski <pinskia@gcc.gnu.org>
3129 * expr.c (force_evaluation_order): Declare 'saved' earlier.
3131 2005-04-28 Andrew Haley <aph@redhat.com>
3134 * java-tree.h (soft_resolvepoolentry_node): New.
3135 (alloc_constant_fieldref): Declare.
3136 * expr.c (expand_java_field_op): Don't call class_init for
3137 accesses to static fields with indirect dispatch.
3138 * builtins.c (initialize_builtins): Add "__builtin_expect".
3139 * decl.c (soft_resolvepoolentry_node): New variable.
3140 (java_init_decl_processing): Create a decl for
3141 "_Jv_ResolvePoolEntry".
3142 * class.c (build_fieldref_cache_entry): New function.
3143 (build_static_field_ref): Rewrite for indirect dispatch.
3144 * constants.c (find_name_and_type_constant_tree): New function.
3145 (alloc_constant_fieldref): Likewise.
3146 (build_constants_constructor): Handle CONSTANT_Fieldref and
3147 CONSTANT_NameAndType.
3150 * expr.c (force_evaluation_order): Convert outgoing args smaller
3153 2005-04-27 Bryce McKinlay <mckinlay@redhat.com>
3155 * gcj.texi (libgcj Runtime Properties): Remove obsolete
3156 gnu.gcj.runtime.NameFinder.* system properties. Update documentation
3157 for gnu.gcj.runtime.NameFinder.use_addr2line and gnu.gcj.progname.
3159 2005-04-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3161 * gjavah.c, jcf-dump.c, jv-scan.c, jvgenmain.c: Replace calls
3162 to `unlock_stream' with `unlock_std_streams'.
3164 2005-04-25 Jakub Jelinek <jakub@redhat.com>
3166 * Make-lang.in (java/decl.o, java/resource.o): Depend on $(EXPR_H)
3167 instead of just expr.h.
3169 2005-04-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3171 * gjavah.c (main): Unlock the stdio streams.
3172 * jcf-dump.c (main): Likewise.
3173 * jv-scan.c (main): Likewise.
3174 * jvgenmain.c (main): Likewise.
3176 2005-04-23 DJ Delorie <dj@redhat.com>
3178 * class.c, decl.c, expr.c, jcf-io.c, jcf-parse.c, jv-scan.c,
3179 parse.y: Adjust warning() callers.
3181 2005-04-21 Bryce McKinlay <mckinlay@redhat.com>
3183 * gcj.texi (Object fields): Change "Integer" to "Int" in example
3186 2005-04-20 Bryce McKinlay <mckinlay@redhat.com>
3188 * gcj.texi: Fix typos and bogus example.
3190 2005-04-19 Kazu Hirata <kazu@cs.umass.edu>
3192 * except.c: Fix a comment typo.
3194 2005-04-19 Julian Brown <julian@codesourcery.com>
3196 * decl.c (finish_method): Revert patch from 2005-04-13 for breaking
3197 indirect dispatch with PIC.
3199 2005-04-18 Andrew Haley <aph@redhat.com>
3201 * java-except.h (struct eh_range.handler): Remove unused field.
3202 (handle_nested_ranges): Remove function declaration.
3203 (sanity_check_exception_range): Add function declaration.
3204 * verify.c (verify_jvm_instructions): Remove call to
3205 handle_nested_ranges.
3206 * verify-glue.c (verify_jvm_instructions_new): Call
3207 sanity_check_exception_range.
3208 * except.c (link_handler, eh_range_freelist, link_handler,
3209 handle_nested_ranges): Remove.
3210 (add_handler): Rewrite.
3211 (sanity_check_exception_range): New function.
3212 (print_ranges): New function.
3214 2005-04-13 Julian Brown <julian@codesourcery.com>
3216 * decl.c (finish_method): Give methods once-only linkage.
3218 2005-04-11 Richard Sandiford <rsandifo@redhat.com>
3220 * lang.opt: Refer to the GCC internals documentation instead of c.opt.
3222 2005-04-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3224 * java-tree.h: Don't use PARAMS().
3226 2005-04-07 Per Bothner <per@bothner.com>
3228 * class.c (push_class): By default, suppress debug output.
3229 (finish_class): Enable debug output for classes we're emitting.
3231 2005-04-07 Andrew Haley <aph@redhat.com>
3233 * gcj.texi: Correct gcj-dbtool instructions.
3235 2005-04-04 Kazu Hirata <kazu@cs.umass.edu>
3237 * gcj.texi: Fix a typo.
3238 * lang.c: Fix a comment typo.
3240 2005-04-01 Thomas Fitzsimmons <fitzsim@redhat.com>
3242 * gcj.texi (Invoking gij): Add descriptions of new -X options.
3243 Mention recognized-and-ignored compatibility options.
3244 (Memory allocation): Add descriptions of JvMalloc, JvRealloc and
3246 (About CNI): Add Memory allocation section.
3248 2005-04-01 Tom Tromey <tromey@redhat.com>
3250 * decl.c (java_init_decl_processing): Fix types of
3251 _Jv_MonitorEnter, _Jv_MonitorExit, _Jv_AllocObject,
3252 _Jv_AllocObjectNoFinalizer, _Jv_Throw, _Jv_NewPrimArray,
3253 _Jv_JNI_PopSystemFrame, _Jv_divI, _Jv_remI, _Jv_divJ, _Jv_remJ.
3255 2005-03-31 Jan Hubicka <jh@suse.cz>
3257 * Make-lang.in (class.o, decl.o): Depend on cgraph.h.
3258 * class.c: Include cgraph.h
3259 (make_local_functoin_alias): Mark aslias as needed.
3260 * resource.c: Include cgraph.h
3261 (compile_resource_data): Go via cgraph interface.
3263 2005-03-30 Ian Lance Taylor <ian@airs.com>
3265 * parse.y (maybe_yank_clinit): Don't crash if bbody is NULL.
3267 2005-03-30 Tom Tromey <tromey@redhat.com>
3269 * jcf-dump.c (HANDLE_INNERCLASSES_ATTRIBUTE): Handle cases where
3270 inner_class_info_index==0 or outer_class_info_index==0.
3272 2005-03-29 Tom Tromey <tromey@redhat.com>
3274 * gcj.texi (libgcj Runtime Properties): Document
3275 gnu.gcj.runtime.endorsed.dirs.
3277 2005-03-24 Anthony Green <green@redhat.com>
3279 * gcj.texi (Invoking gcj-dbtool): Document new LIBDIR option to
3282 2005-03-23 Tom Tromey <tromey@redhat.com>
3284 * decl.c (GCJ_CURRENT_BC_ABI_VERSION): New define.
3285 (parse_version): Use it.
3287 2005-03-23 Joseph S. Myers <joseph@codesourcery.com>
3289 * lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
3291 2005-03-18 Andrew Haley <aph@redhat.com>
3294 * decl.c (update_aliases): Don't update variables that are about
3296 (maybe_poplevels): Add comment.
3298 2005-03-17 Bryce McKinlay <mckinlay@redhat.com>
3301 * jcf-parse.c (duplicate_class_warning): New function.
3302 (java_parse_file): Call duplicate_class_warning if
3303 CLASS_FROM_CURRENTLY_COMPILED_P is already set.
3304 (parse_zip_file_entries): Likewise. Also set
3305 CLASS_FROM_CURRENTLY_COMPILED_P.
3307 2005-03-16 Andrew Haley <aph@redhat.com>
3309 * expr.c (expand_java_arrayload): Don't generate a
3310 NullPointerException based on the type of the node.
3311 (build_java_array_length_access): Likewise.
3313 2005-03-15 Zack Weinberg <zack@codesourcery.com>
3315 * Make-lang.in (TEXI_JAVA_FILES): Add gcc-vers.texi.
3317 2005-03-11 Tom Tromey <tromey@redhat.com>
3319 * gcj.texi (Invoking gcj-dbtool): Document 'gcj-dbtool -p'.
3320 (libgcj Runtime Properties): Document the default .db.
3322 2005-03-10 Ranjit Mathew <rmathew@hotmail.com>
3325 * parse.y (checks_throws_clauses): Check exceptions list even when
3326 the base class does not come from a source file being compiled.
3327 (java_complete_lhs): Remove unused variable 'wfl'.
3329 2005-03-09 Ranjit Mathew <rmathew@hotmail.com>
3332 * decl.c (finish_method): Emit _Jv_InitClass for private static
3333 methods inside inner classes as well.
3335 2005-03-08 Julian Brown <julian@codesourcery.com>
3336 * Revert patch from 2005-03-08 for causing bootstrap failure on
3339 2005-03-08 Julian Brown <julian@codesourcery.com>
3341 * decl.c (finish_method): Give methods once-only linkage.
3343 2005-03-07 Ranjit Mathew <rmathew@hotmail.com>
3345 * lang.c (flag_new_verifier): Enable by default, regardless of ABI.
3347 2005-03-07 Bryce McKinlay <mckinlay@redhat.com>
3349 * verify-glue.c (vfy_is_assignable_from): Perform static check using
3350 can_widen_reference_to if the C++ ABI is in use.
3351 (vfy_get_interface_count, vfy_get_interface): Remove unused functions.
3352 * verify-impl.c (debug_print, make_utf8_const, init_type, copy_type,
3353 type_isresolved, init_state, set_pc, state_get_pc,
3354 _Jv_BytecodeVerifier): Clean up unused and disabled functions.
3355 (verify_fail): Report the current PC from the verifier context.
3356 (free_state): Remove #if 0 block to enable this function.
3357 (free_verifier_context): Call free_state on state_list iterator
3358 values before freeing them.
3359 * expr.c (pop_type_0): Pop correct type for error message when stack
3360 contains a multi-word type.
3362 2005-03-07 Ranjit Mathew <rmathew@hotmail.com>
3364 * expr.c (build_java_array_length_access): Remove !flag_new_verifier
3365 for known NULL array length access.
3367 2005-03-07 Tom Tromey <tromey@redhat.com>
3369 * gcj.texi (Invoking gcj-dbtool): Document '-f'.
3371 2005-03-06 Kazu Hirata <kazu@cs.umass.edu>
3373 * jcf-dump.c, jcf-io.c, jcf-reader.c, lang.c, parse.h,
3374 typeck.c: Update copyright.
3376 2005-03-06 Ranjit Mathew <rmathew@hotmail.com>
3379 * xref.c, xref.h: Remove file.
3380 * Make-lang.in (java/xref.o): Remove.
3381 * java-tree.h (flag_emit_xref, do_not_fold): Remove declaration.
3382 * lang.c (flag_emit_xref): Remove definition.
3383 * parse.h (DECL_END_SOURCE_LINE, DECL_INHERITED_SOURCE_LINE): Remove.
3384 * typeck.c (convert): Remove use of do_not_fold.
3385 * parse.y (do_not_fold): Remove definition.
3386 (parser grammar): Remove xref code.
3387 (maybe_create_class_interface_decl, create_class): Likewise.
3388 (register_fields, method_header, finish_method_declaration): Likewise.
3389 (declare_local_variables, source_end_java_method): Likewise.
3390 (java_complete_expand_classes): Do not set do_not_fold.
3391 (java_complete_expand_method): Remove xref code.
3392 (java_expand_classes, resolve_field_access, patch_invoke): Likewise.
3393 (java_complete_tree, java_complete_lhs, patch_assignment): Likewise.
3394 (patch_binop, build_string_concatenation, patch_array_ref): Likewise.
3395 (patch_synchronized_statement, patch_throw_statement): Likewise.
3396 (maybe_build_class_init_for_field): Likewise.
3398 2005-03-05 Kazu Hirata <kazu@cs.umass.edu>
3400 * expr.c (build_expr_wfl, expr_add_location): Use TYPE_P
3401 instead of IS_NON_TYPE_CODE_CLASS.
3403 2005-03-04 Andrew Haley <aph@redhat.com>
3406 * class.c (set_method_index): Don't set method_index if it is
3408 (layout_class_method): Don't complain about "non-static method foo
3409 overrides static method" in the case of indirect dispatch.
3411 2005-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3413 * jcf-io.c (caching_stat): Use __extension__ to avoid pedantic
3415 * Make-lang.in: Don't elide warnings in jcf-io.c.
3417 2005-03-01 Per Bothner <per@bothner.com>
3420 * check-init.c (wfl): Remove static.
3421 (final_assign_error, check_init): Replace calls to parse_error_context
3423 (check_init): Save, set, and restore input_location for each exp.
3425 2005-03-01 Per Bothner <per@bothner.com>
3427 * jcf-reader.c (get_attribute): Handle SourceDebugExtension (JSR 45)
3428 if HANDLE_SOURCEDEBUGEXTENSION_ATTRIBUTE is defined.
3429 * jcf-dump.c (HANDLE_SOURCEDEBUGEXTENSION_ATTRIBUTE): Print contents.
3431 2005-03-01 Per Bothner <per@bothner.com>
3433 * java-tree.h (IDENTIFIER_HANDLECLASS_VALUE): Remove ancient macro.
3435 2005-02-23 Thomas Fitzsimmons <fitzsim@redhat.com>
3438 * gcj.texi (Invocation): Add descriptions of JvVMInitArgs and
3441 2005-02-22 Tom Tromey <tromey@redhat.com>
3444 * verify-impl.c (EITHER): New define.
3445 (types_compatible): Handle it.
3446 (check_field_constant): Use it.
3448 2005-02-18 Tom Tromey <tromey@redhat.com>
3451 * verify-impl.c (types_equal): Fixed test.
3454 * verify-glue.c (vfy_class_has_field): New function.
3455 * verify.h (vfy_class_has_field): Declare.
3456 * verify-impl.c (check_field_constant): Added 'putfield'
3458 (verify_instructions_0): Updated.
3459 (types_equal): New function.
3461 2005-02-14 Tom Tromey <tromey@redhat.com>
3464 * jcf-write.c (generate_bytecode_insns) <CALL_EXPR>: Note the
3465 stack effect of multianewarray.
3467 2005-02-14 Andrew Haley <aph@redhat.com>
3470 * expr.c (expand_byte_code): Call promote_arguments().
3471 (promote_arguments): New function.
3472 * decl.c (check_local_unnamed_variable): Remove special case for
3474 (find_local_variable): Promote all boolean types to int