OSDN Git Service

* system.h (SSIZE_MAX): Delete backup definition.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 0ea100b..f6a6c20 100644 (file)
@@ -1,5 +1,505 @@
+2000-06-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * system.h (SSIZE_MAX): Delete backup definition.
+
+       * cppfiles.c (read_include_file): Use INTTYPE_MAXIMUM(ssize_t)
+       instead of SSIZE_MAX.
+
+2000-06-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * configure.in: Check whether gas supports -relax.
+       * configure, config.in: Rebuilt.
+       * config/sparc/sparc.h (ASM_RELAX_SPEC): Define.
+       (EXTRA_SPECS): Add asm_relax.
+       (ASM_SPEC): Add %(asm_relax).
+       (TARGET_SWITCHES): Add -mrelax and -mno-relax.
+       * config/sparc/linux64.h (LINK_ARCH_SPEC): Rename to LINK_SPEC.
+       (LINK_SPEC): Pass -relax to linker unless -mno-relax or -r.
+       (ASM_SPEC): Add %(asm_relax).
+       * config/sparc/linux.h (LINK_SPEC, ASM_SPEC): Likewise.
+       * config/sparc/sparc.c (output_sibcall): If HAVE_AS_RELAX_OPTION,
+       never use sethi/jmpl for leaf tail calls.  Use or with rs2 %g0
+       instead of mov, so that gas can further optimize it.
+
+2000-06-08  James E. Wilson  <wilson@bletchleypark.cygnus.com>
+
+       * dwarf2out.c (size_of_die, case dw_val_class_const): Use
+       size_of_sleb128.
+       (value_format, case dw_val_class_const): Use sdata format.
+       (output_die): Call output_sleb128.
+
+2000-06-08  Mark Mitchell  <mark@codesourcery.com>
+
+       * invoke.texi: Remove documentation for -fsquangle and
+       -fname-mangling-version.
+
+2000-06-08  James E. Wilson  <wilson@cygnus.com>
+
+       * dwarf2out.c (ASM_OUTPUT_DWARF_DATA8): Add new macro that uses
+       UNALIGNED_DOUBLE_INT_ASM_OP.  Rename old macro to
+       ASM_OUTPUT_DWARF_CONST_DOUBLE.
+       (output_die, case dw_val_class_unsigned_const): Correct call to
+       ASM_OUTPUT_DWARF_DATA8.
+       (output_die, case dw_val_class_long_long): Use
+       ASM_OUTPUT_DWARF_CONST_DOUBLE.
+       * tree.c (host_integerp): Accept unsigned HOST_WIDE_INT values when
+       pos is zero.
+       
+       * config/ia64/ia64-protos.h (ia64_output_end_prologue): Add.
+       (output_function_prologue): Fix mispelling.
+       (output_function_prologue, output_function_epilogue): Reorder to
+       match ia64.c definition order.
+       * config/ia64/ia64.c (ia64_expand_prologue): Add comment.
+       (ia64_expand_epilogue): Set RTX_FRAME_RELATED_P on stack restore insns.
+       Use r3 instead of r2 for large stack restores.
+       (ia64_output_end_prologue): New function.
+       (process_set): Emit ".restore sp" for epilogue stack restores.
+       * config/ia64/ia64.h (FUNCTION_END_PROLOGUE): Define.
+       
+2000-06-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * dbxout.c (dbxout_type_fields): Don't segfault on fields with
+       incomplete types.
+
+2000-06-08  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * frame.c (end_fde_sort): Remove extraneous erratic array test.
+
+2000-06-08  Denis Perchine <dyp@perchine.com>
+
+       * frame.c (start_fde_sort): Don't malloc (0).
+
+2000-06-07  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * c-decl.c (pushdecl): Do not call COMPLETE_TYPE_P on
+       error_mark_node. 
+       * print-tree.c (print_node): The transparent_union_flag means
+       different things for unions and arrays.  Do not inspect it
+       with TYPE_TRANSPARENT_UNION.
+
+2000-06-06  Jakub Jelinek  <jakub@redhat.com>
+
+       * cpplib.c (do_ifdef, do_ifndef): Don't segfault if parse_ifdef
+       returned NULL.
+
+Wed Jun  7 20:34:33 2000  Denis Chertykov  <denisc@overta.ru>
+
+       * config/avr/avr.c (asm_output_section_name): output section
+       attributes.
+       * config/avr/libgcc.S (.text.libgcc): declare section attributes.
+
+2000-06-06  James E. Wilson  <wilson@cygnus.com>
+
+       * frame.h (struct unwind_info_ptr): Collapse version, flags, and length
+       fields into header field.
+       (IA64_UNW_HDR_LENGTH, IA64_UNW_HDR_FLAGS, IA64_UNW_HDR_VERSION): New
+       macros to access length, flags, and version info from header field.
+       * config/ia64/crtbegin.asm (__do_frame_setup_aux): Delete here.
+       * config/ia64/crtend.asm (__do_frame_setup_aux): Add here.
+       (__do_global_ctors_aux): Fix caller.
+       * config/ia64/frame-ia64.c (get_unwind_record): Change parameter
+       prologue_flag to header.  Pass to read_P_record.
+       (read_P_record): New argument header.  Implement P4 format.
+       Multiply P7_T_SIZE by 16.
+       (execute_one_ia64_descriptor): New static local region_header.  Pass to
+       get_unwind_record.  Copy r to region_header if r is a header record.
+       (print_all_records): Likewise.
+       (__build_ia64_frame_state): Use IA64_UNW_HDR_LENGTH.
+       (__get_personality, __get_except_table): Likewise.
+       * config/ia64/ia64.c (process_set): Do not divide offsets by 4.
+
+2000-06-06  Philipp Thomas  <pthomas@suse.de>
+
+        * configure.in (AC_C_INLINE): Added.
+       * aclocal.m4 (AM_WITH_NLS): Enable --with-included-gettext by default.
+       * configure: Regenerate.
+
+2000-06-06  Mark Mitchell  <mark@codesourcery.com>
+
+       * c-common.h (c_language_kind): New type.
+       (c_language): New variab.e
+       * c-common.c (lang_get_alias_set): Don't put structures in
+       non-zero alias sets in C++.
+       * c-decl.c (c_language): Define it.
+       * c-lex.c (doing_objc_thang): Remove.
+       * c-tree.h (doing_objc_thang): Make it a macro.
+       * objc/objc-act.c (lang_decode_option): Set c_language, not
+       doing_objc_thang. 
+       
+2000-06-06  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * diagnostic.c (output_maximum_width): Remove.
+       (doing_line_wrapping): Tweak.
+       (diagnostic_buffer): New object.
+       (global_output_buffer): New object.
+       (output_destroy_prefix): New function.
+       (default_initialize_buffer): Likewise.
+       (reshape_diagnostic_buffer): Likewise.
+       (initialize_diagnostics): Likewise.
+       (output_clear): Tweak.
+       (line_wrapper_printf): Adjust call to init_output_buffer.
+       (vline_wrapper_message_with_location): Likewise.  Use
+       output_destroy_prefix. 
+       (v_message_with_decl): Likewise.
+
+       * diagnostic.h (struct output_buffer): Constify prefix.
+       (init_output_buffer, output_get_prefix): Constify.
+       (diagnostic_message_length_per_line): Likewise.
+       (reshape_diagnostic_buffer): Declare.
+       (default_initialize_buffer): Declare.
+       (initialize_diagnostics): Declare.
+       (diagnostic_buffer): Declare new obbject.
+
+       * toplev.c: #include diagnostic.h
+       (display_help): Document diagnostic formatting options.
+       (decode_f_option): Handle diagnostic formatting options.
+       (main): Setup initialization for diagnostic messages outputter.
+
+       * toplev.h (set_message_length): Remove.
+
+       * Makefile.in (toplev.o): Depends upon diagnostic.h
+
+       * invoke.texi : Document diagnostics formatting options.
+
+Tue Jun  6 19:25:32 2000  Philippe De Muyter  <phdm@macqel.be>
+
+       * configure.in (Make the links): Typo fix : the file that must be
+       included without #ifdef IN_GCC is `auto-host.h', not `auto-config.h'.
+       * configure: File rebuilt.
+
+2000-06-06  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * eh-common.h (EH_ALLOC_SIZE, EH_ALLOC_ALIGN): New #defines.
+       (eh_context): Add alloc_mask and alloc_buffer emergency fallback
+       space.
+       * libgcc2.c (__eh_alloc): Moved from cp/exception.cc. Fallback on
+       emergency eh_context buffer, if malloc fails.
+       (__eh_free): Moved from cp/exception.cc. Release to emergency
+       eh_context buffer, if appropriate.
+
+2000-06-06  Jason Merrill  <jason@casey.soma.redhat.com>
+
+       * expr.c (store_expr): Fix typo.
+
+2000-06-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * m68k.c (legitimize_pic_address): Move prototype ...
+       
+       * m68k-protos.h (legitimize_pic_address): ... here.
+
+       * m68k.md (legitimize_pic_address): Delete prototypes.
+       (untyped_call): Invoke GEN_CALL(), not gen_call().
+
+       * nextstep.c: Include system.h and toplev.h.
+       (get_directive_line): Don't prototype.
+       (handle_pragma): Mark parameters with ATTRIBUTE_UNUSED and constify.
+
+       * nextstep.h (handle_pragma): Prototype.
+       (SECTION_FUNCTION): Prototype FUNCTION().  Move prototype of
+       objc_section_init ...
+       (EXTRA_SECTION_FUNCTIONS): ... here.
+
+Tue Jun  6 08:17:26 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * sdbout.c (struct sdb_file): NAME now const.
+       (sdbout_init): input_file_name now const.
+       (sdbout_start_new_source_file): FILENAME now const.
+       * sdbout.c (sdbout_init, sdbout_start_new_source_file): Reflect above.
+
+2000-06-06  Gabriel Dos Reis  <gdr@codesourcery.com>
+
+       * c-typeck.c (build_conditional_expr): Handle complex data types.
+
+2000-06-05  Jason Merrill  <jason@casey.soma.redhat.com>
+
+       * explow.c (maybe_set_unchanging): New function, broken out from...
+       (set_mem_attributes): Here.
+       * expr.h: Declare it.
+       * stmt.c (expand_decl): Call it.
+
+2000-06-05  Richard Henderson  <rth@cygnus.com>
+
+       * reload1.c (choose_reload_regs): Mind CLASS_CANNOT_CHANGE_SIZE
+       while looking for a register to inherit from.
+
+2000-06-05  Jason Merrill  <jason@casey.soma.redhat.com>
+
+       * Makefile.in (libgcc.ready): Lose.
+       (libgcc.mk): Just use mv, not move-if-change.
+       (LIBGCC_DEPS): New macro.
+       (libgcc.a): Use it.
+       (stmp-multilib): Likewise.
+       * mklibgcc.in (stmp-dirs): New target.  Make everything depend on
+       it rather than the directories themselves.
+       (LIB2ADD): Depend on the list file rather than 'force'.
+
+       * fold-const.c (fold, case COND_EXPR): Elide conversion between
+       cv-qualified versions of types.
+
+Mon Jun  5 14:06:18 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * config/sparc/sparc.c (short_branch): Correct error in range
+       computation.
+
+2000-06-05  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * fixinc/inclhack.def: New include hacks for ultrix.
+       * (nested_ultrix): Replaced by ultrix_nested_svc.
+       * (ultrix_atof_param): test_text string added.
+       * (ultrix_ifdef): Modified select string.
+
+2000-06-05  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * objc/objc-act.c (generate_method_descriptors): Register
+       objc_method_prototype_template as a GC root.
+       (comp_method_with_proto): Register function_type as a GC root.
+       (comp_proto_with_proto): Replace function_type1 and
+       function_type2 with a two-element array; register it as a GC root.
+
+       (generate_protocols, build_protocol_initializer,
+       generate_protocol_list, build_category_initializer,
+       build_shared_structure_initializer): Do not cache cast_type
+       and/or cast_type2.
+
+2000-06-05  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * function.c (assign_parms): Add missing argument to set_mem_attributes
+       call.
+
+2000-06-05  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * tree.h (VOID_TYPE_P): New macro.
+       (COMPLETE_OR_VOID_TYPE_P): Use VOID_TYPE_P.
+       * c-decl.c (grokdeclarator): Use VOID_TYPE_P.
+       (get_parm_info): Likewise.
+       (store_parm_decls): Likewise.
+       (combine_parm_decls): Likewise.
+       (finish_function): Likewise.
+       * c-typeck.c (build_function_call): Likewise.
+       (build_binary_op): Likewise.
+       (build_conditional_expr): Likewise.
+       (internal_build_compound_expr): Likewise.
+       (convert_for_assignment): Likewise.
+       * stmt.c (expend_expr_stmt): Likewise.
+       (warn_if_unused_value): Likewise.
+       (expand_return): Likewise.
+       * c-parse.in (primary): Likewise.
+       * c-parse.y, c-parse.c, c-parse.h: Regenerate.
+       * objc/objc-parse.y, objc/objc-parse.c: Regenerate.
+
+Mon Jun  5 06:46:28 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * alias.c (get_alias_set): If compnent is addressable, use alias
+       set of component.
+       * c-decl.c (init_decl_processing): Don't call record_component_aliases.
+       (grokdeclarator): Likewise.
+       * c-typeck.c (common_type): Likewise.
+
+2000-06-04  Alex Samuel  <samuel@codesourcery.com>
+
+       * Makefile.in (OBJS): Remove dyn_string.o
+       (dyn-string.o): Delete rule.
+       * dyn-string.c: Delete file
+       * dyn-string.h: Likewise.
+       
+2000-06-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Makefile.in (intl.*): Honor non-zero exit codes in the intl
+       subdir.
+
+S2000-06-03  Geoff Keating  <geoffk@cygnus.com>
+
+        * alias.c (record_component_aliases): Don't inspect
+        DECL_NONADDRESSABLE_P of non-FIELD_DECL components of structures.
+
+at Jun  3 19:05:30 2000  Michael Meissner  <meissner@redhat.com>
+
+       * ifcvt.c (process_insns): If IFCVT_MODIFY_INSN is defined, call
+       it with the pattern to do machine dependent work.
+       (cond_exec_process_if_block): If IFCVT_MODIFY_TESTS is defined,
+       use it to modify the true/false tests used in conditional
+       execution.  If IFCVT_MODIFY_FINAL and IFCVT_MODIFY_CANCEL are
+       defined, invoke them if the conversion to conditional execution
+       was successful or not.
+
+       * tm.texi (IFCVT_MODIFY_TESTS): Document.
+       (IFCVT_MODIFY_INSN): Ditto.
+       (IFCVT_MODIFY_FINAL): Ditto.
+       (IFCVT_MODIFY_CANCEL): Ditto.
+
+Sat Jun  3 15:26:13 2000  Matt Kraai <kraai@alumni.carnegiemellon.edu>
+
+       * toplev.c (main): Fix misspellings of possibility and language.
+
+2000-06-03  Richard Henderson  <rth@cygnus.com>
+
+       * alias.c (record_alias_subset): Initialize has_zero_child in the
+       superset.
+
+2000-06-03  Richard Earnshaw (rearnsha@arm.com)
+
+       * arm.md (untyped_call): Use GEN_CALL macro.
+
+2000-06-02  Pekka Nikander  <pnr@teldanex.tcm.hut.fi>
+
+       * Makefile.in: Use $(MAKE) not "make"
+
+Fri Jun  2 19:31:03 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * alias.c (struct alias_set_entry): New field has_zero_child.
+       (mem_in_disjoint_alias_sets_p): Return 0 if set in either ase.
+       (get_alias_set): If language-dependent routine set TYPE_ALIAS_SET,
+       do nothing.
+       Call record_component_aliases for aggregate types.
+       (record_alias_subset): Set has_zero_child.
+       (record_component_aliases, case ARRAY_TYPE): Do nothing if
+       TYPE_NONALIASES_COMPONENT.
+       (record_component_aliases, case RECORD_TYPE): Test
+       DECL_NONADDRESSABLE_P.
+       * c-decl.c (grokdeclarator): Set DECL_NONADDRESSABLE_P instead
+       of TREE_ADDRESSABLE.
+       * calls.c (initialize_argument_information): Only test
+       TYPE_TRANSPARENT_UNION for UNION_TYPE.
+       * function.c (assign_parms): Likewise.
+       * integrate.c (function_cannot_inline_p): Likewise.
+       * stor-layout.c (finish_record_layout): Don't call
+       record_component_aliases.
+       * tree.h (struct tree_int_cst): Use struct tree_common.
+       (struct tree_real_cst, struct tree_string): Likewise.
+       (struct tree_complex, struct tree_identifier): Likewise.
+       (struct tree_list, struct tree_vec, struct tree_exp): Likewise.
+       (struct tree_block, struct tree_type, struct tree_decl): Likewise.
+       (TYPE_TRANSPARENT_UNION): Use UNION_TYPE_CHECK.
+       (TYPE_NONALIASES_COMPONENT): New macro.
+       (TYPE_AMBIENT_BOUNDEDNESS): Use FUNCTION_TYPE_CHECK.
+       (DECL_NONADDRESSABLE_P): New macro.
+       (struct tree_decl): Reorder bits for clarity of how many left;
+       add non_adressable.
+
+2000-06-02  Jason Merrill  <jason@casey.soma.redhat.com>
+
+       * Makefile.in (libgcc.a): Also depend on $(LIB2ADD).
+       * mklibgcc.in (force): New target.
+       Make LIB2ADD stuff depend on it.
+
+2000-06-02  Richard Henderson  <rth@cygnus.com>
+
+       * alias.c (lang_get_alias_set): Remove.
+       (get_alias_set): Call it directly, not indirectly.
+       * c-common.c (lang_get_alias_set): Rename from c_get_alias_set.
+       * c-common.h (c_get_alias_set): Don't declare.
+       * c-decl.c (init_decl_processing): Don't set lang_get_alias_set.
+       * expr.h (lang_get_alias_set): Declare as function, not pointer.
+       
+2000-06-02  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/server.c(sig_handler):  resume closing server on SIGPIPE
+       (server_setup):  define the server's master pid
+       (close_server):  actually do the deed IFF we are the server's master
+
+2000-06-02  Jakub Jelinek  <jakub@redhat.com>
+
+       * c-common.c (c_get_alias_set): Check whether signed_type did not
+       return its argument before calling get_alias_set on the result.
+
+2000-06-02  Andrew MacLeod  <amacleod@cygnus.com>
+
+       * expr.c (emit_group_load): Fix typo, GET_MODE not GET_CODE.
+
+Fri Jun  2 00:22:52 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * sh.h (CPP_SPEC): Add -D__NOMACSAVE__ for -mnomacsave.
+       (CONDITIONAL_REGISTER_USAGE): Mac registers are call used
+       for TARGET_NOMACSAVE.
+       (NOMACSAVE_BIT): Define.
+       (TARGET_NOMACSAVE): Define.
+       (TARGET_SWITCHES): Add "nomacsave".
+
+2000-06-02  Toshiyasu Morita  <toshi.morita@sega.com>
+
+       * sh.md (untyped_call): Remove excess parameters
+
+2000-06-01  Loren J. Rittle  <ljrittle@acm.org>
+
+       * fixinc/inclhack.def (osf_namespace_a): Relax expression to
+       match that used before the conversion to c_fix style.
+       * fixinc/fixincl.x: regenerate
+
+2000-06-01  Stan Cox  <scox@cygnus.com>
+
+       * varray.h (VARRAY_PUSH_GENERIC_PTR, VARRAY_PUSH_CHAR_PTR): Fix
+       macro argument typo.
+
+2000-06-01  Zack Weinberg  <zack@wolery.cumb.org>
+
+       * cpplex.c (maybe_macroexpand): Use CPP_WTRADITIONAL.  Improve
+       error message.
+       * cpplib.c (parse_include): Remove support for VAX-C 
+       "#include starlet" misfeature.
+
+2000-05-31 Laurynas Biveinis <lauras@softhome.net>
+
+       * cppfiles.c: conditionally define O_BINARY.
+       (open_include_file): pass O_BINARY to open().
+
+2000-06-01  Richard Henderson  <rth@cygnus.com>
+
+       * i960.c (i960_br_predict_opcode): Remove.
+       (i960_print_operand) [+]: Emit branch prediction hints.
+       (i960_function_arg): Return early for VOIDmode.
+       (i960_round_align): Return early for incomplete types.
+       * i960.h (PRINT_OPERAND_PUNCT_VALID_P): New.
+       * i960.md (all conditional branches): Add "%+".
+
+Thu Jun  1 12:24:21 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * alias.c (get_alias_set): Don't call language-specific routine more
+       than is needed and clean up code a bit.
+       * c-common.c (c_get_alias_set): All references whose type
+       is char get alias set 0, but character types need not.
+       * varasm.c (make_function_rtl): Don't call set_mem_attributes.
+       (make_decl_rtl): Don't call it for FUNCTION_DECL.
+
+2000-06-01  Bruce Korb  <bkorb@gnu.org>
+
+       * fixinc/tests/base/...: new base result files
+
+Thu Jun  1 09:37:35 2000  Clinton Popetz  <cpopetz@cygnus.com>
+
+       * config/i386/i386.c (ix86_use_fcomi_compare): Make global.
+       * config/i386/i386-protos.h (ix86_use_fcomi_compare): Declare.
+       * config/i386/i386.md (*fp_jcc_3, *fp_jcc_4): Disable if we
+       will use FCOMI.
+       
+2000-06-01  Richard Henderson  <rth@cygnus.com>
+
+       * Makefile.in (c-decl.o): Depend on $(EXPR_H), not expr.h.
+
+       * c-decl.c (init_decl_processing): Set lang_get_alias_set first thing.
+
+2000-05-31  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64.c (sdata_symbolic_operand): Consider small
+       CONSTANT_POOL_ADDRESS_P addresses for .sdata.
+       * config/ia64/sysv4.h (SELECT_RTX_SECTION): New.
+
+2000-05-31  Richard Henderson  <rth@cygnus.com>
+
+       * config/ia64/ia64-protos.h (ia64_expand_prediction): Remove.
+       * config/ia64/ia64.c (ia64_expand_prediction): Move code ...
+       (ia64_print_operand) [+]: ... here.  Use current_output_insn.
+       * config/ia64/ia64.h (PRINT_OPERAND_PUNCT_VALID_P): New.
+       * config/ia64/ia64.md (all branch/call patterns): Use %+.
+
+2000-05-31  Richard Henderson  <rth@cygnus.com>
+
+       * ifcvt.c (cond_exec_process_insns): Don't ever ignore clobbers.
+
 2000-05-31  Richard Henderson  <rth@cygnus.com>
 
+       * ifcvt.c (merge_if_block): Be prepared for JOIN to have no 
+       remaining edges.
+       (find_if_block): Allow THEN with no outgoing edges.
        * flow.c (merge_blocks_nomove): Remove a barrier not following
        a jump as well.