X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=191a52578d79b23cb1ce00ca0e518b5c3065fd44;hb=9a77d564377280c6bc55673d24684b6dd4f40dd2;hp=78f858b455b09c901a093e3f0870ac9984fcdc5b;hpb=0f2956367271cff56fcd1d7dd3adb229e14e7fdf;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 78f858b455b..191a52578d7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,352 @@ +2004-02-28 Andrew Pinski + + * config/darwin.h (machopic_finish): Output stub even if the + symbol is already defined. + +2004-02-28 John David Anglin + + * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg. + +2004-02-28 Kazu Hirata + + * genattr.c (main): Don't define + TRADITIONAL_PIPELINE_INTERFACE or DFA_PIPELINE_INTERFACE. + * system.h (TRADITIONAL_PIPELINE_INTERFACE): Poison. + (DFA_PIPELINE_INTERFACE): Likewise. + * doc/tm.texi (TRADITIONAL_PIPELINE_INTERFACE): Remove. + (DFA_PIPELINE_INTERFACE): Likewise. + +2004-02-28 Richard Sandiford + + * config/mips/mips.md (tstsi, tstdi): Delete. + +2004-02-28 Maciej W. Rozycki + + * config/mips/mips.c (override_options): Remove an obsolete + duplicate definition of the "e" constraint. + * config/mips/mips.h: Update a comment accordingly. + +2004-02-28 Maciej W. Rozycki + + * config/mips/mips.md: Complete the unfinished R4000 + multiply/shift errata workaround. Improve documentation. + (hazard): Use TARGET_FIX_R4000 to decide whether an "imul" instruction + has a hilo hazard. + (mulsi3, mulsi3_internal, mulsi3_r4000): Use TARGET_FIX_R4000. + (muldi3, muldi3_internal): Likewise. + (muldi3_internal2): Remove, replacing with... + (muldi3_mult3, muldi3_r4000): ...these new patterns. + (mulsidi3): Take the errata into account. + (mulsidi3_32bit): Remove, replacing with... + (mulsidi3_32bit_internal, mulsidi3_32bit_r4000): ...these new patterns. + (mulsidi3_64bit, mulsidi3_64bit_parts): Disable if TARGET_FIX_R4000. + (umulsidi3): Take the errata into account. + (umulsidi3_32bit): Remove, replacing with.. + (umulsidi3_32bit_internal, umulsidi3_32bit_r4000): ...these patterns. + (umulsi3_highpart, umulsi3_highpart_internal): Disable if + TARGET_FIX_R4000. + (smulsi3_highpart, smulsi3_highpart_internal): Likewise. + (smuldi3_highpart, umuldi3_highpart): Likewise. + * doc/invoke.texi: Document the errata workaround. + +2004-02-28 Maciej W. Rozycki + + * config/mips/mips-protos.h (mips_idiv_insns): Declare. + * config/mips/mips.h (MASK_FIX_SB1): Bump. + (MASK_FIX_R4000, TARGET_FIX_R4000): New macros. + (TARGET_SWITCHES): Add -mfix-r4000 and -mno-fix-r4000. + * config/mips/mips.c (mips_idiv_insns): New function. + (override_options): Make -march=r4000 imply -mfix-r4000 by default. + (mips_output_division): Add a workaround for the R4000 divide/shift + errata. + * config/mips/mips.md (length): Use mips_idiv_insns() to calculate + the length of an "idiv" instruction. + * doc/invoke.texi: Document the new switches. + +2004-02-28 Kazu Hirata + + * doc/tm.texi (IS_COSTLY_DEPENDENCE): Change to + TARGET_SCHED_IS_COSTLY_DEPENDENCE. + +2004-02-28 Zdenek Dvorak + + PR optimization/14229 + * cfgrtl.c (rtl_tidy_fallthru_edge): Do not fail for !onlyjump jump. + +2004-02-28 Eric Botcazou + + * fold-const.c (fold): Strip NOPs that change the signedness + for RSHIFT too. Expand comment. + +2004-02-27 Ian Lance Taylor + + PR optimization/7871 + * flow.c (mark_set_1): Don't add LOG_LINKS for global registers + from or to call insns. + +2004-02-27 Eric Botcazou + + PR optimization/7871 + * flow.c (propagate_one_insn): Interpret calls as setting global + registers, not merely clobbering them. + +2004-02-27 Dale Johannesen + + * config/darwin.c (machopic_output_possible_stub_label): Remove. + config/darwin-protos.h: Ditto. + config/darwin.h: Remove call to it. + * combine.c (distribute_notes): Do not place a REG_DEAD note + when value is both set and used. + +2004-02-27 Kazu Hirata + + * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300 + as well. + * config/h8300/lib1funcs.asm (___fixunssfsi): Remove. + * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm. + +2004-02-27 Andrew Pinski + + * c-typeck.c (tagged_types_tu_compatible_p) : + Speedup common case of the type values being in the same order. + +2004-02-27 Steve Ellcey + + * config/ia64/ia64.h (no-inline-float-divide): New option. + * config/ia64/ia64.h (no-inline-int-divide): New option. + * config/ia64/ia64.h (no-inline-sqrt): New option. + (TARGET_DEFAULT): Add MASK_INLINE_FLOAT_DIV_THR to define. + * config/ia64/hpux.h (TARGET_DEFAULT): Ditto. + * config/ia64/ia64.c (ia64_override_options): Modify error + checking for inlined division/sqrt. + +2004-02-27 Kazu Hirata + + * bb-reorder.c, cfgbuild.c, diagnostic.c, explow.c, profile.c, + ra-build.c, read-rtl.c, tracer.c, unwind-dw2-fde-glibc.c, + value-prof.c, config/darwin-protos.h, config/frv/frv-abi.h, + config/i386/pmmintrin.h, config/pa/pa-hpux.h: Update + copyright. + +2004-02-27 Paul Brook + + * function.c (assign_parms): Don't count pretend args for alignment. + +2004-02-27 Richard Henderson + + * passes.c: New file. + * Makefile.in (OBJS-common): Add it. + * diagnostic.c (rtl_dump_and_exit): Move decl ... + * flags.h (rtl_dump_and_exit): ... here. + * output.h (size_directive_output, last_assemble_variable_decl): + Move from toplev.c. + * rtl.h (reg_alloc): Move from toplev.c. + * toplev.c (HAVE_conditional_execution, DUMPFILE_FORMAT, + struct dump_file_info, enum dump_file_index, dump_file_tbl, + open_dump_file, close_dump_file, rest_of_decl_compilation, + rest_of_type_compilation, rest_of_handle_final, + rest_of_handle_delay_slots, rest_of_handle_stack_regs, + rest_of_handle_variable_tracking, rest_of_handle_machine_reorg, + rest_of_handle_new_regalloc, rest_of_handle_old_regalloc, + rest_of_handle_regrename, rest_of_handle_reorder_blocks, + rest_of_handle_sched, rest_of_handle_sched2, rest_of_handle_regmove, + rest_of_handle_tracer, rest_of_handle_if_conversion, + rest_of_handle_if_after_combine, rest_of_handle_web, + rest_of_handle_branch_prob, + rest_of_handle_value_profile_transformations, rest_of_handle_cfg, + rest_of_handle_addressof, rest_of_handle_sibling_calls, + rest_of_handle_jump_bypass, rest_of_handle_inlining, + rest_of_handle_null_pointer, rest_of_handle_combine, + rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2, + rest_of_handle_gcse, rest_of_handle_loop_optimize, + rest_of_handle_loop2, rest_of_compilation): Move to passes.c. + (decode_d_option): Use enable_rtl_dump_file. + (compile_file, finalize, do_compile): Move profile+combine+graph + cleanup to finish_optimization_passes. + * toplev.h (init_optimization_passes, finish_optimization_passes, + enable_rtl_dump_file): Declare. + +2004-02-27 Eric Botcazou + Roger Sayle + + * fold-const.c (fold): Revert 2004-02-25 change. Use the original + operands to build a tree with swapped operands. + * expr.c (expand_expr_real) : Consistently use the + 'unsignedp' predicate to specify the signedness. + +2004-02-27 Kazu Hirata + + * c-decl.c, c-ppoutput.c, combine.c, cppfiles.c, dwarf2out.c, + expr.c, fold-const.c, gcc.c, haifa-sched.c, loop-iv.c, + params.def, read-rtl.c, rtl.c, rtlanal.c, toplev.c: Fix + comment typos and formatting. Follow spelling conventions. + +2004-02-26 Aldy Hernandez + + * config/rs6000/rs6000.md: Add fixuns_truncsfsi2 and + fix_truncsfsi2. + + * config/rs6000/spe.md: Delete spe_efsctuiz. + Add spe_fixuns_truncsfsi2. + Add spe_fix_truncsfsi2. + +2004-02-26 Eric Christopher + + * c-lex.c (c_lex_string_translate): New variable. + (lex_string): Use to determine string translation. + * c-pragma.h: Prototype. + * c-parse.in (start_string_translation): New. Set above. + (stop_string_translation): Ditto. + (attribute, attribute_list, asm_def, asm_stmt, + asm_operand): Use above functions. + * cp/parser.c (cp_parser_declaration): Translate strings + unless token is RID_EXTERN. Set c_lex_string_translate + for recursive use. + (cp_parser_asm_definition): Only translate argument strings + to asms. + (cp_parser_asm_operand_list): Ditto. + (cp_parser_attribute_list): Do not translate attribute strings. + +2004-02-26 Kazu Hirata + + * stmt.c (expand_start_case_dummy): Remove. + * tree.h: Remove the corresponding prototype. + +2004-02-26 Kazu Hirata + + * builtins.c (apply_args_register_offset): Remove. + * tree.h: Remove the corresponding prototype. + +2004-02-26 Kazu Hirata + + * stor-layout.c (is_pending_size): Remove. + * tree.h: Remove the corresponding prototype. + +2004-02-26 Kazu Hirata + + * recog.c (validate_replace_src): Remove. + * recog.h: Remove the corresponding prototype. + +2004-02-26 Kazu Hirata + + * calls.c: Don't reference FINAL_REG_PARM_STACK_SPACE or + MAYBE_REG_PARM_STACK_SPACE. + * function.c: Likewise. + * system.h (FINAL_REG_PARM_STACK_SPACE): Poison. + (MAYBE_REG_PARM_STACK_SPACE): Likewise. + * doc/tm.texi (FINAL_REG_PARM_STACK_SPACE): Remove. + (MAYBE_REG_PARM_STACK_SPACE): Likewise. + +2004-02-26 Kazu Hirata + + * c-decl.c (c_expand_deferred_function): Remove. + * c-tree.h: Remove the corresponding prototype. + +2004-02-26 Kazu Hirata + + * postreload.c (reload_cse_move2add): Generate just a PLUS + instead of an entire SET. + +2004-02-26 Jan Hubicka + + * config.gcc: Add support for nocoma/prescott/pentium-m/pentium3m + /pentium4m. + * i386.c (override_options): Add support for new CPUs. + * i386.h (TARGET_CPU_DEFAULT_NAMES): New names. + (TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_pentium4e): New + constants. + * invoke.texi: Extend documentation of -mtune/-march for new CPUs. + +2004-02-26 Bob Wilson + + * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define __xtensa__. + +2004-02-26 Eric Botcazou + + * config/sparc/sparc-protos.h (sparc_emit_floatunsdi): Add 'mode'. + (sparc_emit_fixunsdi): New prototype. + * config/sparc/sparc.c (sparc_emit_floatunsdi): Use 'mode' argument. + (sparc_emit_fixunsdi): New function. + * config/sparc/sparc.md (floatunsdisf2): Use 'general_operand' for + operand 1. Pass SFmode to sparc_emit_floatunsdi. + (floatunsdidf2): Use 'general_operand' for operand 1. Pass DFmode + to sparc_emit_floatunsdi. + (fixuns_truncsfdi2): New expander. + (fixuns_truncdfdi2): Likewise. + +2004-02-26 Alan Modra + + * gcse.c (delete_null_pointer_checks_1): Do not delete CC setter + unless HAVE_cc0. + +2004-02-25 Richard Henderson + + * explow.c (force_reg): Call mark_reg_pointer as appropriate. + * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't + use (op0-op1) == 0 if op0 is a pointer. + * config/alpha/alpha.md (cmpdi): Use some_operand. + (three comparison combine splits): Remove. + +2004-02-25 Richard Henderson + + PR c/12794 + * c-common.c (handle_alias_attribute): Reject the attribute if + current_function_decl is set. + +2004-02-25 Kelley Cook + + * config.gcc: Add comment describing extra_gcc_objs. + i[34567]86-*-cygwin*): Replace host_extra_gcc_objs with extra_gcc_objs. + * configure.ac (extra_gcc_objs): New substitution variable. + (host_extra_gcc_objs): Don't substitute. + * configure: Regenerate. + * Makefile.in: Use extra_gcc_objs. + +2004-02-25 Kelley Cook + + * doc/contrib.texi: Add an entry for myself. + +2004-02-25 Jan Hubicka + + * basic-block.h (make_eh_edge, break_superblocks): Declare. + * cfgbuild.c (make_eh_edge): Make global. + * cfglayout.c (break_superblocks): Likewise; fix memory leak. + * except.c (build_post_landing_pads, connect_post_landing_pads, + dw2_build_landing_pads, sjlj_emit_function_enter, + sjlj_emit_function_exit, sjlj_emit_dispatch_table, + sjlj_build_landing_pads): Update CFG. + (emit_to_new_bb_before): New function. + (finish_eh_generation): Do not rebuild the CFG. + +2004-02-25 John David Anglin + + * config.gcc (hppa*-*-*, parisc*-*-*): Add MASK_BIG_SWITCH to all + target_cpu_default defines. + * pa-hpux.h (TARGET_DEFAULT): Add MASK_BIG_SWITCH to define. + * pa.h (TARGET_DEFAULT): Likewise. + +2004-02-25 Eric Botcazou + + * fold-const.c (fold): Treat MAX_EXPR and MIN_EXPR like + comparisons with regard to signedness. + +2004-02-25 Richard Earnshaw + + * arm.c (thumb_legitimize_address): New function. + * arm-protos.h: Prototype it. + * arm.h (THUMB_LEGITIMIZE_ADDRESS): Define. + (LEGITIMIZE_ADDRESS): Use it. + +2004-02-25 J"orn Rennecke + + * reload1.c (reload): Only spill eliminable register with multiple + adjacent elimination alternatives if all alternatives fail. + +2004-02-25 Richard Earnshaw + + * arm.c (arm_legitimate_index_p): For QImode the range of an offset + is -4095...+4095 inclusive. + 2004-02-25 Eric Botcazou * doc/install.texi (sparc-sun-solaris2* specific notes): Document @@ -575,7 +924,7 @@ 2004-02-23 Fariborz Jahanian * config/rs6000/rs6000.c (function_arg): call to rs6000_mixed_function_arg for DFmode moved to allow - normal DFmode incoming register assignment. + normal DFmode incoming register assignment. 2004-02-23 Dale Johannesen @@ -724,7 +1073,7 @@ merely its number. (rs6000_attribute_table): Add "altivec" attribute. (rs6000_handle_altivec_attribute): New function. - * config/rs6000/rs6000.h (TARGET_OPTIONS): Describe + * config/rs6000/rs6000.h (TARGET_OPTIONS): Describe '-m[no-]-warn-altivec-long' (which '-W[no-]altivec-long-deprecated' maps to). (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): Forward