OSDN Git Service

* config/rs6000/darwin.h (SUBTARGET_OPTIONS): Move from here, to...
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 770d2c0..67412fa 100644 (file)
@@ -1,7 +1,337 @@
+2004-08-21  Mike Stump  <mrs@apple.com>
+
+       * config/rs6000/darwin.h (SUBTARGET_OPTIONS): Move from here, to...
+       (darwin_fix_and_continue): Likewise.
+       (darwin_fix_and_continue_switch): Likewise.
+       * config/darwin.h (SUBTARGET_OPTIONS): ...here, to fix -mone-byte-bool.
+       (darwin_fix_and_continue): Likewise.
+       (darwin_fix_and_continue_switch): Likewise.
+
+2004-08-21  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR  c++/16030
+       * config/i386/winnt/c (gen_stdcall_suffix, gen_fastcall_suffix):
+       Remove, merging into ...
+       (gen_stdcall_or_fastcall_suffix): New function, returning tree
+       rather than const char*, and accepting additional parameter.
+       Don't add suffix to '*'-prefixed symbols or variadic functions.
+       (i386_pe_encode_section_info): Adjust for call to new function.
+       Call change_decl_assembler_name.
+
+2004-08-20  Mike Stump  <mrs@apple.com>
+
+       * config/darwin.c (machopic_indirect_data_reference): Mark
+       stubs as defined.
+       * config/386/386.c (darwin_local_data_pic): Add.
+       (legitimate_constant_p): Reorder so that PLUS handling runs
+       before darwin_local_data_pic to match the ordering in
+       legitimate_pic_address_disp_p and so that MINUS runs after
+       darwin_local_data_pic as otherwise the darwin_local_data_pic
+       logic can be skipped, which would be very bad.
+       (legitimate_pic_address_disp_p): Move from from here to
+       darwin_local_data_pic so it can be reused.
+
+2004-08-21  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/linux64.h (DOT_SYMBOLS): Define.
+       (CRT_CALL_STATIC_FUNCTION): Define !DOT_SYMBOLS version.
+       (ASM_DECLARE_FUNCTION_SIZE): Modify for !DOT_SYMBOLS.
+       (ASM_OUTPUT_SOURCE_LINE, DBX_OUTPUT_BRAC, DBX_OUTPUT_NFUN): Likewise.
+       (RS6000_ABI_NAME): Define as "linux".
+       (SUBSUBTARGET_OVERRIDE_OPTIONS): Set dot_symbols.
+       * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Select
+       ABI_AIX when rs6000_abi_name is "linux" and TARGET_64BIT.
+       * config/rs6000/rs6000-protos.h (rs6000_output_function_entry): Decl.
+       * config/rs6000/rs6000.c (dot_symbols): New global var.
+       (rs6000_output_function_entry): New function, modified for
+       !DOT_SYMBOLS..
+       (print_operand <case 'z'>): ..extracted from here.
+       (rs6000_assemble_visibility): Modify for !DOT_SYMBOLS.
+       (rs6000_output_function_epilogue): Likewise.
+       (rs6000_elf_declare_function_name): Likewise.
+       * config/rs6000/rs6000.h (DOT_SYMBOLS): Define.
+       (ASM_WEAKEN_DECL, ASM_OUTPUT_DEF_FROM_DECLS): Modify for !DOT_SYMBOLS.
+       * configure.ac (HAVE_LD_NO_DOT_SYMS): Add new AC_DEFINE.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+2004-08-20  Mark Mitchell  <mark@codesourcery.com>
+
+       * reload.c (find_reloads_address): Fix thinko in previous change.
+
+       * reload.c (find_reloads_address): Reload the sum of a LO_SUM and
+       a CONST_INT.
+
+2004-08-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/17099
+       * combine.c (force_to_mode): Check if inner_mask has any bits set
+       outside of GET_MODE (x) instead of op_mode.
+
+2004-08-20  Mark Mitchell  <mark@codesourcery.com>
+
+       * config.gcc (arm*-*-symbianelf*): Add t-symbian Makefile
+       fragment.
+       * config/arm/bpabi.h (RENAME_LIBRARY_SET): Fix typo.
+       (SUBTARGET_EXTRA_ASM_SPEC): Pass -meabi=3 to the assembler.
+       * config/arm/symbian.h (SUBTARGET_CPU_DEFAULT): Assume ARMV5
+       architecture.
+       (SUBTARGET_ASM_FLOAT_SPEC): Default to -mfpu=vfp for hard-float
+       configurations.
+       * config/arm/t-symbian: New file.
+
+2004-08-20  Andrew Pinski  <apinski@apple.com>
+
+       * regrename.c (kill_value_regno): ANSIfy.
+
+2004-08-20  Dale Johannesen  <dalej@apple.com>
+
+        * config/rs6000/rs6000.c (rs6000_rtx_costs): Improve DIV/MOD.
+
+2004-08-20  Daniel Jacobowitz  <dan@debian.org>
+
+       * regrename.c (kill_value_one_regno): Renamed from kill_value_regno.
+       (kill_value_regno): New function, derived from kill_value.
+       (kill_value): Update.
+       (copyprop_hardreg_forward_1): Update call to kill_value_regno.
+
+2004-08-20  Daniel Berlin  <dberlin@dberlin.org>
+       
+       Fix PR tree-optimization/17111
+       * tree-ssa-pre.c (create_value_expr_from): Don't change the types
+       of non-value_handles.
+       (bitmap_set_contains): All constants are in every set.
+
+2004-08-20  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * fold-const.c (round_up, round_down): Use build_int_cst.
+       Optimize common case.
+
+2004-08-20  Zack Weinberg  <zack@codesourcery.com>
+           John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+        * config/pa/pa-protos.h (readonly_data, one_only_readonly_data_section,
+       one_only_data_section): Rename to som_readonly_data_section,
+       som_one_only_readonly_data_section and som_one_only_data_section.
+        * config/pa/pa.c (ONE_ONLY_TEXT_SECTION_ASM_OP,
+       NEW_TEXT_SECTION_ASM_OP, DEFAULT_TEXT_SECTION_ASM_OP): Delete
+       conditional defines.
+       (som_text_section_asm_op): Replace ONE_ONLY_TEXT_SECTION_ASM_OP,
+       NEW_TEXT_SECTION_ASM_OP and DEFAULT_TEXT_SECTION_ASM_OP with actual
+       string values.
+       (pa_select_section): Use renamed section functions.
+       * config/pa/pa.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS,
+        SOM_READONLY_DATA_SECTION_FUNCTION,
+       SOM_ONE_ONLY_READONLY_DATA_SECTION_FUNCTION,
+        SOM_ONE_ONLY_DATA_SECTION_FUNCTION, FORGET_SECTION_FUNCTION):
+        Define here ...
+        * config/pa/som.h: ... not here.
+        (DEFAULT_TEXT_SECTION_ASM_OP, NEW_TEXT_SECTION_ASM_OP,
+       ONE_ONLY_TEXT_SECTION_ASM_OP, READONLY_DATA_ASM_OP,
+       ONE_ONLY_READONLY_DATA_SECTION_ASM_OP,
+        ONE_ONLY_DATA_SECTION_ASM_OP): Delete.
+        (READONLY_DATA_SECTION): Use som_readonly_data_section.
+
+2004-08-20  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * fold-const.c (int_const_binop): Don't generate non-overflowing
+       size-types specially.
+       (fold_convert_const): Likewise.
+
+       * stor-layout.c (initialize_sizetypes): Set SIZETYPE earlier,
+       clear cache on copied sizetype.
+
+2004-08-20  Ben Elliston  <bje@au.ibm.com>
+
+       * configure.ac: Don't escape apostrophe in --enable-coverage help.
+       * configure: Regenerate.
+
+2004-08-20  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR 5620
+       * gcc.c (struct stat input_stat): Don't define if
+       HOST_LACKS_INODE_NUMBERS
+       (do_spec_1): If HOST_LACKS_INODE_NUMBERS, use lrealpath rather
+       than stat to determine if temp file is same as input file.
+       * doc/hostconfig.texi: Document HOST_LACKS_INODE_NUMBERS.
+       * config/i386/xm-mingw32.h: Define HOST_LACKS_INODE_NUMBERS
+
+2004-08-20  Richard Sandiford  <rsandifo@redhat.com>
+
+       * configure.ac (mips*-*-*): Print an error if not using GAS.
+       * configure: Regenerated.
+       * doc/install.texi: Remove irix5 bullet from --with-gnu-as.  Remove
+       comments about buggy MIPSpro assemblers.
+       * config.gcc (mips-sgi-irix[56]*): Combine stanzas.  Include elfos.h
+       before mips.h and iris.h after it.  Use t-iris and t-slibgcc-irix.
+       Use iris5.h only for IRIX 5 configs.  Use iris6.h and t-iris6 for
+       IRIX 6 configs.  Define IRIX_USING_GNU_LD if using GNU ld.
+       * config/mips/iris5.h (TARGET_IRIX, SWITCHES_NEED_SPACES)
+       (DEFAULT_SIGNED_CHAR, WORD_SWITCH_TAKES_ARG, SUBTARGET_CC1_SPEC)
+       (NO_IMPLICIT_EXTERN_C, MIPS_DEFAULT_GVALUE)
+       (TARGET_ASM_EXTERNAL_LIBCALL): Move to iris.h.
+       (WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS): Delete in favor
+       of more general IRIX 6 definitions.
+       (OBJECT_FORMAT_ELF, ASM_OUTPUT_ASCII, ASM_WEAKEN_LABEL)
+       (HANDLE_SYSV_PRAGMA): Delete in favor of elfos.h definitions.
+       (TARGET_IRIX5, ABICALLS_ASM_OP, BSS_SECTION_ASM_OP, HAS_INIT_SECTION)
+       (LD_INIT_SWITCH, LD_FINI_SWITCH, SUBTARGET_ASM_OPTIMIZING_SPEC)
+       (ASM_FINAL_SPEC, DBX_DEBUGGING_INFO, MIPS_DEBUGGING_INFO)
+       (PREFERRED_DEBUGGING_TYPE, DWARF2_UNWIND_INFO, SET_FILE_NUMBER)
+       (LABEL_AFTER_LOC, DOLLARS_IN_IDENTIFIERS, NO_DOLLAR_IN_LABEL)
+       (TARGET_ASM_NAMED_SECTION, EXTRA_SECTION_FUNCTIONS)
+       (ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_WEAK_ALIAS)
+       (SUBTARGET_EXTRA_SPECS): Delete definitions or undefs.
+       (LINK_SPEC): Move most of definition to iris.h.
+       (SUBTARGET_LINK_SPEC): New macro.
+       (IRIX_STARTFILE_SPEC): Fold into...
+       (STARTFILE_SPEC): ...here.
+       (IRIX_ENDFILE_SPEC): Fold into...
+       (ENDFILE_SPEC): ...here.
+       * config/mips/iris6.h (TARGET_IRIX5): Remove override.
+       (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE)
+       (DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE, SET_ASM_OP)
+       (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES, ASM_DECLARE_OBJECT_NAME)
+       (ASM_FINISH_DECLARE_OBJECT, LOCAL_LABEL_PREFIX): Move to iris.h.
+       (TARGET_OS_CPP_BUILTINS): Likewise.  Guard IRIX6-specific bits.
+       (DWARF2_UNWIND_INFO, DWARF2_GENERATE_TEXT_SECTION_LABEL)
+       (SUBTARGET_CPP_SPEC, DWARF2_DEBUGGING_INFO, MIPS_DEBUGGING_INFO)
+       (PREFERRED_DEBUGGING_TYPE, DWARF2_FRAME_INFO, MD_EXEC_PREFIX)
+       (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE)
+       (FUNCTION_NAME_ALREADY_DECLARED, SUPPORTS_INIT_PRIORITY)
+       (POPSECTION_ASM_OP, SUBTARGET_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC)
+       (SUBTARGET_ASM_DEBUGGING_SPEC, SUBTARGET_ASM_OPTIMIZING_SPEC)
+       (BSS_SECTION_ASM_OP*, READONLY_DATA_SECTION_ASM_OP*)
+       (EH_FRAME_SECTION_NAME, MUST_USE_SJLJ_EXCEPTIONS, CTORS_SECTION_ASM_OP)
+       (DTORS_SECTION_ASM_OP, TARGET_ASM_NAMED_SECTION, EH_FRAME_SECTION_NAME)
+       (ASM_OUTPUT_ALIGN, ASM_OUTPUT_FILENAME, ASM_OUTPUT_ALIGNED_LOCAL)
+       (ASM_OUTPUT_ALIGNED_BSS): Remove definitions or undefs.
+       (TARGET_IRIX6): Define to 1.
+       (DRIVER_SELF_SPECS): Define.
+       (DWARF2_FRAME_INFO): Define to 1 rather than !TARGET_SGI_O32_AS.
+       (SUBTARGET_CC1_SPEC): Remove in favor of DRIVER_SELF_SPECS.
+       (SUBTARGET_LINK_SPEC): New macro.
+       (IRIX_STARTFILE_SPEC): Fold into...
+       (STARTFILE_SPEC): ...here.  Remove !mabi=* case.
+       (SUBTARGET_{,DONT_}WARN_UNUSED_SPEC): New macros.
+       (LIB_SPEC, LIBGCC_SPEC): Use them.
+       (LIB_SPEC): Remove !mabi=* case.
+       (IRIX_ENDFILE_SPEC): Fold into...
+       (ENDFILE_SPEC): ...here.  Remove !mabi=* case.
+       * config/mips/mips-protos.h (irix_output_external_libcall): Delete.
+       * config/mips/mips.h (TARGET_IRIX5, TARGET_SGI_O32_AS): Delete.
+       (TARGET_IRIX6): New macro.
+       (ASM_ABI_DEFAULT_SPEC): Remove !ELF definition.
+       (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX, SET_FILE_NUMBER)
+       (LABEL_AFTER_LOC): Delete.
+       * config/mips/mips.c (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END)
+       (TARGET_SECTION_TYPE_FLAGS): Remove TARGET_IRIX versions.
+       (mips_build_builtin_va_list): Check TARGET_IRIX6.
+       (override_options): Remove TARGET_SGI_O32_AS-related code.
+       (irix_output_external_libcall): Make static.
+       (mips_output_filename): Avoid use of SET_FILE_NUMBER and
+       LABEL_AFTER_LOC.
+       (mips_file_start): Tidy guard for ABI sections.  Remove use of
+       ABICALLS_ASM_OP; use .abicalls instead.
+       (mips_output_aligned_decl_common, mips_declare_object_name)
+       (mips_finish_declare_object): Remove use of TARGET_SGI_O32_AS.
+       (mips_output_function_prologue): Set TREE_ASM_WRITTEN if emitting
+       .globl foo .text directives.
+       (irix_asm_named_section_1, irix_asm_named_section)
+       (irix_section_align_entry, irix_section_align_htab)
+       (irix_orig_asm_out_file, irix_section_align_entry_eq)
+       (irix_section_align_entry_hash, irix_asm_output_align)
+       (irix_file_start, irix_section_align_1, copy_file_data)
+       (irix_file_end, irix_section_type_flags): Delete.
+       * config/mips/irix-crti.asm (__gcc_init): Move to .gcc_init section.
+       Use standard section syntax.  Remove protective "jr $31".
+       (__gcc_fini): Likewise .gcc_fini.
+       * config/mips/irix-crtn.asm: Adjust sections accordingly.
+       * config/mips/sdb.h (PUT_SDB_SIZE, PUT_SDB_TYPE): Moved from
+       iris5gas.h.
+       * config/mips/t-iris (irix-crti.o, irix-crtn.o): New rules, moved
+       from t-irix-gld.
+       (EXTRA_MULTILIB_PARTS): Define.
+       * config/mips/t-iris6: Remove bogus comment.
+       (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS): Delete.
+       * config/mips/iris5gas.h, config/mips/iris5gld.h,
+       config/mips/iris6gas.h, config/mips/iris6gld.h,
+       config/mips/t-iris5-as, config/mips/t-iris5-gas
+       config/mips/t-irix-gld: Delete.
+       * config/mips/iris.h: New file.
+       * config/mips/t-slibgcc-irix: Renamed from t-iris5-6.
+
+2004-08-20  Richard Earnshaw  <rearnsha@arm.com>
+
+       * postreload.c (reload_cse_move2add): Allow any condjump, but check
+       that the implicit set isn't clobbered in the jump insn.
+
+2004-08-19  Mark Mitchell  <mark@codesourcery.com>
+
+       * defaults.h (TARGET_LIBGCC_LIBFUNCS): Remove.
+       * optabs.c (init_optabs): Don't check it.
+       * config/arm/bpabi.h (TARGET_LIBGCC_LIBFUNCS): Do not define.
+       * doc/tm.texi (TARGET_LIBGCC_FUNCS): Remove.
+
+2004-08-18  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * config/s390/s390.md (s390_warn_framesize_string)
+       (s390_warn_dynamic_string, s390_stack_size_string)
+       (s390_stack_guard_string): New global string variables.
+       (s390_warn_framesize, s390_warn_dynamicstack_p, s390_stack_size)
+       (s390_stack_guard): New global variables.
+       (override_options): Added checks for the new options.
+       (s390_emit_prologue): Emit stack check and trap code and perform
+       compile time stack size checking.
+       
+       * config/s390/s390.h (TARGET_OPTIONS): Added new options 
+       "warn-framesize", "warn-dynamicstack", "stack-size" and
+       "stack-guard".
+
+       * doc/invoke.texi: Added documentation for the new options.
+
+2004-08-19  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * unwind-dw2-fde.c (get_cie_encoding): Cast argument to strlen
+       to eliminate warning.
+       (linear_search_fdes): Declare p as unsigned.
+       (binary_search_mixed_encoding_fdes): Likewise.
+       * unwind-dw2.c (get_cie_encoding): Cast argument to strlen
+       to eliminate warning.
+       * config/s390/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Add missing
+       type cast.
+
+2004-08-19  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390-protos.h (preferred_la_operand_p): Adapt prototype.
+       * config/s390/s390.c (preferred_la_operand_p): Accept two operands
+       instead of one.  Check for strictly legitimate address.
+       * config/s390/s390.md ("*la_31"/"*la_64" peepholes): Adapt call
+       to preferred_la_operand_p, do not call gen_rtx_PLUS in predicate.
+
+2004-08-19  Eric Christopher  <echristo@redhat.com>
+
+       * langhooks-def.h (LANG_HOOKS_UNSAVE_EXPR_NOW): Remove.
+       * langhooks.h (unsave_expr_now): Ditto.
+       * tree.h (unsave_expr_1): Remove prototype.
+       (lhd_unsave_expr_now): Rename to unsave_expr_now.
+       * tree-inline.c (unsave_expr_1): Move here
+       from tree.c. Make static.
+       (unsave_expr_now): Rename from lhd_unsave_expr_now.
+       * tree-sra.c: Fix up for rename.
+       * tree-ssa-copy.c: Ditto.
+       * tree-eh.c: Ditto.
+       * tree.c (unsave_expr_1): Move to tree-inline.c.
+
+2004-08-19  Caroline Tice  <ctice@apple.com>
+
+       * config/i386/cygming.h (switch_to_section):  Fix typo (change
+       in_unlikely_text_section to in_unlikely_executed_text).
+
 2004-08-19  Daniel Berlin  <dberlin@dberlin.org>
 
        * vec.h (VEC_lower_bound): New macro.
