OSDN Git Service

2004-03-01 Paolo Bonzini <bonzini@gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 0ae22cb..be143c8 100644 (file)
@@ -1,3 +1,360 @@
+2004-03-01  Paolo Bonzini  <bonzini@gnu.org>
+
+       * combine.c (try_combine):  Do not refer to is_replaced.
+       (gen_lowpart_for_combine):  Perverse subregs now have a
+       more politically correct name.
+       * cse.c (cse_insn): Likewise.
+       * jump.c: Fix bogus reference to delete_insn.
+
+2004-02-29  Mark Mitchell  <mark@codesourcery.com>
+
+       PR debug/14328
+       * dwarf2out.c (gen_enumeration_type_die): Output all enumeration
+       constants as signed values.
+
+       PR middle-end/13448
+       * c-tree.h (readonly_warning): Rename to ...
+       (readonly_error): ... this.
+       * c-typeck.c (build_unary_op): Adjust accordingly.
+       (readonly_warning): Rename to ...
+       (readonly_error): ... this and issue errors, not warnings.
+       (build_modify_expr): Call readonly_error, not readonly_warning.
+       (c_expand_asm_operands): Likewise.
+       * tree-inline.c (optimize_inline_calls): Do not inline functions
+       after errors have occurred.
+
+2004-02-29  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * configure.ac: Rearrange some threading code for clarity;
+       add section comment.
+       * configure: Regenerate.
+
+2004-02-29  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * passes.c, config/frv/frv.c, config/sh/sh.c: Fix comment
+       typos.
+       * doc/cppopts.texi: Fix a typo.
+
+2004-02-29  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/i386/i386.md: Fix formatting.
+
+2004-02-29  Nathanael Nerode  <neroden@gcc.gnu.org>
+
+       * configure.ac: Add some comments delineating sections of code.
+
+       * doc/install.texi: Note that libada uses autoconf 2.57 also.
+
+       * doc/install.texi: Fix idiot typo in previous commit.
+
+       * doc/install.texi: Update for conversion of intl to autoconf 2.57.
+
+2004-02-29  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md: Add comments about peephole2's.
+
+2004-02-29  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md: Tweak operand numbers of some
+       peephole2's.
+
+2004-02-29  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md: Tweak comments about peephole2's.
+
+2004-02-29  Waldek Hebisch  <hebisch@math.uni.wroc.pl>
+
+       PR middle-end/14203
+       * function.c (uninitialized_vars_warning): Use DECL_RTL_SET_P
+       instead of testing whether DECL_RTL is not NULL.
+
+2004-02-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/sh/sh.c: Fix formatting.
+
+2004-02-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/sh/sh.c: Convert to ISO-C.
+
+2004-02-28  Andrew Pinski  <pinskia@physics.uc.edu>
+       
+       * c-typeck.c (tagged_types_tu_compatible_p): Fix pasto in
+       my previous patch.
+
+       * config/darwin.h (machopic_finish): Output stub even if the
+       symbol is already defined.
+
+2004-02-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
+
+2004-02-28  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * 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  <rsandifo@redhat.com>
+
+       * config/mips/mips.md (tstsi, tstdi): Delete.
+
+2004-02-28  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
+
+       * 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  <macro@ds2.pg.gda.pl>
+
+       * 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  <macro@ds2.pg.gda.pl>
+
+       * 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  <kazu@cs.umass.edu>
+
+       * doc/tm.texi (IS_COSTLY_DEPENDENCE): Change to
+       TARGET_SCHED_IS_COSTLY_DEPENDENCE.
+
+2004-02-28  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       PR optimization/14229
+       * cfgrtl.c (rtl_tidy_fallthru_edge): Do not fail for !onlyjump jump.
+
+2004-02-28  Eric Botcazou  <ebotcazou@act-europe.fr>
+
+       * fold-const.c (fold): Strip NOPs that change the signedness
+       for RSHIFT too.  Expand comment.
+
+2004-02-27  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       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  <ebotcazou@libertysurf.fr>
+
+       PR optimization/7871
+       * flow.c (propagate_one_insn): Interpret calls as setting global
+       registers, not merely clobbering them.
+
+2004-02-27  Dale Johannesen  <dalej@apple.com>
+
+       * 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  <kazu@cs.umass.edu>
+
+       * 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  <apinski@apple.com>
+
+       * c-typeck.c (tagged_types_tu_compatible_p) <ENUMERAL_TYPE>:
+       Speedup common case of the type values being in the same order.
+
+2004-02-27  Steve Ellcey  <sje@cup.hp.com>
+
+       * 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  <kazu@cs.umass.edu>
+
+       * 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  <paul@codesourcery.com>
+
+       * function.c (assign_parms): Don't count pretend args for alignment.
+
+2004-02-27  Richard Henderson  <rth@redhat.com>
+
+       * 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  <ebotcazou@act-europe.fr>
+            Roger Sayle  <roger@eyesopen.com>
+
+       * 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) <MAX_EXPR>: Consistently use the
+       'unsignedp' predicate to specify the signedness.
+
+2004-02-27  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * 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  <aldyh@redhat.com>
+
+       * 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  <echristo@redhat.com>
+
+       * 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  <kazu@cs.umass.edu>
+
+       * stmt.c (expand_start_case_dummy): Remove.
+       * tree.h: Remove the corresponding prototype.
+
+2004-02-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * builtins.c (apply_args_register_offset): Remove.
+       * tree.h: Remove the corresponding prototype.
+
+2004-02-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * stor-layout.c (is_pending_size): Remove.
+       * tree.h: Remove the corresponding prototype.
+
+2004-02-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * recog.c (validate_replace_src): Remove.
+       * recog.h: Remove the corresponding prototype.
+
+2004-02-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * 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  <kazu@cs.umass.edu>
+
+       * c-decl.c (c_expand_deferred_function): Remove.
+       * c-tree.h: Remove the corresponding prototype.
+
+2004-02-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * postreload.c (reload_cse_move2add): Generate just a PLUS
+       instead of an entire SET.
+
+2004-02-26  Jan Hubicka  <jh@suse.cz>
+
+       * 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  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define __xtensa__.
+
+2004-02-26  Eric Botcazou  <ebotcazou@act-europe.fr>
+
+       * 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  <amodra@bigpond.net.au>
 
        * gcse.c (delete_null_pointer_checks_1): Do not delete CC setter
        * 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_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-23  Fariborz Jahanian <fjahanian@apple.com>
         * 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  <dalej@apple.com>
 
        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