OSDN Git Service

Fix for PR 18010, copy epilogue unwind info when copying epilogue insns.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9ffe392..38c6bfc 100644 (file)
@@ -1,9 +1,235 @@
+2004-10-26  James E Wilson  <wilson@specifixinc.com>
+
+       PR target/18010
+       * emit-rtl.c (emit_copy_of_insn_after): Copy RTX_FRAME_RELATED_P.
+
+2004-10-26  Zack Weinberg  <zack@codesourcery.com>
+
+       * dbxout.c: Include obstack.h.
+       (ASM_STABS_OP): Take XCOFF_DEBUGGING_INFO into account in
+       default definition.
+       (ASM_STABD_OP, NO_DBX_MAIN_SOURCE_DIRECTORY, DBX_CONTIN_CHAR):
+       Default-define here.
+       (DBX_CONTIN_LENGTH): Move definition with others.
+       (DBX_FINISH_STABS): New target macro.
+       (current_sym_code, current_sym_value, current_sym_addr)
+       (current_sym_nchars, CHARS, dbxout_continue)
+       (print_int_cst_octal, print_octal, print_wide_int)
+       (dbxout_prepare_symbol, dbxout_finish_symbol): Delete.
+       (stabstr_ob, stabstr_last_contin_point): New variables.
+       (NUMBER_FMT_LOOP): New improper macro.
+       (dbxout_int, dbxout_stab_value_zero, dbxout_stab_value_label)
+       (dbxout_stab_value_label_diff, dbxout_stab_value_internal_label)
+       (dbxout_stab_value_internal_label_diff, dbxout_stabd)
+       (dbxout_begin_stabn, dbxout_begin_stabn_sline)
+       (dbxout_begin_simple_stabs, dbxout_begin_simple_stabs_desc)
+       (dbxout_begin_complex_stabs, dbxout_finish_complex_stabs)
+       (stabstr_C, stabstr_S, stabstr_I, stabstr_D, stabstr_U, stabstr_O)
+       (stabstr_continue, DECL_ACCESSIBILITY_CHAR)
+       New functions and/or proper function-like macros.
+       (CONTIN): Use stabstr_continue, unconditionally.
+       (get_lang_number): Define unconditionally, with ATTRIBUTE_UNUSED.
+       (dbxout_init): Initialize stabstr_ob.  Check
+       NO_DBX_MAIN_SOURCE_DIRECTORY.  Only write out the Ltext label
+       if it was used.  Use the new interfaces.
+       (dbxout_source_file): Remove file argument; always write to
+       asm_out_file.  Use the new interfaces.
+       (dbxout_type_method_1): Remove second argument which is always
+       DECL_ASSEMBLER_NAME of the first argument.  Use the new interfaces.
+       (dbxout_type_methods): Remove write-only variables.  Use the
+       new interfaces.
+       (dbxout_parms): Refactor to remove code duplicated in each of
+       several successive if-else-if blocks.  Use the new interfaces.
+       (dbxout_function_end, emit_bincl_stab, dbxout_end_source_file)
+       (dbxout_source_line, dbxout_finish, dbxout_type_index)
+       (dbxout_type_fields, dbxout_range_type, dbxout_type, dbxout_type_name)
+       (dbxout_class_name_qualifiers, dbxout_symbol, dbxout_symbol_location)
+       (dbxout_symbol_name, dbxout_reg_parms, dbxout_args)
+       (dbx_output_lbrac, dbx_output_rbrac, dbxout_block):
+       Use the new interfaces.
+       * Makefile.in (dbxout.o): Update dependencies.
+
+       * defaults.h: Don't define ASM_STABD_OP.
+       * output.h: Prototype new dbxout_* interfaces.
+       * system.h: Poison DBX_OUTPUT_GCC_MARKER and DBX_FINISH_SYMBOL.
+       * varasm.c: Don't define ASM_STABS_OP.
+       (default_stabs_asm_out_constructor, default_stabs_asm_out_destructor):
+       Use the new dbxout.c interfaces.  Call sorry if neither
+       DBX_DEBUGGING_INFO nor XCOFF_DEBUGGING_INFO is defined.
+
+       * xcoffout.h: Don't define ASM_STABS_OP.
+       (DBX_FINISH_SYMBOL): Rewrite and rename DBX_FINISH_STABS.
+       (DBX_OUTPUT_MAIN_SOURCE_DIRECTORY, DBX_OUTPUT_GCC_MARKER): Delete.
+       (NO_DBX_MAIN_SOURCE_DIRECTORY, NO_DBX_GCC_MARKER): Define.
+       (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Change bare block to
+       do { ... } while (0) idiom.
+
+       * config/alpha/alpha.c (num_source_filenames): Export.
+       * config/alpha/alpha.h (num_source_filenames): Declare.
+       (DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
+       (SDB_OUTPUT_SOURCE_LINE): Add missing newline.
+       * config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
+       Always use .debugsym.  Update commentary.
+       * config/mips/mips.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
+       (SDB_OUTPUT_SOURCE_LINE): Add missing newline.
+       * config/rs6000/linux64.h (DBX_OUTPUT_SOURCE_LINE, DBX_OUTPUT_BRAC):
+       Use new interfaces.
+       * config/rs6000/rs6000.c: If TARGET_MACHO, include gstab.h.
+       (macho_branch_islands): Use new interfaces.
+
+       * doc/tm.texi: Update.
+
+2004-10-26  Aldy Hernandez  <aldyh@redhat.com>
+
+       * expr.c (emit_group_store): Do not treat floats as BLKmode.
+       (emit_group_load): Same.
+
+2004-10-26  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-parse.in (datadef): Use pedwarn rather than error and warning
+       for diagnostic in case of no declaration specifiers.
+
+2004-10-26  Richard Sandiford  <rsandifo@redhat.com>
+
+       PR bootstrap/15747
+       * doc/install.texi (mips-sgi-irix5): Document that /bin/sh has been
+       reported to hang during bootstrap and that CONFIG_SHELL=/bin/ksh
+       can be used to work around this.
+
+2004-10-26  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.h (MEMBER_TYPE_FORCES_BLK): Adjust for e500
+       doubles.
+
+2004-10-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * stmt.c (expand_case): Update a comment.
+
+2004-10-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * stmt.c (expand_case): Put an assertion that index_expr is
+       never INTEGER_CST.  Don't special case for constant
+       index_expr.
+
+2004-10-26  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR 18162
+       * c-parse.in (designator): Finish with a semi-colon.
+
+2004-10-26  Fariborz Jahanian <fjahanian@apple.com>
+
+       * config/rs6000/rs6000.md (andsi3_internal8): Set CR when splitting
+       into rotlsi3.
+
+2004-10-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * stmt.c (expand_case): Remove code to handle SWITCH_EXPR with
+       a default case only.
+
+2004-10-26  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.c (rs6000_hard_regno_nregs): Adjust for
+       e500 doubles.
+       (spe_build_register_parallel): New.
+       (rs6000_spe_function_arg): Handle e500 doubles.
+       (function_arg): Same.
+       (spe_func_has_64bit_regs_p): Same.
+       (rs6000_function_value): Same.
+       (rs6000_libcall_value): Same.
+       (legitimate_lo_sum_address_p): Return false for e500 doubles.
+
+       * config/rs6000/rs6000.h (LOCAL_ALIGNMENT): Adjust for e500
+       doubles.
+       (DATA_ALIGNMENT): Same.
+       (CANNOT_CHANGE_MODE_CLASS): Same.
+
+2004-10-26  Aldy Hernandez  <aldyh@redhat.com>
+
+       * expr.c (emit_group_load): Handle floats.
+       (emit_group_store): Same.
+
+2004-10-26  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * c-lex.c (get_nonpadding_token): Remove.
+       (c_lex_with_flags): Push timevar and eat padding here.  Improve
+       stray token diagnostic.
+       (lex_string): Replace logic with switch statement, eat padding
+       token here.
+
+2004-10-26  Geoffrey Keating  <geoffk@apple.com>
+
+       PR 18149
+       * config/i386/darwin.h (ASM_SPEC): Undef it before defining.
+
+2004-10-25  Geoffrey Keating  <geoffk@apple.com>
+
+       * config/darwin.h (LINK_SPEC): Default weak_reference_mismatches
+       to 'non-weak'.
+       (MAKE_DECL_ONE_ONLY): Set DECL_WEAK.
+       (ASM_MAKE_LABEL_LINKONCE): Delete.
+       (ASM_WEAKEN_DECL): New.
+       (ASM_DECLARE_OBJECT_NAME): Look at DECL_WEAK not DECL_ONE_ONLY.
+       (ASM_DECLARE_FUNCTION_NAME): Likewise.
+       (TEXT_SECTION_ASM_OP): Add a tab.
+       (DATA_SECTION_ASM_OP): Likewise.
+       (SECTION_FUNCTION): Add a tab.  Use fputs.  Don't call
+       data_section on every section change.
+       (EXTRA_SECTIONS): Add a bunch of new extra sections.
+       (EXTRA_SECTION_FUNCTIONS): Likewise.
+       (USE_SELECT_SECTION_FOR_FUNCTIONS): Define.
+       (JCR_SECTION_NAME): Define.
+       (TARGET_SECTION_TYPE_FLAGS): Don't define.
+       * config/darwin.c (darwin_encode_section_info): A symbol is defined
+       in this file if it is not weak.
+       (textcoal_section): Delete.
+       (datacoal_section): Delete.
+       (darwin_make_decl_one_only): Delete.
+       (machopic_select_section): Handle functions.
+       (darwin_asm_named_section): Add a tab.
+       (darwin_section_type_flags): Delete.
+       (darwin_unique_section): Delete contents.
+       (darwin_emit_unwind_label): Add a tab.  Make decls weak if
+       DECL_WEAK is set.
+       * config/darwin-protos.h (darwin_section_type_flags): Delete.
+       (darwin_make_decl_one_only): Delete.
+       (text_coal_section): New.
+       (text_unlikely_section): New.
+       (text_unlikely_coal_section): New.
+       (const_coal_section): New.
+       (data_coal_section): New.
+       (const_data_coal_section): New.
+       * varasm.c (function_section): Honour
+       USE_SELECT_SECTION_FOR_FUNCTIONS.
+       * dwarf2out.c (output_call_frame_info): Look at DECL_WEAK when
+       TARGET_USES_WEAK_UNWIND_INFO is in effect.
+       * dbxout.c (dbxout_source_file): Don't change sections while
+       a function is being output.
+
+2004-10-25  David Ayers  <d.ayers@inode.at>
+
+       * c-common.h: Remove RID_ID.
+       * c-parse.in: Remove OBJECTNAME and references to RID_ID.
+       (typespec_reserved_attr): Add rule for TYPENAME
+       non_empty_protocolrefs.
+       (yylexname): Remove special handling of RID_ID.
+
+2004-10-25  James E Wilson  <wilson@specifixinc.com>
+
+       * doc/invoke.texi (-fcrossjumping): Not enabled at -O.
+
+2004-10-25  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       PR c/16667
+       * c-parse.in (array_designator): New.
+       (designator): Use it.
+       (initelt): Only permit array_designator without '=', not ".foo".
+
 2004-10-25  Kenneth Zadeck <zadeck@naturalbridge.com>
        * gcc/Makefile.in: removed ggc for cgraphunit.
        * gcc/cgraph.c.dump_cgraph_node: removed static var analysis.
        * gcc/cgraph.h: removed static var analysis data structures and calls.
-       * gcc/cgraphunit.c: 
-       cgraph_mark_local_and_external_functions:changed name to 
+       * gcc/cgraphunit.c:
+       cgraph_mark_local_and_external_functions:changed name to
                cgraph_mark_local_functions
        (print_order,convert_UIDs_in_bitmap,new_static_vars_info,
        cgraph_reset_static_var_maps,get_global_static_vars_info,
        removed.
        (cgraph_optimize,init_cgraph): removed calls to static vars analysis
        * gcc/tree-dfa.c find_referenced_vars: removed call to static vars
-       analysis 
-       * gcc/tree-flow.h static_vars_info: removed 
+       analysis
+       * gcc/tree-flow.h static_vars_info: removed
        * gcc/tree-ssa-operands.c (add_call_clobber_ops,add_call_read_ops):
        removed calls to static vars analysis.
        get_call_expr_operands: removed callee variable.
 
 2004-10-25  David Billinghurst <David.Billinghurst@riotinto.com>
 
-       * config/mips/mips.c(mips_output_filename): Remove unused 
+       * config/mips/mips.c(mips_output_filename): Remove unused
        array ltext_label_name
 
 2004-10-24  Geoffrey Keating  <geoffk@geoffk.org>
 
 2004-10-22  Eric Christopher  <echristo@redhat.com>
 
-        * config/rs6000/rs6000.c (setup_incoming_varargs): Align DFmode
+       * config/rs6000/rs6000.c (setup_incoming_varargs): Align DFmode
        saves.
 
 2004-10-22  Aldy Hernandez  <aldyh@redhat.com>