-       
+
 2004-08-19  Richard Sandiford  <rsandifo@redhat.com>
 
        PR target/16446
        * params.def (PARAM_INTEGER_SHARE_LIMIT): New.
        * params.h (INTEGER_SHARE_LIMIT): New.
        * Makefile.in (tree.o, stor-layout.o): Depend on PARAMS_H.
-       
+
 2004-08-19  Paolo Bonzini  <bonzini@gnu.org>
 
        * gimplify.c (gimplify_minimax_expr): Remove.
 
 2004-08-19  Dorit Naishlos  <dorit@il.ibm.com>
 
-       * tree-vectorizer.c (vect_can_force_dr_alignment_p): Replace 
+       * tree-vectorizer.c (vect_can_force_dr_alignment_p): Replace
        STACK_BOUDARY with PREFERRED_STACK_BOUNDARY.
 
 2004-08-19  Mark Mitchell  <mark@codesourcery.com>
        (divsf3+1, divsf3+2): Change type to frdiv.
        * config/mips/sb1.md (ir_sb1_recipsf_2pipes, ir_sb1_recipsf_1pipe,
        ir_sb1_recipdf_2pipes, ir_sb1_recipdf_1pipe): New.
-       
+
        * config/mips/3000.md (r3k_fdiv_single, r3k_fdiv_double): Add frdiv.
        * config/mips/4300.md (r4300_fdiv_single, r4300_fdiv_double): Likewise.
        * config/mips/4600.md (r4600_fdiv_single, f4600_fdiv_double): Likewise.
        (xstormy16_reorg): New.
        (TARGET_MACHINE_DEPENDENT_REORG): Define.
 
-
        * config/stormy16/stormy16.md (movqi_internal): Make name public.
        (movhi_internal): Likewise.
        (cbhranchhi): Likewise.
        * config/i386/xmmintrin.h: Include <mm_malloc.h>.
 
 2004-08-03  H.J. Lu  <hongjiu.lu@intel.com>
-           Tanguy FautrÃ\83  <tfautre@pandora.be>
+           Tanguy Fautrà <tfautre@pandora.be>
 
        * config/i386/pmm_malloc.h: New file.