OSDN Git Service

2006-09-11 Guenter Roeck <guenter@roeck-us.net>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 597e1c1..22e113f 100644 (file)
+2006-09-11  Guenter Roeck  <guenter@roeck-us.net>
+           David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/27287
+       * config/rs6000/spe.md (frob_df_di): Remove %H.
+       (frob_di_df): Remove %H.  Change evmergelo to mr.
+       (frob_di_df_2): Remove %H.  Change evldd to two loads.
+
+2006-09-11  Hideki Iwamoto  <h-iwamoto@kit.hi-ho.ne.jp>
+
+       * doc/cpp.texi: Fix names of charset options.
+
+2006-09-10  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR target/29009
+       * config/i386/i386.c (override_options): Use 128-bit
+       stack boundary always for 64bits.
+
+2006-09-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/28636
+       * combine.c (force_to_mode): Test for side-effects before
+       substituting by zero.
+       (simplify_shift_const): Likewise for zero or other constants.
+
+2006-09-10  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR middle-end/26983
+       * builtins.c (expand_builtin_setjmp): Force next_lab to be
+       preserved.
+
+2006-09-10  Richard Sandiford  <richard@codesourcery.com>
+
+       PR target/29006
+       * config/mips/mips-protos.h (mips_mem_fits_mode_p): Declare.
+       * config/mips/mips.c (mips_expand_unaligned_store): Use the mode
+       returned by mode_for_size, rather than the mode of src itself,
+       to choose between 32-bit and 64-bit patterns.
+       (mips_mem_fits_mode_p): New function.
+       * config/mips/mips.md (mov_<load>l, mov_<load>r): Use it to check
+       that the size of the source matches the size of the destination.
+       (mov_<store>l, mov_<store>r): Likewise.
+
+2006-09-10  Eric Christopher  <echristo@apple.com>
+
+       * config/darwin.c (machopic_select_rtx_section): Add CONST_VECTOR
+       for literal16.
+
+2006-09-09  Eric Christopher  <echristo@apple.com>
+
+       PR target/28995
+       * config/darwin.c (machopic_select_rtx_section): Add TARGET_64BIT
+       for literal16.
+
+2006-09-09  Roger Sayle  <roger@eyesopen.com>
+           Nicolas Setton <setton@adacore.com>
+
+       * dwarf2out.c (convert_cfa_to_fb_loc_list): Handle DW_CFA_set_loc.
+
+2006-09-10  Andreas Schwab  <schwab@suse.de>
+
+       * config/m68k/m68k.md (bungt_rev): New pattern.
+
+2006-09-09  Paolo Bonzini  <bonzini@gnu.org>
+           Dale Johannesen  <dalej@apple.com>
+
+       PR target/26778
+       * 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.
+
+2006-09-08  Eric Christopher  <echristo@apple.com>
+
+       * config.gcc (i?86-*-darwin): Add 64-bit HWI support.
+       * config/t-slibgcc-darwin: Support x86_64 multilib.
+       * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION):
+       Return 1 for x86_64-darwin.
+       * config/i386/t-darwin: Add m64 multilib.
+       (LIB2_SIDITI_CONV_FUNCS): Use.
+       (LIB2FUNCS_EXTRA): Ditto.
+       * config/i386/darwin.h: Support x86_64.
+       * config/i386/i386.c (override_options): Turn on flag_pic
+       for x86_64-darwin. Disable flag_omit_pointer.
+       (get_pc_thunk_name): Assert !TARGET_64BIT.
+       (legitimate_address_p): Disable machopic addressing for
+       x86_64.
+       (legitimize_pic_address): Ditto.
+       (ix86_expand_move): Ditto.
+       (ix86_expand_call): Ditto.
+       (machopic_output_stub): Ditto.
+       * config/darwin.c (machopic_select_section): Support literal16.
+       (machopic_select_rtx_section): Ditto.
+       * config/darwin-sections.def: Ditto.
+       * config/darwin-64.c: New.
+
+2006-09-08  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/28504
+       * c-tree.h (struct c_arg_info): Add pending_sizes.
+       * c-parser.c (c_parser_parms_declarator,
+       c_parser_parms_list_declarator): Initialize pending_sizes.
+       * c-decl.c (get_parm_info): Initialize pending_sizes.
+       (get_parm_info): Set pending_sizes.
+       (grokdeclarator): Call put_pending_sizes for parameters for
+       function definition only.
+
+2006-09-07  Jason Merrill  <jason@redhat.com>
+
+       PR middle-end/27724
+       * varasm.c (output_constant): Only strip actual no-op conversions.
+
+       PR target/13685
+       * config/i386/i386.c (override_options): Use 128-bit
+       stack boundary if -msse.
+
+2006-09-07  Eric Christopher  <echristo@apple.com>
+
+       * config/darwin.h (MACHO_SYMBOL_FLAG_VARIABLE): Update
+       comment.
+       * config/i386/darwin.h (MACHO_SYMBOL_FLAG_VARIABLE):
+       Redefine.
+
+2006-09-07  Geoffrey Keating  <geoffk@apple.com>
+
+       * dwarf2out.c: Remove strange characters from comment above
+       dwarf2out_frame_debug_expr.
+
+2006-09-07  Eric Christopher  <echristo@apple.com>
+
+       * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Move from here...
+       * config/darwin.h: ... to here.
+
+2006-09-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386.c (x86_partial_flag_reg_stall): New.
+
+       * config/i386/i386.h (x86_partial_flag_reg_stall): New.
+       (TARGET_PARTIAL_FLAG_REG_STALL): New.
+
+       * config/i386/i386.md (*ashldi3_cmp_rex64): Disabled for
+       TARGET_PARTIAL_FLAG_REG_STALL.
+       (*ashldi3_cconly_rex64): Likewise.
+       (*ashlsi3_cmp): Likewise.
+       (*ashlsi3_cconly): Likewise.
+       (*ashlsi3_cmp_zext): Likewise.
+       (*ashlhi3_cmp): Likewise.
+       (*ashlhi3_cconly): Likewise.
+       (*ashlqi3_cmp): Likewise.
+       (*ashlqi3_cconly): Likewise.
+       (*ashrdi3_cmp_rex64): Likewise.
+       (*ashrdi3_cconly_rex64): Likewise.
+       (*ashrsi3_cmp): Likewise.
+       (*ashrsi3_cconly): Likewise.
+       (*ashrsi3_cmp_zext): Likewise.
+       (*ashrhi3_cmp): Likewise.
+       (*ashrhi3_cconly): Likewise.
+       (*ashrqi3_cmp): Likewise.
+       (*ashrqi3_cconly): Likewise.
+       (*lshrdi3_cmp_rex64): Likewise.
+       (*lshrdi3_cconly_rex64): Likewise.
+       (*lshrsi3_cmp): Likewise.
+       (*lshrsi3_cconly): Likewise.
+       (*lshrsi3_cmp_zext): Likewise.
+       (*lshrhi3_cmp): Likewise.
+       (*lshrhi3_cconly): Likewise.
+       (*lshrqi2_cmp): Likewise.
+       (*lshrqi2_cconly): Likewise.
+
+2006-09-07 Uros Bizjak <uros@kss-loka.si>
+
+       PR target/28946
+       * config/i386/i386.md ("*ashldi3_cconly_rex64", "*ashlsi3_cconly",
+       "*ashlhi3_cconly", "*ashlqi3_cconly", "*ashrdi3_one_bit_cconly_rex64",
+       "*ashrdi3_cconly_rex64", "*ashrsi3_one_bit_cconly", "*ashrsi3_cconly",
+       "*ashrhi3_one_bit_cconly", "*ashrhi3_cconly",
+       "*ashrqi3_one_bit_cconly", "*ashrqi3_cconly",
+       "*lshrdi3_cconly_one_bit_rex64", "*lshrdi3_cconly_rex64",
+       "*lshrsi3_one_bit_cconly", "*lshrsi3_cconly",
+       "*lshrhi3_one_bit_cconly", "*lshrhi3_cconly",
+       "*lshrqi2_one_bit_cconly", "*lshrqi2_cconly": New patterns to
+       implement only CC setting effects of shift instructions.
+
+2006-09-07  Martin Michlmayr  <tbm@cyrius.com>
+
+       * doc/contrib.texi: Add myself.
+
+2006-09-07  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/28862
+       * stor-layout.c (relayout_decl): Don't zero the alignment if it
+       was set by the user.
+
+2006-09-07  Paolo Bonzini  <bonzini@gnu.org>
+
+       PR target/27117
+       * config/sh/sh.md (divsi_inv_qitable, divsi_inv_hitable): New patterns.
+       (divsi_inv_m1): Use them.
+       (UNSPEC_DIV_INV_TABLE): New constant.
+
+2006-09-06  James E Wilson  <wilson@specifix.com>
+
+       PR rtl-opt/27883
+       * flow.c (update_life_info): If UPDATE_LIFE_LOCAL and PROP_DEATH_NOTES
+       then call count_or_remove_death_notes.
+
+2006-09-06  Jason Merrill  <jason@redhat.com>
+
+       PR c++/27371
+       * tree-inline.c (copy_result_decl_to_var): New fn.
+       (declare_return_variable): Use it.  Call declare_inline_vars here.
+       (expand_call_inline): Not here.
+
+2006-09-06  Diego Novillo  <dnovillo@redhat.com>
+
+       * doc/contrib.texi: Update my entry.
+
+2006-09-06  Nick Clifton  <nickc@redhat.com>
+
+       * config/frv/frv.h (EXTRA_MEMORY_CONSTRAINT): Define.
+
+2006-09-05  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/28937
+       * tree-flow.h (tree_ssa_unswitch_loops): Return unsigned int.
+       (canonicalize_induction_variables): Likewise.
+       (tree_unroll_loops_completely): Likewise.
+       (tree_ssa_prefetch_arrays): Likewise.
+       (remove_empty_loops): Likewise.
+       * tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops): Return
+       TODO_cleanup_cfg instead of directly calling
+       cleanup_tree_cfg_loop.
+       * tree-ssa-loop-ivcanon.c (canonicalize_induction_variables):
+       Likewise.
+       (tree_unroll_loops_completely): Likewise.
+       (remove_empty_loops): Likewise.
+       * tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Likewise.
+       * tree-ssa-loop.c (tree_ssa_loop_unswitch): Use the return value
+       of tree_ssa_unswitch_loops.
+       (tree_ssa_loop_ivcanon): Use the return value of
+       canonicalize_induction_variables.
+       (tree_ssa_empty_loop): Use the return value of
+       remove_empty_loops.
+       (tree_complete_unroll): Use the return value of
+       tree_unroll_loops_completely.
+       (tree_ssa_loop_prefetch): Use the return value of
+       tree_ssa_prefetch_arrays.
+       * passes.c (execute_todo): Before Cleanup CFG, set
+       updating_used_alone and after cleanup CFG, call
+       recalculate_used_alone.
+
+2006-09-05  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/28952
+       * tree-vect-transform.c (vectorizable_condition): Move the check
+       for the type after the check for simple condition.
+
+2006-09-05  J"orn Rennecke  <joern.rennecke@st.com>
+           Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR target/28764
+       * mode-switching.c (optimize_mode_switching): Make the destination
+       block of an abnormal edge have no anticipatable mode.  Don't
+       insert mode switching code at the end of the source block of
+       an abnormal edge.
+
+2006-09-05  Paolo Bonzini  <bonzini@gnu.org>
+
+       PR rtl-optimization/26847
+       * simplify-rtx.c (struct simplify_plus_minus_op_data): Remove ix.
+       (simplify_plus_minus_op_data_cmp): For REGs, break ties on the regno.
+       (simplify_plus_minus): Count n_constants while filling ops.  Replace
+       qsort with insertion sort.  Before going through the array to simplify
+       pairs, sort it.  Delay early exit until after the first sort, exiting
+       only if no swaps occurred.  Simplify pairs in reversed order, without
+       special-casing the first iteration.  Pack ops after simplifying pairs.
+
+2006-09-05  Anatoly Sokolov <aesok@post.ru>
+
+       * config/avr/avr.c (avr_mcu_types): Add support for at90pwm1 device.
+       * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.).
+       * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.).
+       (avr_rtx_costs): Mark 'outer_code' argument with ATTRIBUTE_UNUSED.
+
+2006-09-05  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/28900
+       * tree-if-conv.c (find_phi_replacement_condition): Gimplify
+       compound conditional before creating COND_EXPR condition.
+
+2006-09-05  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/28905
+       * tree-vrp.c (fix_equivalence_set): Manually implement
+       !value_ranges_intersect_p to also handle symbolic ranges.
+
+2006-09-05  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/28935
+       * tree-ssa-ccp.c (fold_stmt_r): Make sure to fold the condition
+       of a COND_EXPR.
+
+2006-09-04  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/27616
+       * cse.c (table_size): New static variable.
+       (new_basic_block): Initialize it to 0.
+       (remove_from_table): Decrement it.
+       (insert): Increment it.
+       (fold_rtx_mem_1): New function, renamed from fold_rtx_mem.
+       (fold_rtx_mem): Enforce a cap on the recursion depth.  Call
+       fold_rtx_mem_1 if under the cap.
+       (fold_rtx) <RTX_COMM_ARITH>: In the associative case, delay a little
+       the lookup of the equivalent expression and test for equality of the
+       first operand of the equivalent expression before in turn looking up
+       an equivalent constant for the second operand.
+
+2006-09-02  Geoffrey Keating  <geoffk@apple.com>
+
+       Revert this change:
+       2006-03-17  Alexandre Oliva  <aoliva@redhat.com>
+       * dwarf2out.c (dwarf2out_stack_adjust): Always track the stack
+       pointer, instead of assuming it is possible to derive the
+       correct args size from a call insn.
+
+2006-09-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/27567
+       * builtins.c (fold_builtin_memcpy, fold_builtin_memmove): Remove.
+       (fold_builtin_mempcpy): Rename to...
+       (fold_builtin_memory_op): ... this.  Optimize one element copy
+       into an assignment.
+       (fold_builtin_memset, fold_builtin_bzero, fold_builtin_bcopy): New
+       functions.
+       (expand_builtin_strcpy, expand_builtin_strncpy): Handle COMPOUND_EXPR.
+       (expand_builtin_memcpy, expand_builtin_mempcpy,
+       expand_builtin_memmove): Likewise.  Use fold_builtin_memory_op.
+       (fold_builtin_1): Handle BUILT_IN_MEMSET, BUILT_IN_BZERO and
+       BUILT_IN_BCOPY.  Use fold_builtin_memory_op for
+       BUILT_IN_MEM{CPY,PCPY,MOVE}.
+
+2006-09-01  DJ Delorie  <dj@redhat.com>
+
+       * config/m32c/cond.md (cbranch<mode>4): Defer splitting until after reload.
+       (stzx_16): Likewise.
+       ("stzx_24_<mode>"): Likewise.
+       ("stzx_reversed_<mode>"): Likewise, and make mode-specific.
+       ("cmp<mode>_op"): New.
+       (cmp<mode>): Change to expander; just save operands.
+       (b<code>_op): New.
+       (b<code>): Change to expander, emit compare here.
+       (s<code>_op): Change to use split and expander.
+       (s<code>_24_op): Likewise.
+       (s<code>_<mode>): New.
+       (s<code>_<mode>_24): New.
+       (movqicc_<code>_<mode): New.
+       (movhicc_<code>_<mode>): New.
+       (s<code>): New.
+       (s<code>_24): New.
+       * config/m32c/m32c.c (compare_op0, compare_op1): New.
+       (m32c_pend_compare): New.
+       (m32c_unpend_compare): New.
+       (m32c_expand_scc): New.
+       (m32c_expand_movcc): Emit the compare also.
+       * config/m32c/predicates.md (mra_nopp_operand): New.
+
+2006-09-01  J"orn Rennecke  <joern.rennecke@st.com>
+       Richard Guenther  <rguenther@suse.de>
+       Adam Nemet  <anemet@caviumnetworks.com>
+
+       PR middle-end/27226
+       * builtins.c (get_pointer_alignment): Handle more forms
+       of base addresses that can be used to derive more precise
+       information about alignment.
+
+2006-09-01  Jason Merrill  <jason@redhat.com>
+
+       PR c++/28899
+       * gimplify.c (gimplify_modify_expr_rhs) [BIND_EXPR]: Handle
+       want_value.
+
+       * gimplify.c (voidify_wrapper_expr): Handle null type.
+
+2006-09-01  Josh Conner  <jconner@apple.com>
+
+       PR c++/25505
+       * tree-nrv.c (dest_safe_for_nrv_p): New function.
+       (execute_return_slot_opt): Use it.
+
+2006-08-31  Josh Conner  <jconner@apple.com>
+
+       PR c++/25505
+       * tree-gimple.c (is_gimple_mem_rhs): Recognize functions
+       returning aggregates.
+
+2006-08-31  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/28839
+       * tree-into-ssa.c (prune_unused_phi_nodes): Take into account kills in
+       blocks in that phi arguments appear.
+
+2006-08-31  Roger Sayle  <roger@eyesopen.com>
+
+       PR other/22313
+       * dwarf2out.c (add_fde_cfi): Use a set_loc if the current label is
+       NULL, otherwise use an advance_loc4 to adjust relative to the
+       current label.
+       (output_cfi) <DW_CFA_set_loc>: Update the current label.
+       (dwarf2out_switch_text_section): Reset the current label to avoid
+       using advance_loc4 over section boundaries.
+
+2006-08-31  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       PR target/24367
+       * config/s390/s390.md ("movsi", "movdi" expander): Accept rtxes like
+       r12 + SYMBOLIC_CONST.
+
+2006-08-30  Richard Guenther  <rguenther@suse.de>
+
+       * Makefile.in (see.o): Add $(EXPR_H) dependency.
+
+2006-08-30  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/27735
+       * cfgloopmanip.c (fix_loop_placements, fix_bb_placements, unloop):
+       Add new argument to keep track of whether an irreducible region
+       was affected.  All callers changed.
+       (fix_irreducible_loops): Removed.
+       (remove_path): Call mark_irreducible_loops if EDGE_IRREDUCIBLE_LOOP
+       flags were invalidated.
+
+2006-08-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386.md (*fop_df_comm_mixed): Match DF operands
+       instead of SF operands.
+       (*fop_df_comm_sse): Likewise.
+       (*fop_df_comm_i387): Likewise.
+       (*fop_df_1_mixed): Likewise.
+       (*fop_df_1_sse): Likewise.
+
+2006-08-29  Andrew Pinski  <pinskia@physics.uc.edu>
+           J"orn Rennecke  <joern.rennecke@st.com>
+
+       PR tree-optimization/17506
+       * tree-ssa.c (warn_uninit): If warning about a location outside of
+       the current function, note where the variable was declared.
+
+2006-08-28  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/28411
+       * double-int.c (double_int_div): Use double_int_divmod.
+       (double_int_divmod, double_int_sdivmod, double_int_udivmod,
+       double_int_mod, double_int_smod, double_int_umod): New functions.
+       * double-int.h (double_int_divmod, double_int_sdivmod,
+       double_int_udivmod, double_int_mod, double_int_smod, double_int_umod):
+       Declare.
+       * tree-ssa-loop-ivopts.c (constant_multiple_of): Returns the result
+       in double_int.
+       (get_computation_aff, get_computation_cost_at): Handle double_int
+       return type of constant_multiple_of.
+
+2006-08-28  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR middle-end/26632
+       * convert.c (convert_to_integer): Set TREE_NO_WARNING to 1 on
+       an implicit conversion.
+
+2006-08-28  Prafulla Thakare  <prafullat@kpitcummins.com>
+
+       * config/h8300/h8300.c (TARGET_DEFAULT_TARGET_FLAGS): New.
+
+2006-08-27  Roger Sayle  <roger@eyesopen.com>
+
+       * ifcvt.c (cheap_bb_rtx_cost_p): Don't speculatively execute
+       x87 instructions.
+
+2006-08-27  Kazu Hirata  <kazu@codesourcery.com>
+
+       * config/i386/crtfastmath.c: Fix a comment typo.
+
+2006-08-26  Roger Sayle  <roger@eyesopen.com>
+
+       * tree.h (CASE_LOW_SEEN, CASE_HIGH_SEEN): New macros for manipulating
+       temporary visit flags on CASE_LABEL_EXPRs.
+       * c-common.c (match_case_to_enum): Add function comment.  Avoid
+       O(N) loop, by looking up both CASE_LOW_SEEN and CASE_HIGH_SEEN.
+       (c_do_switch_warnings):  Reorganize to record CASE_LOW_SEEN and
+       CASE_HIGH_SEEN for enumerated types.  If the switch expression is
+       a constant, only warn if that constant value isn't handled.
+
+2006-08-26  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c++/24009
+       * input.h (restore_input_file_stack): Declare.
+       (INPUT_FILE_STACK_BITS): Define.
+       * toplev.c (fs_p, input_file_stack_history,
+       input_file_stack_restored, restore_input_file_stack): New.
+       (push_srcloc, pop_srcloc): Check for input_file_stack_tick
+       overflowing INPUT_FILE_STACK_BITS bits.  Save new state of stack.
+       (pop_srcloc): Don't free old state of stack.
+
+2006-08-26  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/27544
+       * doc/extend.texi (PowerPC Variable Attributes): Mention altivec.
+       (PowerPC Type Attributes): New.
+
+2006-08-26  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.c (function_arg_boundary): New.
+       (function_arg, xtensa_gimplify_va_arg_expr): Limit alignment to
+       STACK_BOUNDARY.
+       * config/xtensa/xtensa.h (FUNCTION_ARG_BOUNDARY): Move code to new
+       function_arg_boundary function that limits alignment to STACK_BOUNDARY.
+
+2006-08-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/28683
+       * cfgexpand.c (add_reg_br_prob_note): Check if last has exactly
+       3 following insns.
+
+2006-08-25  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * flow.c (verify_wide_reg): Use internal_error for consistency failure.
+       (verify_local_live_at_start): Likewise.
+
+2006-08-25  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/27893
+       * gimplify.c (gimplify_decl_expr, gimplify_init_ctor_preeval,
+       omp_add_variable): Treat sizes as variable whenever not
+       INTEGER_CST.
+
+2006-08-26  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/28814
+       * fold-const.c (fold_binary): Fold temporary to correct
+       type before constructing new comparison.
+
+2006-08-25  Fariborz Jahanian  <fjahanian@apple.com>
+
+       PR c/28418
+       * c-gimplify.c (gimplify_compound_literal_expr): Don't add
+       variable again if DECL_SEEN_IN_BIND_EXPR_P.
+
+2006-08-25  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/28299
+       * c-decl.c (start_function): Don't try to process prototype
+       information from old declaration that isn't a function.
+
+2006-08-25  Jan Hubicka  <jh@suse.cz>
+
+       PR target/28621
+       * config/i386/crtfastmath.c (set_fast_math): Force stack alignment.
+
+2006-08-25  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/27075
+       * config/rs6000/rs6000.c (print_operand): Only use e500 %y syntax
+       for 8 byte objects.
+
+2006-08-25  J"orn Rennecke  <joern.rennecke@st.com>
+
+       PR tree-optimization/16876
+       * c-typeck.c (c_convert_parm_for_inlining): Don't take early
+       exit if PARM doesn't match VALUE.
+
+2006-08-25  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.h (ASM_OUTPUT_POOL_PROLOGUE): Do not emit a
+       literal_prefix directive.
+       (XTENSA_DECLARE_FUNCTION_SIZE): Delete.
+       * config/xtensa/linux.h (ASM_DECLARE_FUNCTION_SIZE): Delete.
+       * config/xtensa/elf.h (ASM_DECLARE_FUNCTION_SIZE): Delete.
+
+2006-08-25  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/28753
+       * config/rs6000/rs6000.md (movcc_internal1): Change operand 1
+       predicate to general_operand.  Add 0->y and I->r alternatives.
+
+2006-08-25  Kazu Hirata  <kazu@codesourcery.com>
+
+       * doc/tm.texi: Fix a typo.
+       * predict.c: Fix comment typos.
+
+2006-08-25  Nick Clifton  <nickc@redhat.com>
+
+       * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Add
+       assertions of "cpu" and "machine".
+
+2006-08-24  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR tree-opt/28807
+       * tree-ssa-operands.c (access_can_touch_variable): Don't say
+       the access through a base which has an alias set of 0 cannot
+       touch the variable.
+
+2006-08-24  Bill Wendling  <wendling@apple.com>
+
+       * doc/tm.texi (TARGET_DEFAULT_PACK_STRUCT): Fixed English.
+
+2006-08-24  Jan Hubicka  <jh@suse.cz>
+
+       * reload1.c (emit_reload_insns): Fix yet another typo in my patch.
+
+2006-08-24  Jan Hubicka  <jh@suse.cz>
+
+       PR debug/26881
+       * cgraph.c: Fix comments.
+       (cgraph_varpool_mark_needed_node): Mark only variables not already
+       output to file.
+       * cgraphunit.c: Update comments; include gt-cgraphunit.h
+       (cgraph_varpool_assembled_nodes_queue): New static variable.
+       (cgraph_varpool_assemble_decl): Record output decls for debug out code.
+       (cgraph_varpool_output_debug_info): New function.
+       (cgraph_finalize_compilation_unit, cgraph_optimize): Call it.
+       * Makefile.in: Add gt-cgraphunit.h
+
+2006-08-24  Jan Hubicka  <jh@suse.cz>
+
+       * predict.c (probability_reliable_p): New predicate.
+       (edge_probability_reliable_p, br_prob_note_reliable_p): Likewise.
+       (predict_loops): Do not predict loop exit with less than 2%
+       probability.
+       * basic-block.h (edge_probability_reliable_p,
+       br_prob_note_reliable_p): Declare.
+       * ia64.h (ia64_print_operand): Do not disable on-chip branch
+       prediction when static predictor is not reliable.
+       * rs6000.c (output_cbranch): Likewise.
+
+2006-08-23  Stuart Hastings  <stuart@apple.com>
+
+       PR 28825
+       * gcc/config/i386/i386.c (ix86_expand_vector_init_duplicate,
+       ix86_expand_vector_init_one_nonzero): Remove TARGET_SSE test.
+
+2006-08-21  Geoffrey Keating  <geoffk@apple.com>
+
+       PR debug/28692
+       * dwarf2out.c (rtl_for_decl_init): Don't try to create RTL for
+       complex values, nor for generic vector values.
+
+2006-08-22  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/28776
+       * tree-scalar-evolution.c (fold_used_pointer): Add at_stmt
+       parameter.  Convert arguments to arithmetic expression to the
+       chrecs type.
+       (analyze_scalar_evolution_1): Adjust caller.
+
+2006-08-22  Jan Hubicka  <jh@suse.cz>
+
+       Patch by Paolo Bonzini
+       * reload1.c (emit_reload_insns): Fix incorrect bracketing introduced by
+       my previous patch.
+
+2006-08-22  Daniel Berlin  <dberlin@dberlin.org>
+
+       PR tree-optimization/28003
+       * tree-ssa-alias.c (compute_may_aliases): Compute call clobbered
+       before grouping aliases.
+
+2006-08-22  Roger Sayle  <roger@eyesopen.com>
+
+       * config/i386/i386.c (ix86_value_regno): Don't return FIRST_MMX_REG
+       if !TARGET_MMX, and don't return FIRST_SSE_REG if !TARGET_SSE.
+
+2006-08-21  Jason Merrill  <jason@redhat.com>
+
+       PR c++/27115
+       * gimplify.c (voidify_wrapper_expr): Handle STATEMENT_LIST as a
+       wrapper.  Loop to handle nested wrappers.
+       (gimplify_bind_expr): Remove temp parameter.
+       (gimplify_modify_expr_rhs): Handle CLEANUP_POINT_EXPR, BIND_EXPR
+       and STATEMENT_LIST on the rhs.
+       (gimplify_statement_list): Voidify the STATEMENT_LIST.
+       (gimplify_expr): Pass pre_p to gimplify_statement_list.
+       (gimplify_target_expr): Remove special BIND_EXPR handling.
+
+2006-08-21  J"orn Rennecke  <joern.rennecke@st.com>
+
+       * config/sh/lib1funcs-Os-4-200.asm: Guard entire file with
+       #if !__SHMEDIA__ .
+
+2006-08-21  Olivier Hainque  <hainque@adacore.com>
+
+       * gimplify.c (gimplify_init_constructor) <RECORD,UNION,ARRAY types>:
+       Arrange for the temporary captures of components overlapping the lhs
+       to happen before the lhs is possibly cleared.
+
+2006-08-21  Mark Shinwell  <shinwell@codesourcery.com>
+
+       * config/arm/pr-support.c (__gnu_unwind_execute): Insert " + 1" in
+       necessary places to pass the correct "number of registers" values
+       to _Unwind_VRS_Pop.
+
+2006-08-20  Jan Hubicka  <jh@suse.cz>
+
+       * tree-ssa-alias.c (eq_ptr_info, ptr_info_hash): New function.
+       (create_name_tags): Instead of quadratic checking use hashtable.
+       * bitmap.h: Include hashtab.h.
+       (bitmap_hash): Declare.
+       * bitmap.c (bitmap_hash): New function.
+
+2006-08-20  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * tree-optimize.c (tree_rest_of_compilation): Do not remove edges
+       twice.
+       * tree-inline.c (copy_bb): Use cgraph_set_call_stmt.
+       * ipa-inline.c (cgraph_check_inline_limits): Add one_only argument.
+       (cgraph_decide_inlining, cgraph_decide_inlining_of_small_function,
+       cgraph_decide_inlining_incrementally): Update use of
+       cgraph_check_inline_limits.
+       * cgraph.c (edge_hash, edge_eq): New function.
+       (cgraph_edge, cgraph_set_call_stmt, cgraph_create_edge,
+       cgraph_edge_remove_caller, cgraph_node_remove_callees,
+       cgraph_remove_node): Maintain call site hash.
+       * cgraph.h (struct cgraph_node): Add call_site_hash.
+       (cgraph_set_call_stmt): New function.
+
+2006-08-20  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * reload1.c (reg_has_output_reload): Turn into regset.
+       (reload_as_needed, forget_old_reloads_1, forget_marked_reloads,
+       choose_reload_regs, emit_reload_insns): Update to new
+       reg_has_output_reload.
+
+2006-08-20  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/28779
+       * ipa-inline.c (cgraph_decide_inlining, cgraph_early_inlining): Compute
+       function body sizes.
+       * cgraphunit.c (cgraph_analyze_function): Don't do so.
+
+2006-08-20  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR target/28648 c:
+       * tree.c (handle_dll_attribute): Return early if not a
+       var or function decl.
+
+2006-08-18  Joseph Myers  <joseph@codesourcery.com>
+
+       PR target/27565
+       * config/rs6000/rs6000.h (LOCAL_ALIGNMENT): For SPE, only adjust
+       alignment of SPE vector types.
+
+2006-08-18  Christophe Jaillet  <christophe.jaillet@wanadoo.fr>
+
+       * tree.c (is_attribute_with_length_p): Remove a duplicated assert.
+
+2006-08-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/28744
+       * cgraph.h (struct cgraph_node): Remove externally_visible
+       bitfield.
+       * cgraphunit.c (process_function_and_variable_attributes): Set
+       local.externally_visible rather than externally_visible.
+
+       PR c/28744
+       * c-common.c (handle_externally_visible_attribute): First look
+       at TREE_CODE and only if it is function or var decl, check for
+       non-public objects.  Don't warn for DECL_EXTERNAL.
+       * cgraphunit.c (process_function_and_variable_attributes): Warn
+       if externally_visible attribute is used on non-public object.
+
+2006-08-17  Jan Hubicka  <jh@suse.cz>
+
+       PR tree-optimization/27865
+       * reload1.c (forget_marked_reloads): New function.
+       (forget_old_reloads_1): When data are passed, just mark the registers
+       for later removal.
+       (reload_as_needed): Use the new mechanizm.
+
+2006-08-17  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR target/28146
+       * reload.h (reg_equiv_alt_mem_list): New declaration.
+       * reload1.c (reg_equiv_alt_mem_list): New definition.
+       (reload): Initialize it and release it.
+       (delete_output_reload): Use it.
+       * reload.c (push_reg_equiv_alt_mem): New function.
+       (find_reloads_toplev): Call it.
+       (find_reloads_address, find_reloads_address_1): Likewise.
+       (find_reloads_subreg_address): Likewise.
+
+2006-08-17  Maxim Kuvyrkov  <mkuvyrkov@ispras.ru>
+
+       PR rtl-optimization/28489
+       * sched-ebb.c (begin_schedule_ready): Create basic block
+       at the right place.
+       (advance_target_bb): Skip empty blocks.
+       * haifa-sched.c (bb_note): Make global.
+       * sched-int.h (bb_note): Add prototype.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/27865
+       * tree-vrp.c (adjust_range_with_scev): Do not use TYPE_{MIN,MAX}_VALUE
+       for pointer types.
+       * tree-scalar-evolution.c (fold_used_pointer_cast, pointer_offset_p,
+       fold_used_pointer, pointer_used_p): New functions.
+       (analyze_scalar_evolution_1): Use fold_used_pointer.
+       * tree-chrec.c (convert_affine_scev): Convert no-op casts correctly.
+       * tree-ssa-loop-ivopts.c (generic_type_for): Return integral type
+       for pointers.
+
+2006-08-17  Paolo Bonzini <bonzini@gnu.org>
+
+       PR c++/28573
+       * c-common.c (fold_offsetof_1): Add an argument and recurse down to it
+       or the INTEGER_CST.  Fail on a CALL_EXPR.
+       (fold_offsetof): Pass new argument to fold_offsetof_1.
+       * c-parser.c (c_parser_postfix_expression): Don't include a NULL
+       operand into an INDIRECT_REF.
+       * c-typeck.c (build_unary_op): Adjust call to fold_offsetof.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR gcov/profile/26570
+       * value-prof.c (static_values): Removed.
+       (tree_find_values_to_profile): Do not set static_values.
+       (find_values_to_profile): Do not free static_values.
+       * profile.c (instrument_values): Do not free the values.
+       (branch_prob): Free the values.
+
+2006-08-16  Naveen.H.S  <naveenh@kpitcummins.com>
+
+       * config/m32c/m32c_lib1.S (__mulsi3): Use only registers for dest.
+
+2006-08-16  Joseph S. Myers  <joseph@codesourcery.com>
+
+       PR c/27697
+       * c-typeck.c (build_component_ref): Combine qualifiers of
+       structure or union and field.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/28071
+       * basic-block.h (bb_dom_dfs_in, bb_dom_dfs_out): Declare.
+       * dominance.c (bb_dom_dfs_in, bb_dom_dfs_out): New functions.
+       * tree-into-ssa.c (struct dom_dfsnum): New.
+       (cmp_dfsnum, find_dfsnum_interval, prune_unused_phi_nodes): New
+       functions.
+       (insert_phi_nodes_for): Use prune_unused_phi_nodes instead of
+       compute_global_livein.
+       (prepare_block_for_update, prepare_use_sites_for): Mark the uses
+       in phi nodes in the correct blocks.
+
+2006-08-16  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR tree-optimization/28364
+       * tree-ssa-loop-ivopts.c (aff_combination_to_tree): Handle zero
+       correctly.
+       (fold_affine_expr): New function.
+       (may_eliminate_iv): Use fold_affine_expr.
+
+2006-08-16  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c/27489
+       * c-typeck.c (c_start_case): Handle invalid orig_type correctly.
+       Clean up.
+
+2006-08-16  Mike Stump  <mrs@apple.com>
+
+       * doc/invoke.texi (-Wno-deprecated-declarations): Fixup use of pxref.
+       * doc/cppopts.texi (-MD): Likewise.
+
+2006-08-15  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR c/28287
+       * c-common.c (handle_weak_attribute): Ignore and warn if
+       not a FUNCTION_ or VAR_DECL.
+
+2006-07-15  Mike Stump  <mrs@apple.com>
+
+       PR c/28280
+       * c-parser.c (c_parser_typeof_specifier): Don't use
+       c_finish_expr_stmt, open code desired semantics instead.
+
+2006-08-15  Nick Clifton  <nickc@redhat.com>
+
+       * config.gcc (x86-mingw32): Add a gthr-win32.h including makefile
+       fragment to tmake_file only if threads are enabled.
+       * config/i386/t-mingw32 (LIB2FUNCS_EXTRA): Move to...
+       * config/i386/t-gthr-win32: New file. ... here.
+
+2006-08-15  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c/28649
+       * c-parser.c (c_parser_compound_statement_nostart): Reset
+       parser->error after each statement.
+
+2006-08-15  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/28713
+       * omp-low.c (lower_omp_parallel): Convert t to
+       receiver_decl's type.
+       (expand_omp_parallel): STRIP_NOPS from the MODIFY_EXPR
+       source before comparison.
+
+       PR middle-end/28724
+       * gimplify.c (gimplify_omp_atomic_pipeline): Convert oldival
+       to itype in assignment to oldival2.
+
+2006-07-14  Andrew Pinski  <pinksia@physics.uc.edu>
+
+       PR c/27490
+       PR c/27489
+       * c-typeck.c (build_compound_expr): If the second expression
+       is an error mark, then just return an error mark instead of
+       creating a COMPOUND_EXPR.
+
+2006-07-14  Mike Stump  <mrs@apple.com>
+
+       * Makefile.in (LIBGCC_DEPS): Don't depend on LANGUAGES.
+
+2006-08-14  Kazu Hirata  <kazu@codesourcery.com>
+
+       * c-decl.c, var-tracking.c: Fix comment typos.
+
+2006-08-14  Richard Sandiford  <richard@codesourcery.com>
+
+       PR rtl-optimization/28634
+       * reorg.c (fill_slots_from_thread): Do not assume A + X - X == A
+       for floating-point modes unless flag_unsafe_math_optimizations.
+
+2006-08-13  Alexandre Oliva  <aoliva@redhat.com>
+           Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR c/27184
+       * tree.c (build_array_type): Unify array types with
+       unspecified index_type.
+       * c-decl.c (grokdeclarator): Make sure we do not modify a
+       unified incomplete array type.
+       * c-typeck.c (store_init_value): Create distinct type before
+       filling in the index type in an initializer from a compound
+       literal.
+
+       * c-decl.c (grokdeclarator): Remove code where we copy the
+       array type over.
+
+2006-08-13  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * tree-pass.h (TODO_update_ssa): Fix which bit is used to take
+       into account for TODO_dump_cgraph.
+       (TODO_update_ssa_no_phi): Likewise.
+       (TODO_update_ssa_full_phi): Likewise.
+       (TODO_update_ssa_only_virtuals): Likewise.
+       (TODO_remove_unused_locals): Likewise.
+       (TODO_set_props): Likewise.
+       (TODO_update_stmt_usage): Likewise.
+
+2006-08-13  Dirk Mueller  <dmueller@suse.de>
+
+       * c-common.c (strict_aliasing_warning): Fix formatting.
+
+2006-08-13  Matthias Klose  <doko@debian.org>
+
+       * doc/invoke.texi: Fix spelling errors.
+
+2006-08-11  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR rtl-optimization/23454
+       * reorg.c (relax_delay_slots): Update comment.
+
+2006-08-11  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/28651
+       * simplify-rtx.c (simplify_const_relational_operation):
+       Simplify A CMP B to A - B CMP 0 only for EQ and NE comparison
+       codes.
+
+2006-08-10  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree.c (build1_stat): Also propagate the TREE_CONSTANT and
+       TREE_INVARIANT flags for a VIEW_CONVERT_EXPR.
+
+2006-08-10  Paul Brook  <paul@codesourcery.com>
+
+       * final.c (final_scan_insn): Clear current_insn_predicate before
+       outputting inline asm.
+
+2006-08-10  Dorit Nuzman  <dorit@il.ibm.com>
+
+       PR tree-optimization/26197
+       * tree-ssa-alias.c (new_type_alias): Takes additional argument. Calls
+       get_ref_base_and_extent and overlap_subvar to add only relevant
+       subvars as may-aliases.
+       (add_may_alias_for_new_tag): New function, factored out of
+       new_type_alias.
+       * tree-vect-transform.c (vect_create_data_ref_ptr): Call new_type_alias
+       with additional argument.
+       * tree-flow.h (new_type_alias): Takes additional argument.
+
+2006-08-09  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * gcov.c (no_data_file): New flag.
+       (read_count_file): Set it if data file not present.  Assume counts
+       zero if not found.
+       (output_lines): Don't name the data file, if there wasn't one.
+
+2006-08-09  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config/rs6000/rs6000.c (print_operand) <D>: Fix comment and adjust.
+       (rs6000_generate_compare): Tweak comments.
+       * config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): Fix comment.
+
+2006-08-09  Alexandre Oliva  <aoliva@redhat.com>
+
+       * var-tracking.c (enum micro_operation_type): Add MO_COPY.
+       (var_debug_decl): New function.
+       (var_reg_set): Follow debug decl link.  Add location even if
+       reg is already known to hold some other variable.
+       (var_mem_set): Follow debug decl link.
+       (var_reg_delete_and_set, var_mem_delete_and_set): Follow debug
+       decl link.  Delete other known locations of the variable part
+       if requested.
+       (var_reg_delete, var_mem_delete): Delete other known locations
+       of the variable part if requested.
+       (same_variable_part_p): New function.
+       (add_stores): Select MO_COPY when appropriate.
+       (vt_initialize): Handle it.
+       (compute_bb_dataflow, emit_notes_in_bb): Likewise.  Delete
+       known locations for MO_SET and MO_CLOBBER.
+       (find_variable_location_part): New function.
+       (set_variable_part, delete_variable_part): Use it.
+       (clobber_variable_part): New function.
+       * dwarf2out.c (dwarf2out_var_location): Do not follow debug
+       decl link.
+
+2006-08-07  Victor Kaplansky <victork@il.ibm.com>
+
+       PR tree-optimization/26969
+       * tree-vect-analyze.c (vect_analyze_loop_form): Add check of latch
+       with an empty list of PHIs.
+
+2006-08-06  Paolo Bonzini  <bonzini@gnu.org>
+
+       PR target/27827
+
+       * conffig/i386/i386.md: Add peephole2 to avoid "fld %st"
+       instructions.
+
+2006-08-06  Andreas Schwab  <schwab@suse.de>
+
+       * config/m68k/m68k.c (m68k_output_function_epilogue): Fix format
+       string.  Whitespace and comment fixup.
+
+2006-08-05  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c/28502
+       * c-decl.c (validate_proto_after_old_defn): Return false on invalid
+       argument.
+
+       PR c/27721
+       * c-typeck.c (build_modify_expr): Test earlier for non-lvalues.
+
+       PR c/28136
+       * c-parser.c (c_parser_postfix_expression_after_paren_type): Robustify.
+
+2006-08-04  Jan Hubicka  <jh@suse.cz>
+
+       PR target/26655
+       PR target/28270
+       * reload.c (push_reload): Patch out the mismatching instruction;
+       return early.
+       (find_reload): Bail out if the instruction was patched out.
+
+2006-08-04  Jan Hubicka  <jh@suse.cz>
+
+       PR tree-optimization/24888
+       * tree-inline.c (expand_call_inline): Do not re-record variables.
+       (declare_inline_vars): Add variable to unexpanded_var_list.
+
+2006-08-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+           Roger Sayle  <roger@eyesopen.com>
+
+       PR rtl-optimization/26244
+       * cse.c (fold_rtx): Correctly associate shifts when const_arg1 and/or
+       inner_const are negative or greater than or equal to the bitsize of
+       MODE.  If SHIFT_COUNT_TRUNCATED is false, the values aren't associated.
+       Otherwise, the values are masked using GET_MODE_BITSIZE (mode) - 1.
+       Simplify complicated if statement.  For ASHIFT and LSHIFTRT, return
+       CONST0_RTX (mode) when the new shift count is greater than or equal to
+       to the bitsize of the object being shifted and XEXP (y, 0) has no side
+       effects.
+
+2006-08-04  Kazu Hirata  <kazu@codesourcery.com>
+
+       * tree-cfg.c: Fix a comment typo.
+
+2006-08-03  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/28148
+       * varasm.c (output_constant): Give the front end another chance to
+       expand constants, after stripping NOPs.
+
+2006-08-03  Jan Hubicka  <jh@suse.cz>
+
+       * domwalk.c (walk_dominator_tree): Reorganize to non-recursive
+       implementation.
+
+2006-08-03  Dorit Nuzman  <dorit@il.ibm.com>
+
+       PR tree-optimization/27770
+       * tree-vectorizer.h (get_vectype_for_scalar_type): Function
+       declaration removed (moved to tree-flow.h).
+       (vect_can_force_dr_alignment_p): Likewise.
+       * tree-flow.h (get_vectype_for_scalar_type): New function declaration
+       (moved from tree-vectorizer.h).
+       (vect_can_force_dr_alignment_p): Likewise.
+       * tree-vectorizer.c (vect_print_dump_info): Allow calling this function
+       from outside the vectorizer - in particular from cgraph stage.
+       * tree-vect-analyze.c (vect_compute_data_ref_alignment): Don't increase
+       the alignment of global arrays when -fsection-anchors is enabled.
+       * cgraphunit.c (cgraph_increase_alignment): New function.
+       (cgraph_optimize): Call cgraph_increase_alignment.
+
+2006-08-03  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/27566
+       * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
+       not reload a SPE symbol_ref into a lo_sum address.
+
+2006-08-02  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       PR debug/28063
+       * dwarf2out.c (prune_unused_types_prune): Move call to
+       prune_unused_types_update_strings to cover the parent DIE also.
+
+2006-08-02  Jan Hubicka  <jh@suse.cz>
+
+       PR gcov/profile/28480
+       * tree-cfg.c (change_bb_for_stmt): New function.
+       (tree_merge_blocks, tree_split_blocks): Use it.
+
+2006-08-01  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR c++/28250
+       PR c++/28257
+       PR c++/28259
+       PR c++/28267
+       * toplev.c (compile_file): Return early on errorcount or sorrycount.
+       * cgraphunit.c (cgraph_finalize_compilation_unit): Likewise.
+       (cgraph_optimize): Likewise.
+
+2006-08-01  Stuart Hastings  <stuart@apple.com>
+
+       * rtl.h (UINTVAL) New.
+       * config/rs6000/rs6000.c (SMALL_INT) Use it.
+       * testsuite/gcc.dg/20060801-1.c: New.
+
+2006-08-01  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       PR debug/23336
+       * c-typeck.c (build_external_type): Mark used enum types.
+       * dwarf2out.c (dwarf2out_abstract_function): Save and restore
+       cfun also.
+       (gen_subprogram_die): Whitespace fix.
+
+2006-08-01  Jan Hubicka  <jh@suse.cz>
+
+       * tree-outof-ssa.c (check_replaceable): Do not allocate def_vars
+       bitmap when not needed.
+       * tree-ssa-pre.c (bitmap_set_and, bitmap_set_and_compl): Free temporary
+       bitmaps.
+
+2006-08-01  Dirk Mueller  <dmueller@suse.de>
+
+       * tree-vrp.c (fix_equivalence_set): Avoid bitmap memory leak.
+
+2006-07-31  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * Makefile.in: Revert part of previous patch:
+       Replace $(VARRAY_H) by varray.h in definition of BASIC_BLOCK_H
+       and REGS_H.
+
+2006-07-30  Eric Christopher  <echristo@apple.com>
+
+       PR target/27543
+       * doc/extend.texi (i386 Variable Attributes): Add anchor.
+       (PowerPC Variable Attributes): New section.
+
+2006-07-30  Atsushi Nemoto  <anemo@mba.ocn.ne.jp>
+
+       PR target/28126 (partial fix)
+       * config/mips/mips.md (tls_get_tp_<mode>): Set can_delay to no.
+
+2006-07-28  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * cfgrtl.c (rtl_delete_block): Free regsets.
+       * flow.c (allocate_bb_life_data): Re-use regsets if available.
+
+2006-07-28  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * Makefile.in: Use $(HEADER_H) instead of header.h in dependencies
+       and variables used in dependencies.
+
+2006-07-27  Arjan van de Ven <arjan@linux.intel.com>
+
+       * config/i386/i386.md (stack_tls_protect_set_di) Use %gs rather than
+       %fs for -mcmodel=kernel.
+       (stack_tls_protect_test_di): Likewise.
+
+2006-07-27  Carlos O'Donell  <carlos@codesourcery.com>
+
+       * Makefile.in: Use mkinstalldirs.
+
+2006-07-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR driver/28437
+       * opts-common.c (prune_options): Skip joined switches.
+
+2006-07-27  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * cselib.c (cselib_process_insn): Don't remove useless values too
+       often for very large hashtables.
+
+2006-07-27  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * global.c (greg_obstack): New obstack.
+       (allocate_bb_info): Use it.
+       (free_bb_info): Likewise.
+       (modify_reg_pav): Likewise.
+
+2006-07-27  Roger Sayle  <roger@eyesopen.com>
+
+       * builtins.c (fold_fixed_mathfn): When long and long long are the
+       same size, canonicalize llceil*, llfloor*, llround* and llrint*
+       functions to their lceil*, lfloor*, lround* and lrint* forms.
+
+2006-07-27  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
+
+       PR gcc/28508
+       * config/m32r/m32r.md (branch_insn): Reduce pc range for short
+       branch.
+       (rev_branch_insn): Likewise.
+
+2006-07-27  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * regmove.c (reg_is_remote_constant_p): Avoid quadratic behaviour.
+       (reg_set_in_bb, max_reg_computed): New static variables.
+       (regmove_optimize): Free the new array.
+       (fixup_match_1): Update call of reg_is_remote_constant_p.
+
+2006-07-26  Jan Hubicka  <jh@suse.cz>
+
+       PR tree-optimization/27882
+       * cgraph.c (cgraph_remove_node): Clear needed, reachable, next, previous
+       and decl fields.
+       * cgraphunit.c (cgraph_reset_node): Expect cgraph_remove_node to kill
+       next pointer
+       (cgraph_analyze_compilation_unit): Likewise.
+       * ipa.c (cgraph_remove_unreachable_nodes): Likewise.
+       * ipa-inline.c (cgraph_decide_recursive_inlining): Likewise.
+       (cgraph_early_inlinine): Make order garbage collected.
+       * Makefile.in (gt-ipa-inline): New garbagecollected file.
+
+2006-07-26  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * dbxout.c (output_types_sort): Add a comment.
+       (output_used_types): Free the VEC.
+
+2006-07-26  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * function.c (reorder_fix_fragments): Delete.
+       (reorder_blocks): Don't call it.
+       (reorder_blocks_1): Put all subblocks under the origin block.
+
+2006-07-26  Zdenek Dvorak <dvorakz@suse.cz>
+
+       PR rtl-optimization/27907
+       * expr.c (force_operand): Use convert_move to handle FLOAT_EXTEND and
+       FLOAT_TRUNCATE.
+
+2006-07-25  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/28473
+       * convert.c (convert_to_integer): When transforming (T)foo(x) into
+       bar(x) check that bar's result type can represent all the values of T.
+
+2006-07-25  Zdenek Dvorak <dvorakz@suse.cz>
+
+       * tree-chrec.c (chrec_convert_aggressive): Return NULL on failure.
+
+2006-07-25  Nick Clifton  <nickc@redhat.com>
+
+       * ggc-page.c (NUM_SIZE_LOOKUP): New constant - the length of the
+       size_lookup[] array.
+       (ggc_alloc_stat): Use NUM_SIZE_LOOKUP.
+       (ggc_pch_count_object): Likewise.
+       (ggc_pch_alloc_object): Likewise.
+       (ggc_pch_write_object): Likewise.
+       (init_ggc): Do not attempt to initialize entries in the
+       size_lookup[] array for objects whose size is greater than than
+       the length of the array.
+
+2006-07-25  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * dbxout.c (output_used_types_helper): Push queued types
+       on a VEC.
+       (output_types_sort): New.
+       (output_used_types): Collect used types on a VEC and sort them
+       before emission.
+
+2006-07-24  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/28463
+       * cgraph.c (cgraph_remove_node): Do not check if dumps
+       are enabled.
+       * cgraphunit.c (cgraph_optimize): Likewise.
+
+2006-07-24  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * tree-cfg.c (tree_split_block): Do not allocate new stmt_list nodes.
+       * tree-iterator.c (tsi_split_statement_list_before): Do not crash when
+       splitting before first stmt.
+
+2006-07-24  Jan Hubicka  <jh@suse.cz>
+
+       PR rtl-optimization/28071
+       * ipa-inline.c (update_caller_keys): Remove edges that
+       are no longer inline candidates.
+
+2006-07-23  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       PR debug/27473
+       * dbxout.c (output_used_types_helper, output_used_types): New.
+       (dbxout_symbol): Call output_used_types.
+
+2006-07-23  Jan Hubicka  <jh@suse.cz>
+
+       PR c/25795
+       PR c++/27369
+       * cgraph.c (cgraph_varpool_nodes): Export.
+       (decide_is_variable_needed): Ignored "used" attribute in
+       unit-at-a-time mode.
+       * cgraph.h (cgraph_varpool_nodes): Declare.
+       * cgraphunit.c (decide_is_function_needed): Ignored "used" attribute in
+       unit-at-a-time mode.
+
+2006-07-23  Roger Sayle  <roger@eyesopen.com>
+
+       PR target/28247
+       * gthr-solaris.h: Prototype __gthrw forms of thr_self, mutex_init and
+       mutex_destroy even when !_LIBOOBJC.  Remove duplicate prototype of
+       the __gthrw form of thr_keycreate.
+       (__gthread_key_delete): Silence the unused argument warning.
+
+2006-07-23  Steven Bosscher  <steven@gcc.gnu.org>
+
+       PR debug/25468
+       * config/elfos.h (ASM_OUTPUT_ASCII): Remove 'register' marks.
+       Cache the last found '\0' marker to avoid quadratic behavior.
+
+2006-07-23  Jan Hubicka  <jh@suse.cz>
+
+       * i386.md (subsi_3_zext): Fix output template.
+
+2006-07-21  Mike Stump  <mrs@apple.com>
+
+       * doc/invoke.texi (C++ Dialect Options): Note that
+       -fvisibility-inlines-hidden doesn't affect explicitly
+       instantiationed inline methods.
+
 2006-07-20  Roger Sayle  <roger@eyesopen.com>
 
        * config.gcc (i[34567]86-*-solaris2*): Add usegas.h to $tm_file
 2006-07-20  Jason Merrill  <jason@redhat.com>
 
        * tree.c (remove_attribute): New fn.
