aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/java/ChangeLog')
-rw-r--r--gcc/java/ChangeLog583
1 files changed, 583 insertions, 0 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index a8aea42..5776df2 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,246 @@
+2007-01-09 Andrew Haley <aph@redhat.com>
+
+ * expr.c (build_java_arrayaccess): Rewrite to generate array
+ access in canonical form.
+ (expand_java_arraystore): Use build_fold_addr_expr() on address of
+ array access.
+
+2007-01-03 Andrew Haley <aph@redhat.com>
+
+ PR java/28754
+ * expr.c (expand_java_field_op): If we're initializing a field's
+ declaring interface we should not also initialize the class
+ context in which it was referenced.
+
+2007-01-02 Tom Tromey <tromey@redhat.com>
+
+ * java-tree.h (compiling_from_source, current_encoding,
+ JTI_FINIT_IDENTIFIER_NODE, JTI_INSTINIT_IDENTIFIER_NODE,
+ JTI_LENGTH_IDENTIFIER_NODE, JTI_SUPER_IDENTIFIER_NODE,
+ JTI_CONTINUE_IDENTIFIER_NODE, JTI_ACCESS0_IDENTIFIER_NODE,
+ JTI_WFL_OPERATOR): Removed
+ (finit_identifier_node, instinit_identifier_node,
+ length_identifier_node, super_identifier_node,
+ continue_identifier_node, access0_identifier_node, wfl_operator):
+ Removed.
+ (cyclic_inheritance_report,
+ DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND,
+ DECL_FUNCTION_NAP, DECL_FUNCTION_SYNTHETIC_CTOR,
+ DECL_FIXED_CONSTRUCTOR_P): Removed.
+ (struct lang_decl_func) <smic, nap, synthetic_ctor, fixed_ctor>:
+ Removed.
+ (TYPE_FINIT_STMT_LIST, TYPE_CLINIT_STMT_LIST, TYPE_II_STMT_LIST,
+ TYPE_IMPORT_LIST, TYPE_IMPORT_DEMAND_LIST): Removed.
+ (struct lang_type) <finit_stmt_list, clinit_stmt_list, ii_block,
+ import_list, import_demand_list>: Removed.
+ (java_layout_seen_class_methods, init_jcf_parse, init_src_parse,
+ cxx_keyword_p): Removed.
+ (DECL_FINIT_P, DECL_INSTINIT_P, ID_FINIT_P, ID_INSTINIT_P,
+ TYPE_UNUSED, TYPE_UNDERFLOW, TYPE_UNEXPECTED,
+ CLASS_ACCESS0_GENERATED_P, CLASS_HAS_FINIT_P,
+ IS_A_SINGLE_IMPORT_CLASSFILE_NAME_P, IS_A_CLASSFILE_NAME,
+ IS_AN_IMPORT_ON_DEMAND_P, COMPOUND_ASSIGN_P, SWITCH_HAS_DEFAULT,
+ PRIMARY_P, MODIFY_EXPR_FROM_INITIALIZATION_P,
+ CLASS_METHOD_CHECKED_P, FOR_LOOP_P, ANONYMOUS_CLASS_P,
+ LOCAL_CLASS_P, ARG_FINAL_P, SUPPRESS_UNREACHABLE_ERROR,
+ RESOLVE_PACKAGE_NAME_P, RESOLVE_TYPE_NAME_P, IS_BREAK_STMT_P,
+ IS_CRAFTED_STRING_BUFFER_P, IS_INIT_CHECKED, CALL_USING_SUPER,
+ NESTED_FIELD_ACCESS_IDENTIFIER_P, TOPLEVEL_CLASS_DECL_P,
+ PURE_INNER_CLASS_TYPE_P, TOPLEVEL_CLASS_TYPE_P,
+ CALL_CONSTRUCTOR_P, CALL_EXPLICIT_CONSTRUCTOR_P,
+ CALL_THIS_CONSTRUCTOR_P, CALL_SUPER_CONSTRUCTOR_P,
+ FINALLY_EXPR_LABEL, FINALLY_EXPR_BLOCK, BLOCK_IS_IMPLICIT,
+ BLOCK_EMPTY_P, IS_UNCHECKED_EXCEPTION_P, java_error_count,
+ java_parse_abort_on_error, extract_field_decl): Removed.
+ (finput): Declare.
+ * lang.c: (compiling_from_source, current_encoding): Removed.
+ (java_handle_option): Ignore -fencoding.
+ * parse.h: Don't include lex.h.
+ (java_error_count, int_fits_type_p, stabilize_reference, RULE,
+ RECOVERED, DRECOVERED, RECOVER, DRECOVER, YYERROR_NOW,
+ YYNOT_TWICE, CLASS_MODIFIERS, FIELD_MODIFIERS, METHOD_MODIFIERS,
+ INTERFACE_MODIFIERS, INTERFACE_INNER_MODIFIERS,
+ INTERFACE_METHOD_MODIFIERS, INTERFACE_FIELD_MODIFIERS,
+ MODIFIER_WFL, THIS_MODIFIER_ONLY, parse_error_context,
+ ABSTRACT_CHECK, JCONSTRUCTOR_CHECK, exit_java_complete_class,
+ CLASS_OR_INTERFACE, GET_REAL_TYPE, GET_TYPE_NAME,
+ OBSOLETE_MODIFIER_WARNING, OBSOLETE_MODIFIER_WARNING2,
+ BUILD_PTR_FROM_NAME, INCOMPLETE_TYPE_P,
+ JAVA_MAYBE_GENERATE_DEBUG_INFO, JBSC_TYPE_P, JSTRING_P,
+ JNULLP_TYPE_P, JDECL_P, TYPE_INTERFACE_P, TYPE_CLASS_P,
+ IDENTIFIER_INNER_CLASS_OUTER_FIELD_ACCESS,
+ MANGLE_OUTER_LOCAL_VARIABLE_NAME,
+ MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_ID,
+ MANGLE_ALIAS_INITIALIZER_PARAMETER_NAME_STRING,
+ SKIP_THIS_AND_ARTIFICIAL_PARMS, MARK_FINAL_PARMS,
+ UNMARK_FINAL_PARMS, CRAFTED_PARAM_LIST_FIXUP,
+ AIPL_FUNCTION_CREATION, AIPL_FUNCTION_DECLARATION,
+ AIPL_FUNCTION_CTOR_INVOCATION, AIPL_FUNCTION_FINIT_INVOCATION,
+ ERROR_CANT_CONVERT_TO_BOOLEAN, ERROR_CANT_CONVERT_TO_NUMERIC,
+ ERROR_CAST_NEEDED_TO_INTEGRAL, ERROR_VARIABLE_NOT_INITIALIZED,
+ LOOP_EXPR_BODY_MAIN_BLOCK, LOOP_EXPR_BODY_UPDATE_BLOCK,
+ LOOP_EXPR_BODY_CONDITION_EXPR, LOOP_EXPR_BODY_LABELED_BODY,
+ LOOP_EXPR_BODY_BODY_EXPR, PUSH_LABELED_BLOCK, POP_LABELED_BLOCK,
+ PUSH_LOOP, POP_LOOP, PUSH_EXCEPTIONS, POP_EXCEPTIONS,
+ IN_TRY_BLOCK_P, EXCEPTIONS_P, ANONYMOUS_ARRAY_BASE_TYPE,
+ ANONYMOUS_ARRAY_DIMS_SIG, ANONYMOUS_ARRAY_INITIALIZER,
+ INVOKE_STATIC, INVOKE_NONVIRTUAL, INVOKE_SUPER, INVOKE_INTERFACE,
+ INVOKE_VIRTUAL, jdep_code, struct _jdep, JDEP_DECL, JDEP_DECL_WFL,
+ JDEP_KIND, JDEP_WFL, JDEP_MISC, JDEP_ENCLOSING, JDEP_CLASS,
+ JDEP_APPLY_PATCH, JDEP_GET_PATCH, JDEP_CHAIN, JDEP_TO_RESOLVE,
+ JDEP_RESOLVED_DECL, JDEP_RESOLVED, JDEP_RESOLVED_P, struct
+ jdeplist_s, jdeplists, CLASSD_FIRST, CLASSD_LAST, CLASSD_CHAIN,
+ JDEP_INSERT, SET_TYPE_FOR_RESOLUTION, WFL_STRIP_BRACKET,
+ STRING_STRIP_BRACKETS, PROMOTE_RECORD_IF_COMPLETE,
+ BLOCK_CHAIN_DECL, GET_CURRENT_BLOCK, EXPR_WFL_GET_LINECOL,
+ EXPR_WFL_QUALIFICATION, QUAL_WFL, QUAL_RESOLUTION, QUAL_DECL_TYPE,
+ GET_SKIP_TYPE, COMPLETE_CHECK_OP, COMPLETE_CHECK_OP_0,
+ COMPLETE_CHECK_OP_1, COMPLETE_CHECK_OP_2, BUILD_APPEND,
+ BUILD_STRING_BUFFER, BUILD_THROW, SET_WFL_OPERATOR,
+ PATCH_METHOD_RETURN_ERROR, CHECK_METHODS, CLEAR_DEPRECATED,
+ CHECK_DEPRECATED_NO_RESET, CHECK_DEPRECATED, REGISTER_IMPORT,
+ CURRENT_OSB, struct parser_ctxt, GET_CPC_LIST, CPC_INNER_P,
+ GET_CPC, GET_CPC_UN, GET_CPC_UN_MODE, GET_CPC_DECL_NODE,
+ GET_ENCLOSING_CPC, GET_NEXT_ENCLOSING_CPC,
+ GET_ENCLOSING_CPC_CONTEXT, INNER_ENCLOSING_SCOPE_CHECK, PUSH_CPC,
+ PUSH_ERROR, POP_CPC, DEBUG_CPC, CPC_INITIALIZER_LIST,
+ CPC_STATIC_INITIALIZER_LIST, CPC_INSTANCE_INITIALIZER_LIST,
+ CPC_INITIALIZER_STMT, CPC_STATIC_INITIALIZER_STMT,
+ CPC_INSTANCE_INITIALIZER_STMT, SET_CPC_INITIALIZER_STMT,
+ SET_CPC_STATIC_INITIALIZER_STMT,
+ SET_CPC_INSTANCE_INITIALIZER_STMT, JAVA_NOT_RADIX10_FLAG,
+ java_complete_class, java_check_circular_reference,
+ java_fix_constructors, java_layout_classes, java_reorder_fields,
+ java_method_add_stmt, java_get_line_col, reset_report,
+ java_init_lex, yyparse, java_parse, yyerror, java_expand_classes,
+ java_finish_classes, ctxp, ctxp_for_generation,
+ ctxp_for_generation_last): Removed.
+ * expr.c (force_evaluation_order): Don't mention NEW_CLASS_EXPR.
+ * mangle.c (utf8_cmp): New function.
+ (cxx_keywords): New global.
+ (cxx_keyword_p): New function.
+ * jvspec.c (JAVA_START_CHAR): Removed obsolete comment.
+ * java-tree.def (UNARY_PLUS_EXPR, NEW_ARRAY_EXPR,
+ NEW_ANONYMOUS_ARRAY_EXPR, NEW_CLASS_EXPR, THIS_EXPR,
+ CASE_EXPR, DEFAULT_EXPR, JAVA_CATCH_EXPR, SYNCHRONIZED_EXPR,
+ THROW_EXPR, CONDITIONAL_EXPR, INSTANCEOF_EXPR, NEW_ARRAY_INIT,
+ CLASS_LITERAL, JAVA_EXC_OBJ_EXPR): Removed.
+ * Make-lang.in (java.srcextra): Do nothing.
+ (parse.c, keyword.h, gt-java-parse.h): Removed targets.
+ (JAVA_OBJS): Don't mention deleted files.
+ (java.mostlyclean): Likewise.
+ (java.clean): Likewise.
+ (JAVA_LEX_C): Removed.
+ (buffer.o, check-init.o, parse.o): Remove unused targets.
+ (typeck.o): Updated.
+ * jcf-parse.c (read_class): Comment out unused code.
+ (java_layout_seen_class_methods): New function.
+ (parse_source_file_1, parse_source_file_2, parse_source_file_3):
+ Removed.
+ (java_parse_file): Comment out unused code. Don't use 'ctxp'.
+ (init_jcf_parse): Removed.
+ * config-lang.in (gtfiles): Remove deleted files.
+ * decl.c (java_init_decl_processing): Don't initialize
+ finit_identifier_node, instinit_identifier_node,
+ length_identifier_node, super_identifier_node,
+ continue_identifier_node, access0_identifier_node. Don't call
+ init_jcf_parse.
+ * class.c (cyclic_inheritance_report): New global.
+ (add_method_1): Don't use
+ DECL_FUNCTION_STATIC_METHOD_INVOCATION_COMPOUND.
+ (maybe_layout_super_class): Comment out code.
+ (safe_layout_class): New function.
+ * java-gimplify.c (java_gimplify_expr): Removed CASE_EXPR,
+ DEFAULT_EXPR, NEW_ARRAY_INIT, JAVA_CATCH_EXPR, JAVA_EXC_OBJ_EXPR,
+ UNARY_PLUS_EXPR, NEW_ARRAY_EXPR, NEW_ANONYMOUS_ARRAY_EXPR,
+ NEW_CLASS_EXPR, SYNCHRONIZED_EXPR, CONDITIONAL_EXPR,
+ INSTANCEOF_EXPR, CLASS_LITERAL, THIS_EXPR.
+ (java_gimplify_case_expr): Removed.
+ (java_gimplify_default_expr): Likewise.
+ (java_gimplify_new_array_init): Likewise.
+ * parse.y: Removed.
+ * keyword.gperf, keyword.h: Removed.
+ * chartables.h: Removed.
+ * check-init.c: Removed.
+ * buffer.c, buffer.h: Removed.
+ * convert.h: Removed.
+ * gen-table.pl: Removed.
+ * lex.c, lex.h: Removed.
+
+2007-01-02 Andrew Haley <aph@redhat.com>
+
+ * expr.c (expand_java_arraystore): Make sure we perform a bounds
+ check at runtime before we perform a type check.
+
+2006-12-19 Andrew Haley <aph@redhat.com>
+
+ * decl.c: Bump minor BC ABI version.
+
+2006-12-13 Gary Benson <gbenson@redhat.com>
+
+ * jcf-depend.c (jcf_dependency_add_file): Mark filename unused.
+
+2006-12-12 Tom Tromey <tromey@redhat.com>
+
+ * lang-specs.h: Pass -M options to jc1.
+ * jcf-depend.c (jcf_dependency_add_file): Don't emit
+ dependencies.
+
+2006-12-07 Mohan Embar <gnustuff@thisiscool.com>
+
+ * jcf-path.c (jcf_path_compute): Use platform PATH_SEPARATOR.
+
+2006-12-06 Mohan Embar <gnustuff@thisiscool.com>
+
+ * lang-specs.h: Pass '%U'-based options as separate arguments.
+
+2006-12-05 Tom Tromey <tromey@redhat.com>
+
+ PR java/29495:
+ * jcf-parse.c (HANDLE_SYNTHETIC_ATTRIBUTE): Mark fields and
+ classes as well.
+ * class.c (add_field): Handle ACC_SYNTHETIC.
+ (add_method_1): Likewise. Handle bridge and varargs.
+ (get_access_flags_from_decl): Handle synthetic, bridge, varargs,
+ annotation.
+ (set_class_decl_access_flags): Handle synthetic and annotation.
+ * java-tree.h (METHOD_BRIDGE): New macro.
+ (METHOD_VARARGS): Likewise.
+ (TYPE_SYNTHETIC): Likewise.
+ (TYPE_ANNOTATION): Likewise.
+ (lang_type): New fields 'synthetic' and 'annotation'.
+ (lang_decl_func): New fields 'varargs' and 'bridge'.
+
+2006-12-04 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (rewrite_reflection_indexes): Don't do anything if
+ there's no map.
+
+2006-11-29 Gary Benson <gbenson@redhat.com>
+
+ * expr.c (rewrite_arglist_getcaller): Reorder.
+
+2006-11-29 Andrew Haley <aph@redhat.com>
+
+ * expr.c (rewrite_arglist_getcaller): Remove DECL_INLINE.
+ * lang.c (java_decl_ok_for_sibcall): Check for DECL_INLINE.
+
+2006-11-23 Andrew Haley <aph@redhat.com>
+
+ * expr.c (rewrite_arglist_getcaller): New.
+ (rewrite_arglist_getclass): Fix indentation.
+ (rules): Add gnu.classpath.VMStackWalker.getCallingClass() and
+ gnu.classpath.VMStackWalker.getCallingClassLoader().
+ * builtins.c (initialize_builtins): Remove duplicate def'n of
+ __sync_synchronize.
+ Add __builtin_return_address.
+
+2006-11-22 Andrew Haley <aph@redhat.com>
+
+ * jcf-reader.c (get_attribute): Mark attr_type unused.
+
+ * builtins.c (compareAndSwapObject_builtin): Fix declaration.
+
2007-01-08 Richard Guenther <rguenther@suse.de>
* lex.c (do_java_lex): Use build_int_cst_wide_type.
@@ -18,6 +261,346 @@
* check-init.c (check_init): Remove handling of FIX_CEIL_EXPR,
FIX_FLOOR_EXPR and FIX_ROUND_EXPR.
+2006-11-06 Andrew Haley <aph@redhat.com>
+
+ * java-tree.h (CONSTANT_LazyFlag): New.
+ * constants.c (build_constants_constructor): Mask CONSTANT_LazyFlag.
+ * jcf-parse.c (handle_innerclass_attribute): Write attribute to
+ reflection_data.
+ (handle_constant): Return 0 for dummy cpool entries.
+ Handle constants of kind Class.
+ Handle constants of kind NameAndType.
+ (handle_enclosingmethod_attribute): New.
+ (handle_signature_attribute): New.
+ (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): New.
+ (HANDLE_SIGNATURE_ATTRIBUTE): New.
+ (handle_constant): Use unmangle_classname()rather than calling
+ identifier_subst() directly.
+
+2006-11-02 Andrew Haley <aph@redhat.com>
+
+ * java-tree.h (FIELD_ENUM): New.
+ (lang_decl_var.field_enum): New.
+ (lang_type.enum_class): New.
+ (CLASS_ENUM): New.
+ * class.c (set_class_decl_access_flags): Handle enum types.
+ (add_field): Handle enum fields.
+ (get_access_flags_from_decl): Likewise.
+
+ * class.c (make_class_data): Put reflection_data into rodata.
+
+2006-11-01 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (field_offsets, bit_obstack): New variables.
+ (jcf_parse): Write end marker to annotation_data.
+ (java_parse_file): Create field_offsets bitmap. Destroy it.
+ (annotation_grow, annotation_rewrite_byte)
+ (annotation_rewrite_short, annotation_rewrite_int)
+ (annotation_read_short, annotation_write_byte)
+ (annotation_write_short, annotation_write_int)
+ (handle_long_constant, handle_constant, handle_element_value)
+ (handle_annotation, handle_annotations)
+ (handle_annotation_attribute, rewrite_reflection_indexes)
+ (handle_member_annotations, handle_parameter_annotations)
+ (handle_default_annotation): New functions.
+ (HANDLE_RUNTIMEVISIBLEANNOTATIONS_ATTRIBUTE)
+ (HANDLE_RUNTIMEINVISIBLEANNOTATIONS_ATTRIBUTE)
+ (HANDLE_RUNTIMEVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE)
+ (HANDLE_RUNTIMEINVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE)
+ (HANDLE_ANNOTATIONDEFAULT_ATTRIBUTE): New definitions.
+ * java-tree.h (enum jv_attr_type, enum jv_attr_kind): New.
+ (TYPE_REFLECTION_DATA): New.
+ (TYPE_REFLECTION_DATASIZE): New.
+ * jcf.h (enum cpool_tag): Convert a bunch of #define constants to
+ an enum.
+ * jcf-reader.c (get_attribute): Pass field/method index and
+ attribute type to get_attribute().
+ * constants.c (find_class_or_string_constant): Make nonstatic.
+ (cpool_for_class): Likewise.
+ (build_constants_constructor): Separate string and scalar types.
+ * class.c (make_class_data): Generate field_indexes permutation.
+ Pass it to rewrite_reflection_indexes().
+ (make_class_data): Generate constructor for reflection_data field.
+
+2006-10-20 Tom Tromey <tromey@redhat.com>
+
+ * gcj.texi (Top): Don't mention jv-scan.
+ (Invoking gcj): Likewise.
+ (Invoking gcjh): Likewise.
+ (Invoking gjnih): Likewise.
+ (Invoking gij): Likewise.
+ (Invoking gcj-dbtool): Likewise.
+ (Invoking jv-scan): Removed.
+ * parse-scan.y: Removed.
+ * jv-scan.c: Removed.
+ * config-lang.in (stagestuff): Don't mention jv-scan.
+ * Make-lang.in (java): Removed jv-scan.
+ (JAVA_TARGET_INDEPENDENT_BIN_TOOLS): Likewise.
+ (JVSCAN_OBJS): Removed.
+ (jv-scan$(exeext)): Likewise.
+ (JAVA_MANFILES): Removed jv-scan.1.
+ (java.uninstall): Don't mention jv-scan.
+ (java.mostlyclean): Likewise.
+ (java.maintainer-clean): Likewise.
+ (.INTERMEDIATE): Likewise.
+ (java/jv-scan.o): Removed.
+ (jv-scan.pod): Likewise.
+ (java.srcextra): Don't mention parse-scan.c.
+ (java.mostlyclean): Likewise.
+ (java/parse-scan.c): Removed.
+ (java/parse-scan.o-warn): Removed.
+ (java/parse-scan.o): Removed.
+
+2006-10-20 Tom Tromey <tromey@redhat.com>
+
+ * lang.c (java_handle_option): Don't use
+ jcf_write_base_directory.
+ * jcf.h (jcf_write_base_directory): Removed.
+ * parse.y (java_expand_classes): Don't call write_classfile.
+ * config-lang.in (gtfiles): Removed jcf-write.c.
+ * Make-lang.in (JAVA_OBJS): Removed jcf-write.o.
+ (java/jcf-write.o): Removed.
+ * jcf-parse.c (parse_class_file): Don't call write_classfile.
+ * java-tree.h (write_classfile): Removed declaration.
+ * jcf-write.c: Removed.
+
+2006-10-20 Tom Tromey <tromey@redhat.com>
+
+ * Make-lang.in (java): Removed gjnih, gcjh.
+ (JAVA_TARGET_INDEPENDENT_BIN_TOOLS): Likewise.
+ (GCJH_OBJS): Removed.
+ (GJNIH_OBJS): Likewise.
+ (gjnih$(exeext)): Likewise.
+ (gcjh$(exeext)): Likewise.
+ (JAVA_MANFILES): Removed gcjh.1, gjnih.1.
+ (java.install-common): Don't special case gcjh.
+ (java.uninstall): Don't mention gcjh, gjnih.
+ (java.mostlyclean): Likewise.
+ (java.maintainer-clean): Likewise.
+ (.INTERMEDIATE): Likewise.
+ (gcjh.pod): Removed.
+ (gjnih.pod): Likewise.
+ (GCJH_TARGET_INSTALL_NAME): Removed.
+ (java/gjavah-jni.o): Removed.
+ (java/gjavah.o): Likewise.
+ * config-lang.in (stagestuff): Removed gjnih, gcjh.
+ * gjavah.c: Removed.
+
+2006-10-17 Tom Tromey <tromey@redhat.com>
+
+ * jcf-dump.c (print_element_value): Expect a utf8 constant in the
+ "string" case.
+
+2006-10-17 Tom Tromey <tromey@redhat.com>
+
+ * jvgenmain.c (main): Handle -findirect-dispatch.
+ * jvspec.c (jvgenmain_spec): Pass -findirect-dispatch to
+ jvgenmain.
+
+2006-10-06 Andrew Haley <aph@redhat.com>
+
+ * builtins.c (compareAndSwapInt_builtin): Check that we really do
+ have a compare_and_swap builtin.
+ (compareAndSwapLong_builtin): Likewise.
+ (compareAndSwapObject_builtin): Likewise.
+
+2006-10-04 Andrew Haley <aph@redhat.com>
+
+ * builtins.c (java_builtins): Add compareAndSwapInt,
+ compareAndSwapLong, compareAndSwapObject, putOrderedInt,
+ putOrderedLong, putOrderedObject, putIntVolatile, putLongVolatile,
+ putObjectVolatile, getObjectVolatile, getIntVolatile,
+ getLongVolatile, getLong.
+ (UNMARSHAL3): New macro.
+ (UNMARSHAL4): Likewise.
+ (UNMARSHAL5): Likewise.
+ (build_arglist_for_builtin): New function.
+ (build_addr_sum, build_check_this): New functions.
+ (putObject_builtin. compareAndSwapInt_builtin,
+ compareAndSwapLong_builtin, compareAndSwapObject_builtin,
+ putVolatile_builtin, getVolatile_builtin): New builtins.
+
+2006-06-08 Andrew Haley <aph@redhat.com>
+
+ * expr.c (build_field_ref): Pass NULL_TREE as SPECIAL arg to
+ get_symbol_table_index().
+ (maybe_rewrite_invocation): Set SPECIAL if we need to access a
+ private method.
+ (build_known_method_ref): New arg: special. Pass it to
+ get_symbol_table_index.
+ (get_symbol_table_index): Put SPECIAL in the TREE_PURPOSE field of
+ the method list.
+ (build_invokevirtual): New arg: special. Pass it to
+ get_symbol_table_index.
+ (expand_invoke): New variable: special.
+ Pass it to maybe_rewrite_invocation().
+ Pass it to build_known_method_ref().
+ * class.c (build_symbol_entry): Add new arg: special. Use it to
+ build the symbol table conbstructor.
+ (emit_symbol_table): Extract SPECIAL from the method list and pass
+ it to build_symbol_entry().
+ * parse.y (patch_invoke): Call maybe_rewrite_invocation() and set
+ special accordingly.
+
+2006-09-08 Andrew Haley <aph@redhat.com>
+
+ * class.c (layout_class_method): Use build_java_signature, not
+ build_java_argument_signature. Use lookup_java_method, not
+ lookup_argument_method.
+
+2006-08-16 Jakub Jelinek <jakub@redhat.com>
+ Bryce McKinlay <bryce@mckinlay.net.nz>
+
+ * jvspec.c (lang_specific_driver): Add -s-bc-abi when needed.
+
+2006-07-18 Tom Tromey <tromey@redhat.com>
+
+ * lang.opt: Added missing -W options.
+
+2006-07-12 Tom Tromey <tromey@redhat.com>
+
+ PR java/28329:
+ * lang-specs.h: Pass '%U'-based options as separate arguments.
+ Use -faux-classpath.
+ * lang.c (java_handle_option): Handle OPT_faux_classpath.
+ * lang.opt (faux-classpath): New option.
+
+2006-07-07 Tom Tromey <tromey@redhat.com>
+
+ * class.c (make_class_data): Set value for reflection_data field.
+ * decl.c (java_init_decl_processing): Add reflection_data field.
+
+2006-07-07 Tom Tromey <tromey@redhat.com>
+
+ * jcf-dump.c (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): Declare locals
+ earlier.
+ (HANDLE_SIGNATURE_ATTRIBUTE): Likewise.
+
+2006-07-07 Andrew Haley <aph@redhat.com>
+
+ * jcf-parse.c (set_source_filename): Don't check for
+ CLASS_FROM_CURRENTLY_COMPILED_P.
+ Remove // comments.
+
+2006-07-07 Andrew Haley <aph@redhat.com>
+
+ * java-tree.h (java_read_sourcefilenames): Declare.
+ * lang.c (java_handle_option): Call java_read_sourcefilenames().
+ * lang.opt (fsource-filename): New opt.
+ * lang-specs.h: Add -fsource-filename.
+ * jcf-parse.c (num_files, filenames): New variables.
+ (reverse, cmpstringp, java_read_sourcefilenames,
+ find_sourcefile): New.
+ (set_source_filename): Call find_sourcefile to find the real name
+ of a source file.
+
+2006-06-27 Tom Tromey <tromey@redhat.com>
+
+ * jcf-reader.c (get_attribute): Handle EnclosingMethod,
+ Signature, LocalVariableTypeTable, annotation attributes.
+ * jcf-dump.c (HANDLE_ENCLOSINGMETHOD_ATTRIBUTE): New macro.
+ (HANDLE_SIGNATURE_ATTRIBUTE): Likewise.
+ (HANDLE_START_FIELD): Mention 'descriptor', not 'signature'.
+ (HANDLE_METHOD): Likewise.
+ (HANDLE_LOCALVARIABLETYPETABLE_ATTRIBUTE): New macro.
+ (print_annotation): New function.
+ (print_element_value): Likewise.
+ (indent): Likewise.
+ (HANDLE_RUNTIMEVISIBLEANNOTATIONS_ATTRIBUTE): New macro.
+ (HANDLE_RUNTIMEINVISIBLEANNOTATIONS_ATTRIBUTE): Likewise.
+ (print_parameter_annotations): New function.
+ (HANDLE_RUNTIMEVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE): New macro.
+ (HANDLE_RUNTIMEINVISIBLEPARAMETERANNOTATIONS_ATTRIBUTE):
+ Likewise.
+ (HANDLE_ANNOTATIONDEFAULT_ATTRIBUTE): Likewise.
+ (print_annotations): New function.
+
+2006-06-23 Tom Tromey <tromey@redhat.com>
+
+ * lang-specs.h: Default -fsource and -ftarget to 1.5. If
+ emitting class files, always use 1.5.
+ * gcj.texi (Input Options): Document -fsource.
+ (Code Generation): Document -ftarget.
+
+2006-06-21 Tom Tromey <tromey@redhat.com>
+
+ PR java/28089:
+ * expr.c (expand_java_field_op): Initialize field's declaring
+ class.
+
+2006-06-20 Tom Tromey <tromey@redhat.com>
+
+ * expr.c (push_value): Always flush quick stack.
+
+2006-06-19 Tom Tromey <tromey@redhat.com>
+
+ * expr.c (push_value): Also flush quick stack if value is a
+ component_ref.
+
+2006-06-19 Tom Tromey <tromey@redhat.com>
+
+ * expr.c (push_value): Flush quick stack if value has side
+ effects.
+
+2006-06-13 Tom Tromey <tromey@redhat.com>
+
+ * class.c (is_compiled_class): Explicitly check for current
+ class.
+
+2006-06-09 Tom Tromey <tromey@redhat.com>
+
+ * gjavah.c (decompile_method): Don't decompile a static field
+ accessor method.
+
+2006-06-06 Tom Tromey <tromey@redhat.com>
+
+ * lang-specs.h <jc1>: Add .jar file to command line if
+ -fsaw-java-file. Also, remove -ffilelist-file in this case.
+
+2006-06-05 Tom Tromey <tromey@redhat.com>
+
+ * jcf-dump.c (print_access_flags): Handle varargs, bridge,
+ synthetic, enum, annotation.
+ * jcf.h (ACC_BRIDGE): New macro.
+ (ACC_VARARGS): Likewise.
+ (ACC_SYNTHETIC): Likewise.
+ (ACC_ENUM): Likewise.
+ (ACC_ANNOTATION): Likewise.
+
+2006-06-04 Tom Tromey <tromey@redhat.com>
+
+ * lang.opt (-fsaw-java-file, -fsource, -ftarget): New options.
+ * jvspec.c (jvgenmain_spec): Remove -fsaw-java-file, -fsource,
+ and -ftarget.
+ (lang_specific_driver): Removed dead code. Add -fsaw-java-file
+ when needed. Handle classpath-setting.
+ * Make-lang.in ($(GCJ)$(exeext)): Link in jcf-path.o.
+ * lang-specs.h: Rewrote.
+
+2006-06-04 Tom Tromey <tromey@redhat.com>
+
+ * jcf-io.c (find_class): Set source_ok to 0.
+ * jcf-parse.c (jcf_parse): Disable gnu.gcj.gcj-compiled warning.
+ (parse_class_file): Don't call java_mark_class_local.
+ (java_parse_file): Skip .java files. Call java_mark_class_local
+ before lowering any code.
+ (parse_zip_file_entries): Don't call duplicate_class_warning
+ here.
+ (process_zip_dir): ... call it here.
+ * class.c (add_field): Don't mark field external if it is being
+ compiled into this object.
+ (make_class_data): Handle situation where class_dtable_decl is
+ created before Class is compiled.
+ (is_compiled_class): Don't assume files in zip are compiled into
+ this object.
+ (layout_class_method): Don't mark method external if it is being
+ compiled into this object.
+
+2006-06-04 Tom Tromey <tromey@redhat.com>
+
+ * jcf-path.c (jcf_path_compute): New function.
+ * jcf.h (jcf_path_compute): Declare.
+
2006-10-23 Rafael Avila de Espindola <rafael.espindola@gmail.com>
* decl.c: Include langhooks.h.