OSDN Git Service

fix changelog entry
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index c38801f..d8c8dc1 100644 (file)
@@ -1,3 +1,177 @@
+2006-04-03  Paolo Bonzini  <bonzini@gnu.org>
+           Dale Johannesen  <dalej@apple.com>
+
+       PR target/19653
+       * regclass.c (struct reg_pref): Update documentation.
+       (regclass): Set prefclass to NO_REGS if memory is the best option.
+       (record_reg_classes): Cope with a prefclass set to NO_REGS.
+       * reload.c (find_reloads): Take PREFERRED_OUTPUT_RELOAD_CLASS
+       into account.  For non-registers, equate an empty preferred
+       reload class to a `!' in the constraint; move the if clause to
+       do so after those that reject the insn.
+       (push_reload): Allow PREFERRED_*_RELOAD_CLASS to liberally
+       return NO_REGS.
+       (find_dummy_reload): Likewise.
+       * doc/tm.texi (Register Classes): Document what it means
+       if PREFERRED_*_RELOAD_CLASS return NO_REGS.
+       * config/i386/i386.c (ix86_preferred_reload_class): Force
+       using SSE registers (and return NO_REGS for floating-point
+       constants) if math is done with SSE.
+       (ix86_preferred_output_reload_class): New.
+       * config/i386/i386-protos.h (ix86_preferred_output_reload_class): New.
+       * config/i386/i386.h (PREFERRED_OUTPUT_RELOAD_CLASS): New.
+       * config/i386/i386.md: Remove # register preferences.
+
+2006-04-02  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       PR bootstrap/26992
+       * tree-scalar-evolution.c (compute_overall_effect_of_inner_loop,
+       chrec_is_positive, set_nb_iterations_in_loop): Use a variable for
+       the type of nb_iter.
+       (instantiate_parameters_1): Convert the operands before calling
+       chrec_fold_minus, chrec_fold_plus, or chrec_fold_multiply.
+       * tree-data-ref.c (can_use_analyze_subscript_affine_affine): Same.
+
+2006-04-02  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.c (dummy_object): Use build_int_cst instead of convert.
+       * tree-ssa-ccp.c (maybe_fold_stmt_addition): Use fold_convert
+       instead of convert.
+       * dojump.c (do_jump): Likewise.
+       * expr.h (ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE): Likewise.
+       * gimplify.c (gimple_boolify, gimplify_init_constructor,
+       gimplify_boolean_expr): Likewise.
+       * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
+       * varasm.c (array_size_for_constructor): Likewise.
+       * tree-object-size.c (compute_object_offset): Likewise.
+
+2006-04-02  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/26977
+       * expr.c (emit_group_store): Check whether simplify_gen_subreg returns
+       NULL_RTX, indicating it couldn't create a valid paradoxical subreg.
+
+2006-04-02  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       PR tree-optimization/26939
+       * tree-chrec.c (chrec_merge): Use eq_evolutions_p.
+
+2006-04-02  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       * tree-scalar-evolution.c (add_to_evolution_1): Pass an extra argument
+       at_stmt.  Convert the type of operands before calling 
+       build_polynomial_chrec.
+       (add_to_evolution): Pass an extra argument at_stmt.  Adjust the call to
+       add_to_evolution_1.
+       (follow_ssa_edge_in_rhs): Adjust call to add_to_evolution.
+       (instantiate_parameters_1): Convert the type of operands before calling 
+       build_polynomial_chrec.
+       * tree-chrec.c (chrec_fold_poly_cst, chrec_fold_plus_poly_poly,
+       chrec_fold_multiply_poly_poly, chrec_replace_initial_condition,
+       reset_evolution_in_loop): Insert asserts to check the types of the
+       operands.
+       (chrec_type): Moved...
+       (eq_evolutions_p): Use operand_equal_p.
+       * tree-chrec.h (build_polynomial_chrec): Insert an assert to check
+       the types of the operands.
+       (chrec_type): ...here.
+       * tree-data-ref.c (create_data_ref): Convert the operands before
+       calling chrec_replace_initial_condition.
+       (same_access_functions, analyze_subscript_affine_affine,
+       analyze_miv_subscript, all_chrecs_equal_p): Use eq_evolutions_p.
+       (compute_subscript_distance, analyze_ziv_subscript,
+       analyze_siv_subscript_cst_affine, compute_overlap_steps_for_affine_1_2,
+       analyze_miv_subscript): Convert the operands before calling
+       chrec_fold_minus or chrec_fold_plus.
+
+2006-04-02  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       * tree-data-ref.c (compute_all_dependences): Use a pointer to
+       the dependence_relations vector.
+       (compute_data_dependences_for_loop): Adjust call to
+       compute_all_dependences.
+
+2006-04-01  Roger Sayle  <roger@eyesopen.com>
+           Richard Henderson  <rth@redhat.com>
+
+       * gimplify.c (gimplify_scan_omp_clauses) <OMP_CLAUSE_IF>: Call
+       gimple_boolify on the condition before calling gimplify_expr.
+
+2006-03-31  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/lib1funcs.asm: Rename abi_entry/abi_return macros
+       to leaf_entry/leaf_return.  Change leaf_entry to add 16 bytes to
+       the frame size.  Update to use the new macros.
+       * config/xtensa/ieee754-sf.S: Use new leaf_entry/leaf_return macros.
+       * config/xtensa/ieee754-df.S: Likewise.
+
+2006-03-31  Richard Henderson  <rth@redhat.com>
+
+       * tree-cfg.c (make_ctrl_stmt_edges, make_exit_edges): Merge into...
+       (make_edges): ... here.  Control fallthru creation with a local
+       variable.  Do not play with fake edges.
+       (make_omp_sections_edges): Don't set EDGE_ABNORMAL.
+       (make_goto_expr_edges): Don't play with fake edges.  Make for_call
+       a boolean.
+
+2006-04-01  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * dwarf2.h (DW64_CIE_ID): Define.
+       * dwarf2out.c (DWARF_CIE_ID): Define.
+       (output_call_frame_info): Output 0xffffffff before standard 8-byte
+       length header.  Use DWARF_CIE_ID.
+       (value_format): Use DW_FORM_data4 or DW_FORM_data8 for
+       dw_val_class_loc_list depending on DWARF_OFFSET_SIZE.
+
+2006-03-31  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/linux-atomic.asm: New file.
+       * config/sh/t-linux (LIB2FUNCS_EXTRA): Add linux-atomic.asm.
+
+2006-03-31  DJ Delorie  <dj@redhat.com>
+
+       * config/m32c/cond.md: Set condition flags properly throughout.
+       * config/m32c/minmax.md: Likewise.
+       * config/m32c/prologue.md: Likewise.
+       * config/m32c/bitops.md: Likewise.
+       * config/m32c/muldiv.md: Likewise.
+       * config/m32c/mov.md: Likewise.
+       * config/m32c/addsub.md: Likewise.
+       * config/m32c/m32c.md: Likewise.
+       * config/m32c/jump.md: Likewise.
+       * config/m32c/shift.md: Likewise.
+
+       * config/m32c/cond.md (cmp<mode>): Call m32c_output_compare to
+       conditionally output the pattern for this.
+       * config/m32c/m32c.c (flags_needed_for_conditional): New.
+       (m32c_compare_redundant): New.
+       (m32c_output_compare): New.
+       * config/m32c/m32c-protos.h (m32c_output_compare): New.
+
+       * config/m32c/m32c.c (m32c_prepare_shift): Fix logic to clobber
+       dest, not src.  Allow other 4-byte modes.
+
+2006-03-30  Denis Chertykov  <denisc@overta.ru>
+
+       * doc/md.texi: Refer to avr/constraints.md instead of
+       avr/avr.h.
+
+2006-03-30  Roger Sayle  <roger@eyesopen.com>
+
+       * expr.c (emit_group_store): Make BYTEPOS a HOST_WIDE_INT to
+       signed vs. unsigned comparison failures on some hosts.
+
+2006-03-31  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/26459
+       * config/rs6000/rs6000.h (CANNOT_CHANGE_MODE_CLASS): Limit 2003-12-08
+       change to FLOAT_REGS.
+
+       * config/rs6000/rs6000.c (rs6000_explicit_options): Add ieee.
+       (rs6000_override_options): Use it.
+       (rs6000_handle_option): Set it.  Set rs6000_explicit_options.abi
+       only for -mabi=spe/no-spe and -mabi=altivec.
+
 2006-03-30  Geoffrey Keating  <geoffk@apple.com>
 
        * config/darwin.h (LINK_COMMAND_SPEC): Don't try to protect %S with