+       * tree.h: Declare it.
 
 2006-07-20  Paul Brook  <paul@codesourcery.com>
 
 2006-07-21  Danny Smith  <dannysmith@users.sourceforge.net>
 
        PR target/28427
-        * config/i386/cygming.h (MAX_OFILE_ALIGNMENT): Define.
+       * config/i386/cygming.h (MAX_OFILE_ALIGNMENT): Define.
 
 2006-07-20  Eric Christopher  <echristo@apple.com>
 
 
 2006-07-18  Paolo Bonzini  <bonzini@gnu.org>
 
-        * configure: Regenerate.
-        * Makefile.in (build_libsubdir): New configure substitution
-        (build_libobjdir): New variable.
-        (BUILD_LIBIBERTY): Use it.
+       * configure: Regenerate.
+       * Makefile.in (build_libsubdir): New configure substitution
+       (build_libobjdir): New variable.
+       (BUILD_LIBIBERTY): Use it.
 
 2006-07-18  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
 
 2006-06-05  Dorit Nuzman  <dorit@il.ibm.com>
            Victor Kaplansky  <victork@il.ibm.com>
 
-        PR tree-optimization/26360
-        * tree-vectorizer.c (destroy_loop_vec_info): Remove (dead) pattern
-        stmts.
+       PR tree-optimization/26360
+       * tree-vectorizer.c (destroy_loop_vec_info): Remove (dead) pattern
+       stmts.
 
 2006-06-04  Roger Sayle  <roger@eyesopen.com>
            Andrew Pinski  <pinskia@physics.uc.edu>
        * recog.c (reg_fits_class_p): If cl is NO_REGS, return 0 immediately.
        * doc/md.texi: Document new constraint-definition mechanism and the
        C interface it provides.  Remove references to old mechanism
-       elsewhere in the document.
+       elsewhere in the document.
        (Machine Constraints): Use pathnames relative to gcc directory,
        i.e. config/ARCH/FILE.  Change i386 section to refer to
        config/i386/predicates.md; update that section to match docstrings.
        * c.opt (-Wwrite-strings): Declare variable warn_write_strings.
        Clarify documentation.
        * c-common.h (warn_write_strings): Remove.
-       * c-common.c (warn_write_strings): Likewise.
+       * c-common.c (warn_write_strings): Likewise.
        * c-opts.c (c_common_init_options): Enable -Wwrite-strings by
        default for C++.
 
        PR c++/26140
        Revert
        2006-01-30  Richard Guenther  <rguenther@suse.de>
-       PR c++/23372
-       * gimplify.c (gimplify_target_expr): Handle easy cases
-       without creating a temporary.
+       PR c++/23372
+       * gimplify.c (gimplify_target_expr): Handle easy cases
+       without creating a temporary.
 
 2006-02-07  Pete Steinmetz  <steinmtz@us.ibm.com>