OSDN Git Service

* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 0872bf6..fd24ff2 100644 (file)
@@ -1,3 +1,195 @@
+2004-12-28  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't
+       generate non-offsettable DImode lo_sum addresses.
+
+2004-12-28  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR rtl-optimization/19103
+       * loop-iv.c (iv_number_of_iterations): Fix typo.
+
+2004-12-28  Andreas Jaeger  <aj@suse.de>
+
+       * genrecog.c (compute_predicate_codes): Avoid warning.
+
+2004-12-27 John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * vax.c (vax_address_cost, vax_rtx_cost): Correct casts.
+       (vax_rtx_cost): Handle small offsets for both PLUS and MINUS.
+
+2004-12-27  Jeff Law  <law@redhat.com>
+
+       * tree-ssa-dom.c (thread_across_edge): Remove broken code to
+       avoid threading into a loop.
+
+2004-12-27  Richard Henderson  <rth@redhat.com>
+
+       PR target/17406
+       * config/i386/i386.c (ix86_expand_prologue): Add REG_FRAME_RELATED_EXPR
+       note for allocate_stack_worker insn.
+
+2004-12-27  Jason Merrill  <jason@redhat.com>
+
+       * doc/tm.texi (TARGET_RELAXED_ORDERING): Document.
+       * target.h (struct gcc_target): Add relaxed_ordering field.
+       * target-def.h (TARGET_RELAXED_ORDERING): Define default.
+       (TARGET_INITIALIZER): Add it.
+       * config/alpha/alpha.c (TARGET_RELAXED_ORDERING): Define.
+       * config/ia64/ia64.c (TARGET_RELAXED_ORDERING): Define.
+       * config/rs6000/rs6000.c (TARGET_RELAXED_ORDERING): Define.
+       * config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Define.
+
+2004-12-27  Roger Sayle  <roger@eyesopen.com>
+
+       PR driver/16118
+       * doc/invoke.texi: Document the interaction between -save-temps
+       and -x.
+
+2004-12-27  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (rs6000_eliminate_indexed_memrefs):
+       Do not break apart constant pool addresses.
+       (rs6000_emit_move): Only force source into REG if target is MEM.
+
+2004-12-27  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/19148
+       * gimplify.c (gimplify_cond_expr): Add post_p parameter.
+       (gimplify_modify_expr_rhs): Adjust call to gimplify_cond_expr.
+       (gimplify_expr): Likewise.
+
+2004-12-27  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.h (UNITS_PER_SIMD_WORD): Don't use MMX/3DNOW.
+
+2004-12-26  Richard Henderson  <rth@redhat.com>
+
+       * config/i386/i386.c (ix86_gimplify_va_arg): Also pass the result
+       of type_natural_mode to examine_argument.
+
+       * config/i386/i386.md (mov<MMXMODEI>_internal_rex64): New.
+       (movv2sf_internal_rex64): New.
+       (mov<MMXMODEI>_internal): Use no register preferences at all.
+       (movv2sf_internal): Likewise.
+
+2004-12-26  Richard Henderson  <rth@redhat.com>
+
+       * simplify-rtx.c (simplify_relational_operation_1): Don't simplify
+       plus/minus across EQ for floating-point.
+
+2004-12-26  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR target/17643
+       * pa.c (pa_function_ok_for_sibcall): Sibcalls are not ok when
+       generating code for the portable runtime.
+
+2004-12-25  Richard Henderson  <rth@redhat.com>
+
+       * expr.c (clear_storage): Validate CONST0_RTX extant.  Special case
+       complex modes.
+
+2004-12-25  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR rtl-optimization/19078
+       * tree-ssa-loop-ivopts.c (determine_use_iv_cost_generic,
+       determine_use_iv_cost_outer): Fix computing of cost for the original
+       bivs.
+       (dump_use): Handle case related_cands == NULL.
+
+2004-12-25  Marek Michalkiewicz  <marekm@amelek.gda.pl>
+
+       PR target/19059
+       * config/avr/avr.c (avr_mcu_types): Move attiny{13,2313} from avr4
+       to avr2.
+       * config/avr/avr.h (LINK_SPEC): Ditto.
+       * config/avr/t-avr (MULTILIB_MATCHES): Ditto.
+
+2004-12-25  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/19137
+       * config/rs6000/rs6000.md (movti_power, movti_string): Relax
+       operand[1] predicate to input_operand, and add r<-n alternative.
+       Move TImode const_double_operand splitter to where it belongs.
+
+2004-12-25  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/19147
+       * config/rs6000/rs6000.md (andsi3_internal7, andsi3_internal8): Delete.
+
+2004-12-24  Uros Bizjak  <uros@kss-loka.si>
+
+       * config/i386/i386.md (*fix_trunc{d,s,h}i_1):
+       Rename to *fix_trunc{d,s,h}i_i387.
+       (fix_trunc{d,s}fdi2): Reorder tests.
+
+2004-12-24  Daniel Berlin  <dberlin@dberlin.org>
+
+       Fix PR debug/14638
+
+       * tree.h (DECL_DEBUG_ALIAS_OF): New macro.
+       * var-tracking.c (track_expr_p): Don't disqualify tracking of variables
+       that are aliases of variables we want to track, unless the
+       original variable is also ignored for debugging purposes.
+       (VARIABLE_HASH_VAL): Use DECL_UID, so that this is deterministic.
+       * tree-outof-ssa.c (create_temp): Note who we are a debug alias of.
+       * dwarf2out.c (dwarf2out_var_location): Add us to the location of
+       the decl we are an alias of.
+
+2004-12-24  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/19142
+       * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Allow
+       DFmode for 32-bit again.
+
+2004-12-23  Roger Sayle  <roger@eyesopen.com>
+
+       * reload.c (regno_clobbered_p): Add a gcc_assert that regno
+       refers to a hard register.
+
+2004-12-23  Mark Mitchell  <mark@codesourcery.com>
+
+       * gimplify.c (gimplify_modify_expr_rhs): Use types_compatible_p.
+
+2004-12-23  DJ Delorie  <dj@redhat.com>
+
+       * genrecog.c (did_you_mean_codes): New.
+       (compute_predicate_codes): Fail unmatched codes.
+
+2004-12-23  Eric Christopher  <echristo@redhat.com>
+
+       * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Add
+       assert for machine=mips for !TARGET_IRIX.
+       * config/mips/linux.h: Remove machine=mips assert.
+       * config/mips/netbsd.h: Ditto.
+       * config/mips/openbsd.h: Ditto.
+
+2004-12-23  Dale Johannesen  <dalej@apple.com>
+
+       * tree.c (iterative_hash_expr):  Canonicalize builtins.
+
+2004-12-23  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR target/16819
+       * calls.c (load_register_parameters): Don't call use_regs when
+       nregs is zero.
+
+2004-12-23  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR middle-end/17746
+       * expr.c (get_inner_reference): Add 'keep_aligning' parameter.
+       Break on aligning VIEW_CONVERT_EXPR nodes on STRICT_ALIGNMENT
+       platforms only if keep_aligning is true.
+       (expand_assignment): Adjust call to get_inner_reference.
+       (expand_expr_addr_expr_1): Likewise.
+       (expand_expr_real_1): Likewise.
+       * dojump.c (do_jump): Likewise.
+       * dwarf2out.c (loc_descriptor_from_tree_1): Likewise.
+       * fold-const.c (optimize_bit_field_compare): Likewise.
+       (decode_field_reference): Likewise.
+       (split_address_to_core_and_offset): Likewise.
+       * tree-ssa-loop-ivopts.c (split_address_cost): Likewise.
+       * tree.h (get_inner_reference): Adjust prototype.
+
 2004-12-23  Richard Henderson  <rth@redhat.com>
 
        * config/i386/i386.c (override_options): Revert last change
        later sse generations.  Disabling mmx also disables 3dnow.
 
 2004-12-22  Daniel Berlin  <dberlin@dberlin.org>
-       
+
        * tree-inline.c (struct inline_data): Remove inlined_fns.
        (expand_call_inline): Remove dead code setting
        inlined_fns.
        Change eflags_p parameter in call to output_fp_compare.
        (*cmpfp_2_sf, *cmpfp_2_df, *cmpfp_2_xf): Remove.
        (*cmpfp_2_sf_1, *cmpfp_2_df_1, *cmpfp_2_xf_1): Rename to
-       *cmpfp_2_sf, *cmpfp_2_df, *cmpfp_2_xf.  Change eflags_p
+       *cmpfp_2_sf, *cmpfp_2_df, *cmpfp_2_xf.  Change eflags_p
        parameter in call to output_fp_compare.
        (*cmpfp_2_u): Remove.
        (*cmpfp_2_u_1): Rename to *cmpfp_2_u. Change eflags_p parameter