X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=07f6e1bbf3fa775669965886c81b09e428cf648c;hb=b8273627e3564ae8f7b831edd4607bd38987b1e6;hp=3978c1af56dcfbe497b5ebf720ea97df9d310204;hpb=586679065d896eb39ec6b2d4e2cde59fc5c04bb8;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3978c1af56d..07f6e1bbf3f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,397 @@ +2005-03-19 Joseph S. Myers + + * config.gcc: Consistently use solaris2.1[0-9]* instead of + solaris2.1[0-9]. + +2005-03-19 Kazu Hirata + + * builtins.c (fold_builtin_memcpy): Take decomposed arguments + of CALL_EXPR. + (expand_builtin_memcpy, fold_builtin_1): Update calls to + fold_builtin_memcpy. + + * builtins.c (fold_trunc_transparent_mathfn): Take decomposed + arguments of CALL_EXPR. + (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil, + fold_builtin_found, fold_builtin_1): Update calls to + fold_trunc_transparent_mathfn. + +2005-03-19 John David Anglin + + PR middle-end/20493 + * fold-const.c (fold_widened_comparison): Don't optimize casts of + function pointers on targets that require function pointer + canonicalization. + (fold_sign_changed_comparison): Likewise. + +2005-03-19 Bernd Schmidt + + * combine.c (try_combine): When changing the mode of a hard reg, make + sure that doing so is valid. + +2005-03-19 Richard Sandiford + + * config/avr/avr.c (avr_init_stack, avr_mcu_name): Make static. + (TARGET_HANDLE_OPTION): Override default. + (avr_handle_option): New function. + * config/avr/avr.h (MASK_ALL_DEBUG, MASK_ORDER_1, MASK_INSN_SIZE_DUMP) + (MASK_ORDER_2, MASK_NO_TABLEJUMP, MASK_INT8, MASK_NO_INTERRUPTS) + (MASK_CALL_PROLOGUES, MASK_TINY_STACK, MASK_SHORT_CALLS) + (TARGET_ORDER_1, TARGET_ORDER_2, TARGET_INT8, TARGET_NO_INTERRUPTS) + (TARGET_INSN_SIZE_DUMP, TARGET_CALL_PROLOGUES, TARGET_TINY_STACK) + (TARGET_NO_TABLEJUMP, TARGET_SHORT_CALLS, TARGET_ALL_DEBUG) + (TARGET_SWITCHES, avr_init_stack, avr_mcu_name) + (TARGET_OPTIONS): Delete. + * config/avr/avr.opt: New file. + +2005-03-18 James E Wilson + + PR c++/19769 + * dwarf2out.c (declare_in_namespace): Ignore decls with an abstract + origin. + +2005-03-18 Kazu Hirata + + * config/mn10300/mn10300-protos.h: Remove the prototypes for + call_address_operand, const_8bit_operand. + * config/mn10300/mn10300.c (call_address_operand, + const_8bit_operand, const_1f_operand): Move to predicates.md. + * config/mn10300/mn10300.h (PREDICATE_CODES): Remove. + * config/mn10300/mn10300.md: Include predicates.md. + * config/mn10300/predicates.md: New. + +2005-03-18 Joseph S. Myers + + * c-common.c, c-decl.c, c-format.c, c-typeck.c: Use %D for + declarations in diagnostics and %E for identifiers, not %s. + +2005-03-18 Jan Hubicka + Dale Johannesen + + * basic-block.h (scale_bbs_frequencies_int, + scale_bbs_frequencies_gcov_type): Declare. + * cfg.c (RDIV): New macro. + (update_bb_frequency_for_threading): Fix. + * basic-block.h (scale_bbs_frequencies_int, + scale_bbs_frequencies_gcov_type): New. + * cfgloopmanip.c (scale_bbs_frequencies): Kill. + (scale_loop_frequencies, duplicate_loop_to_header_edge): Use + scale_bbs_frequencies_int. + * tree-ssa-loop-ch.c (copy_loop_headers): Fix profiling info. + +2005-03-18 Kazu Hirata + + * config/m32r/m32r-protos.h: Remove the prototypes for + call_address_operand, symbolic_operand, seth_add3_operand, + cmp_int16_operand, uint16_operand, reg_or_int16_operand, + reg_or_uint16_operand, reg_or_cmp_int16_operand, + two_insn_const_operand, move_src_operand, + move_double_src_operand, move_dest_operand, + eqne_comparison_operator, signed_comparison_operator, + large_insn_p, conditional_move_operand, carry_compare_operand, + m32r_block_immediate_operand, extend_operand, + reg_or_eq_int16_operand, int8_operand, and + reg_or_zero_operand. + * config/m32r/m32r.c (call_address_operand, symbolic_operand, + seth_add3_operand, int8_operand, cmp_int16_operand, + uint16_operand, reg_or_int16_operand, reg_or_uint16_operand, + reg_or_eq_int16_operand, reg_or_cmp_int16_operand, + reg_or_zero_operand, two_insn_const_operand, move_src_operand, + move_double_src_operand, move_dest_operand, + eqne_comparison_operator, signed_comparison_operator, + extend_operand, small_insn_p, large_insn_p, + conditional_move_operand, carry_compare_operand, + m32r_block_immediate_operand): Move to predicates.md. + (MAX_MOVE_BYTES): Move to m32r.h. + * config/m32r/m32r.h (PREDICATE_CODES): Remove. + * config/m32r/m32r.md: Include predicates.md. + * config/m32r/predicates.md: New. + + * config/pa/pa-protos.h: Add prototypes for magic_milli and + shadd_constant_p. + * config/pa/pa.c (reg_or_0_operand, call_operand_address, + symbolic_operand, symbolic_memory_operand, + reg_or_0_or_nonsymb_mem_operand, reg_before_reload_operand, + indexed_memory_operand, move_dest_operand, move_src_operand, + prefetch_cc_operand, prefetch_nocc_operand, + reg_or_cint_move_operand, pic_label_operand, fp_reg_operand, + arith_operand, arith11_operand, pre_cint_operand, + post_cint_operan, arith_double_operand, ireg_or_int5_operand, + ireg_operand, int5_operand, uint5_operand, int11_operand, + uint32_operand, arith5_operand, and_operand, ior_operand, + lhs_lshift_operand, lhs_lshift_cint_operand, arith32_operand, + pc_or_label_operand, div_operand, plus_xor_ior_operator, + shadd_operand, movb_comparison_operator, + cmpib_comparison_operator): Move to predicates.md. + (magic_milli, shadd_constant_p): Make it extern. + * config/pa/pa.h (PREDICATE_CODES): Remove. + * config/pa/pa.md: Include predicates.md. + * config/pa/predicates.md: New. + + * config/v850/v850.h (PREDICATE_CODES): Remove a nonexistent + predicate. + +2005-03-18 Kazu Hirata + + * hooks.c, hooks.h, intl.c, opts.h, prefix.c, tree-gimple.c, + config/alpha/ev4.md, config/alpha/ev5.md, config/alpha/ev6.md, + config/alpha/freebsd.h, config/alpha/linux.h, + config/alpha/netbsd.h, config/alpha/osf5.h, + config/alpha/vms.h, config/arc/arc.c, config/arc/arc.h, + config/h8300/h8300-protos.h, config/h8300/h8300.c, + config/h8300/h8300.h, config/ia64/unwind-ia64.c, + doc/cppopts.texi: Update copyright. + +2005-03-18 Jan Hubicka + + PR middle-end/20225 + * cgraph.c (cgraph_mark_reachable_node): Assert that it is not called + too late. + * varasm.c (find_decl_and_mark_needed): Mark needed only when not + called too late. + +2005-03-18 Kazu Hirata + + * tree-into-ssa.c (find_idf): Use VEC_quick_push instead of + VEC_safe_push. + +2005-03-18 Paolo Bonzini + + * combine.c (gen_binary): Remove. + (known_cond, simplify_shift_const, find_split_point, + combine_simplify_rtx, simplify_if_then_else, simplify_set, + simplify_logical, expand_field_assignment, extract_left_shift, + force_to_mode, if_then_else_cond, apply_distributive_law, + simplify_and_const_int, simplify_shift_const, gen_lowpart_for_combine, + simplify_comparison, reversed_comparison): Replace with + simplify_gen_binary, simplify_gen_relational or + distribute_and_simplify_rtx. + (distribute_and_simplify_rtx): New function. + +2005-03-18 Alexey Neyman + Paolo Bonzini + + * calls.c (setjmp_call_p, special_function_p): Update comments + at the head of the functions. + +2005-03-18 Jan Hubicka + + * tree-cfg.c (fold_cond_expr_cond): Use boolean types for condition. + + * cgraph.c (cgraph_remove_node): Avoid loop in code deciding whether + function body should be released; do not proactively release function + bodies in non-unit-at-a-time mode. + +2005-03-18 Ralf Corsepius + + * config/i386/t-rtems-i386 (MULTILIBS): Remove k6, athlon, + mno-fp-ret-in-387 multilib variants. + +2005-03-18 Richard Sandiford + + * common.opt (m): Remove. + * opts.c (handle_option): Pass 'm' options to set_target_switch if + table lookup fails. + (common_handle_option): Remove OPT_m case. + +2005-03-18 Kazu Hirata + + * builtins.c (fold_builtin_bitop): Take decomposed arguments + of CALL_EXPR. + (fold_builtin_1): Update a call to fold_builtin_bitop. + + * builtins.c (fold_builtin_signbit): Take decomposed arguments + of CALL_EXPR. + (fold_builtin_1): Update a call to fold_builtin_signbit. + +2005-03-17 Dorit Naishlos + + PR tree-optimization/20474 + * tree-vect-analyze.c (vect_analyze_pointer_ref_access): Check the + size_type of the relevant pointer. Check for COMPLETE_TYPE_P. + +2005-03-17 Kazu Hirata + + * config/h8300/h8300-protos.h: Remove prototypes for + general_operand_src, general_operand_dst, single_one_operand, + single_zero_operand, call_insn_operand, + two_insn_adds_subs_operand, small_call_insn_operand, + jump_address_operand, bit_operand, bit_memory_operand, + stack_pointer_operand, const_int_gt_2_operand, + const_int_ge_8_operand, const_int_qi_operand, + const_int_hi_operand, incdec_operand, bit_operator, + nshift_operator, eqne_operator, gtle_operator, + gtuleu_operator, iorxor_operator. + Add prototypes for h8sx_shift_type h8sx_classify_shift and + h8300_ldm_stm_parallel. + * config/h8300/h8300.c (h8sx_shift_type,): Move to + h8300-protos.h. + (SYMBOL_FLAG_FUNCVEC_FUNCTION, SYMBOL_FLAG_EIGHTBIT_DATA, + SYMBOL_FLAG_TINY_DATA): Move to h8300.h. + (h8300_ldm_stm_parallel): Make it extern. + (h8300_ldm_parallel, h8300_stm_parallel, + h8300_return_parallel, general_operand_src, + general_operand_dst, h8300_dst_operand, h8300_src_operand, + nibble_operand, reg_or_nibble_operand, single_one_operand, + single_zero_operand, call_insn_operand, + two_insn_adds_subs_operand, small_call_insn_operand, + jump_address_operand, bit_operand, bit_memory_operand, + stack_pointer_operand, const_int_gt_2_operand, + const_int_ge_8_operand, const_int_qi_operand, + const_int_hi_operand, incdec_operand, eqne_operator, + gtle_operator, gtuleu_operator, iorxor_operator, bit_operator, + h8sx_binary_memory_operator, h8sx_unary_memory_operator, + h8sx_unary_shift_operator, h8sx_binary_shift_operator, + nshift_operator): Move to predicates.md. + * config/h8300/h8300.h (PREDICATE_CODES): Remove. + * config/h8300/h8300.md: Include predicates.md. + * config/h8300/predicates.md: New. + +2005-03-17 Richard Henderson + + * config.gcc (ia64*-*-hpux*): Add extra_options. + * config/ia64/hpux.h (SUBTARGET_SWITCHES): Remove. + (TARGET_DEFAULT): Remove MASK_INLINE_FLOAT_DIV_THR. + * config/ia64/ia64.c (ia64_fixed_range_string): Remove. + (ia64_tls_size_string, ia64_tune_string): Remove. + (ia64_tune): Init to PROCESSOR_ITANIUM2. + (TARGET_DEFAULT_TARGET_FLAGS): New. + (TARGET_HANDLE_OPTION): New. + (ia64_override_options): Move options parsing ... + (ia64_handle_option): ... here. New. + * config/ia64/ia64.h (target_flags, MASK_BIG_ENDIAN, MASK_GNU_AS, + MASK_GNU_LD, MASK_NO_PIC, MASK_VOL_ASM_STOP, MASK_ILP32, + MASK_REG_NAMES, MASK_NO_SDATA, MASK_CONST_GP, MASK_AUTO_PIC, + MASK_INLINE_FLOAT_DIV_LAT, MASK_INLINE_FLOAT_DIV_THR, + MASK_INLINE_INT_DIV_LAT, MASK_INLINE_INT_DIV_THR, + MASK_INLINE_SQRT_LAT, MASK_INLINE_SQRT_THR, MASK_DWARF2_ASM, + MASK_EARLY_STOP_BITS, TARGET_BIG_ENDIAN, TARGET_GNU_AS, TARGET_GNU_LD, + TARGET_NO_PIC, TARGET_VOL_ASM_STOP, TARGET_ILP32, TARGET_REG_NAMES, + TARGET_NO_SDATA, TARGET_CONST_GP, TARGET_AUTO_PIC, + TARGET_INLINE_FLOAT_DIV_LAT, TARGET_INLINE_FLOAT_DIV_THR, + TARGET_INLINE_INT_DIV_LAT, TARGET_INLINE_INT_DIV_THR, + TARGET_INLINE_FLOAT_DIV, TARGET_INLINE_INT_DIV, TARGET_INLINE_SQRT_LAT, + TARGET_INLINE_SQRT_THR, TARGET_INLINE_SQRT, TARGET_DWARF2_ASM, + TARGET_EARLY_STOP_BITS): Remove. + (TARGET_ILP32): Default false. + (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS): Remove. + (enum ia64_inline_type): New. + (TARGET_DEFAULT): Remove MASK_INLINE_FLOAT_DIV_THR. + * config/ia64/ia64.md: Update for new definitions of + TARGET_INLINE_INT_DIV, TARGET_INLINE_FLOAT_DIV, TARGET_INLINE_SQRT. + * config/ia64/ia64.opt: New file. + * config/ia64/ilp32.opt: New file. + +2005-03-17 H.J. Lu + + PR target/18380 + * config/ia64/unwind-ia64.c (_Unwind_FindTableEntry): Removed. + +2005-03-17 Kazu Hirata + + * config/h8300/h8300.c (h8300_init_once): Use MASK_H8300S_1 + instead of MASK_H8300S. + * config/h8300/h8300.h (target_flags, MASK_H8300S, MASK_MAC, + MASK_INT32, MASK_ADDRESSES, MASK_QUICKCALL, MASK_SLOWBYTE, + MASK_NORMAL_MODE, MASK_RELAX, MASK_H8300H, MASK_ALIGN_300, + MASK_H8300SX, TARGET_INT32, TARGET_ADDRESSES, + TARGET_QUICKCALL, TARGET_SLOWBYTE, TARGET_H8300H, + TARGET_H8300XS, TARGET_NORMAL_MODE, TARGET_ALIGN_300, + TARGET_SWITCHES): Remove. + (TARGET_H8300S): Redefine interms of TARGET_H8300S_1 and + TARGET_H8300SX. + * config/h8300/h8300.opt: New. + + * config/alpha/alpha.opt, config/arc/arc.opt, + config/h8300/h8300.opt, config/mips/mips.opt: Add copyright + notices. + +2005-03-17 Ian Lance Taylor + + * gmon.c: Remove. + +2005-03-17 Richard Sandiford + + * config/arc/arc.c (arc_cpu_string): Make static. Default to "base" + (arc_text_string, arc_data_string, arc_rodata_string): Make static. + (TARGET_HANDLE_OPTION): Override default. + (arc_handle_option): New function. + (arc_init): Remove code to set arch_cpu_string. + * config/arc/arc.h (target_flags, TARGET_MASK_MANGLE_CPU) + (TARGET_MANGLE_CPU, TARGET_MASK_MANGLE_CPU_LIBGCC) + (TARGET_MANGLE_CPU_LIBGCC, TARGET_MASK_ALIGN_LOOPS, TARGET_ALIGN_LOOPS) + (TARGET_MASK_BIG_ENDIAN, TARGET_BIG_ENDIAN, TARGET_MASK_NO_COND_EXEC) + (TARGET_NO_COND_EXEC, TARGET_SWITCHES, TARGET_DEFAULT) + (SUBTARGET_SWITCHES, arc_cpu_string, arc_text_string, arc_data_string) + (arc_rodata_string, TARGET_OPTIONS): Delete. + * config/arc/arc.opt: New file. + +2005-03-17 Richard Henderson + + * doc/extend.texi (Weak Pragmas): New section. + (attribute alias): Clarify that target must be in the same + translation unit. + +2005-03-17 Richard Henderson + + * config/alpha/alpha.opt: New file. + * config/alpha/alpha.c (alpha_tune): New. Rename all existing uses + of alpha_cpu. + (alpha_cpu_string, alpha_tune_string, alpha_tp_string, + alpha_fprm_string, alpha_fptm_string): Make static. + (alpha_tls_size_string): Remove. + (alpha_handle_option): New. + (override_options): Update for alpha_cpu/alpha_tune split. + (alpha_file_start): Likewise. + (TARGET_DEFAULT_TARGET_FLAGS): New. + (TARGET_HANDLE_OPTION): New. + * config/alpha/alpha.h (alpha_tune): Declare. + (MASK_FP, MASK_FPREGS, TARGET_FPREGS, MASK_GAS, TARGET_GAS, + MASK_IEEE_CONFORMANT, TARGET_IEEE_CONFORMANT, MASK_IEEE, TARGET_IEEE, + MASK_IEEE_WITH_INEXACT, TARGET_IEEE_WITH_INEXACT, MASK_BUILD_CONSTANTS, + TARGET_BUILD_CONSTANTS, MASK_FLOAT_VAX, TARGET_FLOAT_VAX, MASK_BWX, + TARGET_BWX, MASK_MAX, TARGET_MAX, MASK_FIX, TARGET_FIX, MASK_CIX, + TARGET_CIX, MASK_EXPLICIT_RELOCS, TARGET_EXPLICIT_RELOCS, + MASK_SMALL_DATA, TARGET_SMALL_DATA, MASK_TLS_KERNEL, TARGET_TLS_KERNEL, + MASK_SMALL_TEXT, TARGET_SMALL_TEXT, MASK_LONG_DOUBLE_128, + TARGET_LONG_DOUBLE_128, MASK_CPU_EV5, TARGET_CPU_EV5, MASK_CPU_EV6, + TARGET_CPU_EV6, MASK_SUPPORT_ARCH): Remove. + (TARGET_SWITCHES, TARGET_OPTIONS): Remove. + (TARGET_DEFAULT): Remove MASK_FP. + (TARGET_FP): Redefined based on TARGET_SOFT_FP. + (TARGET_SUPPORT_ARCH): Default on if HAVE_AS_EXPLICIT_RELOCS. + (alpha_cpu_string, alpha_tune_string, alpha_fprm_string, + alpha_fptm_string, alpha_tp_string, alpha_mlat_string, + alpha_tls_size_string): Remove. + * config/alpha/alpha.md (prefetch): Use alpha_cpu. + (attribute tune): Rename from attribute cpu. + * config/alpha/ev4.md: Update to match. + * config/alpha/ev5.md, config/alpha/ev6.md: Likewise. + * config/alpha/freebsd.h (TARGET_DEFAULT): Remove MASK_FP. + * config/alpha/linux.h (TARGET_DEFAULT): Likewise. + * config/alpha/netbsd.h (TARGET_DEFAULT): Likewise. + * config/alpha/osf5.h (TARGET_DEFAULT): Likewise. + * config/alpha/vms.h (TARGET_DEFAULT): Likewise. + +2005-03-16 James E. Wilson + + * config/ia64/ia64.c (issue_nops_and_insn): Check first_insn attribute, + and return without creating new state if before_nops_num is nonzero. + * config/ia64/ia64.md (first_insn): New attribute. + (alloc): Set it to yes. + +2005-03-16 Daniel Berlin + + * tree-vectorizer.c (new_vec_stmt_info): Initialize + STMT_VINFO_SUBVARS to NULL. + * tree-vect-analyze.c (vect_analyze_data_refs): Ditto. + +2005-03-16 Dale Johannesen + + * rtlanal.c (find_first_parameter_load): Rewrite to + return actual first param load or the call if none, + instead of first in block, when not all loads exist. + 2005-03-16 Roger Sayle * optabs.c (expand_copysign_absneg): Make static.