+2005-09-05 J"orn Rennecke <joern.rennecke@st.com>
+
+ * rtl.h (gen_frame_mem, gen_tmp_stack_mem): Declare.
+ * emit-rtl.c (gen_frame_mem, gen_tmp_stack_mem): New functions.
+ * builtins.c (expand_builtin_return_addr): Use gen_frame_mem.
+
+2005-09-05 J"orn Rennecke <joern.rennecke@st.com>
+
+ PR target/23683
+ * sh.c (sh_reorg, emit_load_ptr): Use gen_const_mem.
+ (output_stack_adjust): Use gen_tmp_stack_mem.
+ (sh_expand_prologue, sh_expand_epilogue): Use gen_frame_mem.
+ (sh_set_return_address, sh_allocate_initial_value): Likewise.
+ (sh_get_pr_initial_val): Likewise.
+ (sh_builtin_saveregs): Use gen_frame_mem and change_address.
+ (sh_initialize_trampoline): Likewise. Also use adjust_address.
+ * sh.md (divsi_inv_m0): Use gen_const_mem.
+ (push_fpscr, pop_fpscr, load_ra): Use gen_frame_mem.
+ (movdf_i4+1): Use gen_tmp_stack_mem.
+ (reload_outdf+3, reload_outdf+4, fpu_switch+1): Use change_address.
+ (fpu_switch+2): Likewise.
+ (movv4sf_i, movv16sf_i): Use adjust_address.
+ (symGOT_load): Set MEM_NOTRAP_P bit.
+
+2005-09-04 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/23721
+ * pa.c (emit_move_sequence): Fix typo in last change.
+
+2005-09-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/23454
+ * reorg.c (relax_delay_slots): Only call invert_jump if any_condjump_p
+ is true.
+
+2005-09-03 Richard Henderson <rth@redhat.com>
+ John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR middle-end/23671
+ pa.c (emit_move_sequence): Use replace_equiv_address instead of
+ gen_rtx_MEM.
+
+2005-09-02 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/arm.c (arm_legitimize_address): Limit the value passed
+ to bit_count to 32 bits.
+
+2005-08-31 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/23167
+ * gimplify.c (gimplify_expr): Handle TREE_ADDRESSABLE types when
+ generating synthetic loads from volatile lvalues.
+
+005-09-02 Nick Clifton <nickc@redhat.com>
+
+ * config/stormy16/stormy16-lib2.c (__popcounthi2, __parityhi2,
+ __ctzhi2, __clzhi2): New functions.
+
+2005-09-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/23547
+ * tree-nested.c (struct var_map_elt): Mark with GTY.
+ (struct nesting_info): Mark with GTY. Mark var_map's param is struct
+ var_map_elt.
+ (lookup_field_for_decl): Allocate new element in GC memory.
+ (lookup_tramp_for_decl): Likewise.
+ (convert_nl_goto_reference): Likewise
+ (create_nesting_tree): Allocate info in GC memory. Likewise for
+ info->var_map.
+ (free_nesting_tree): Free with ggc_free instead of free.
+ (root): New static variable.
+ (lower_nested_functions): Remove root as local variable. And zero out
+ root at the end of the function.
+
+2005-09-02 J"orn Rennecke <joern.rennecke@st.com>
+
+ PR rtl-optimization/20365
+ * simplify-rtx.c (simplify_plus_minus_op_data): Change type of neg
+ to short. New member ix.
+ (simplify_plus_minus_op_data_cmp): Break ties using ix member.
+ (simplify_plus_minus): Initialize ix members before calling qsort.
+
+2005-09-02 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/23626
+ * tree-cfg.c (replace_uses_by): Clean up eh info.
+
+2005-09-01 DJ Delorie <dj@redhat.com>
+
+ * config/m32c/m32c.c (m32c_valid_pointer_mode): Remove stray debug
+ fprintf.
+
+2005-09-01 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (setup_incoming_varargs): Set MEM_NOTRAP_P.
+ (rs6000_split_multireg_move): Use replace_equiv_address instead of
+ gen_rtx_MEM.
+
+2005-09-01 Craig Rodrigues <rodrigc@gcc.gnu.org>
+
+ * c-decl.c (diagnose_mismatched_decls): With -Wredundant-decls,
+ do not issue warning for a variable definition following
+ a declaration.
+
+2005-09-01 Richard Henderson <rth@redhat.com>
+
+ PR 23668
+ * config/i386/i386.c (ix86_expand_vector_init_one_var): Restore
+ conversion to CONST_VECTOR.
+
+2005-09-01 Richard Henderson <rth@redhat.com>
+
+ PR 23676
+ * reload1.c (reload_as_needed): Check !CALL_P before calling
+ fixup_eh_region_note.
+ * rtlanal.c (may_trap_p): SUBREG by itself cannot trap.
+
+2005-09-01 DJ Delorie <dj@redhat.com>
+
+ * varasm.c (output_constant): Let the target resolve
+ conversions of addresses to non-default pointer sizes.
+
+2005-09-01 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/arm.c (arm_legitimize_address): Split absolute addresses
+ to alow matching ARM pre-indexed addressing mode.
+ (arm_override_options): Remove now irrelevant comment.
+
+2005-09-01 Phil Edwards <phil@codesourcery.com>
+
+ * config.gcc (i*86-wrs-vxworks): Update. Split out vxworksae target.
+ * config/i386/t-vxworks: Update multilibs for VxWorks 6 and RTP mode.
+ * config/i386/vxworks.h: Likewise.
+ * config/i386/t-vxworksae: New file, for VxWorks AE.
+ * config/i386/vxworksae.h: Likewise.
+
+2005-09-01 Sebastian Pop <pop@cri.ensmp.fr>
+
+ PR tree-optimization/23410
+ * tree-ssa-loop-niter.c (scev_probably_wraps_p): Check that the
+ sequence is not wrapping during the first step.
+
+2005-09-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/7241
+ * dwarf2out.c (base_type_die): Compare char_type_node with
+ TYPE_MAIN_VARIANT (type), not type.
+
+2005-09-01 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/15366
+ * common.opt: Add -finline-functions-called-once.
+ Put -fearly-inlining in alphabetically ordered place.
+ * doc/invoke.texi: Document new option.
+ * ipa-inline.c (cgraph_decide_inlining): Honour
+ flag_inline_functions_called_once.
+
+2005-09-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/23478
+ * local-alloc.c (struct qty): Add n_throwing_calls_crossed field.
+ (alloc_qty): Initialize it.
+ (update_equiv_regs): Clear REG_N_THROWING_CALLS_CROSSED.
+ (combine_regs): Combine also n_throwing_calls_crossed fields.
+ (find_free_reg): Don't attempt to caller-save pseudos crossing
+ calls that might throw.
+ * global.c (struct allocno): Add throwing_calls_crossed field.
+ (global_alloc): Revert 2005-08-22 change. Initialize
+ throwing_calls_crossed.
+ (find_reg): Don't attempt to caller-save pseudos crossing calls that
+ might throw.
+
+2005-09-01 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/23649
+ * config/rs6000/predicates.md (mask_operand): Only handle rlwinm masks.
+ (mask64_operand): Reinstate code prior to 2005-06-11 change.
+ (mask64_2_operand): Reinstate code prior to 2004-11-11 change.
+ (and64_2_operand): Tweak to use predicate.
+ (and_operand): Adjust for mask_operand changes.
+ * config/rs6000/rs6000.c (num_insns_constant): Revert 2005-06-11.
+ (print_operand): Likewise.
+ (rs6000_rtx_costs): Pass mode to mask_operand and use mask64_operand.
+ (mask64_1or2_operand): Delete.
+ * rs6000/rs6000-protos.h (mask64_1or2_operand): Delete.
+ * config/rs6000/rs6000.h (EXTRA_CONSTRAINT <S>): Revert 2005-06-11.
+ (EXTRA_CONSTRAINT <T>): Pass operand mode to predicate.
+ (EXTRA_CONSTRAINT <t>): Disallow mask64_operand matches.
+ * config/rs6000/rs6000.md (andsi3_internal3 split): Revert 2005-06-11.
+ (rotldi3_internal4): Likewise.
+ (rotldi3_internal5, rotldi3_internal5 split): Likewise.
+ (rotldi3_internal6, rotldi3_internal6 split): Likewise.
+ (ashldi3_internal7): Likewise.
+ (ashldi3_internal8, ashldi3_internal8 split): Likewise.
+ (ashldi3_internal, ashldi3_internal9 split): Likewise.
+ (anddi3 split): Don't match mask64_operand.
+ (anddi3_internal2): Add rlwinm. Modify 't' splitter predicate.
+ (anddi3_internal3): Add rlwinm. Use and64_2_operand in non-cr0
+ splitter and match TARGET_64BIT not TARGET_POWERPC64. Modify
+ 't' splitter predicate.
+ (movdi_internal64 + 2): Revert 2005-06-11 change.
+
+2005-08-31 DJ Delorie <dj@redhat.com>
+
+ * config/m32c/m32c.c (m32c_valid_pointer_mode): New.
+ (m32c_asm_integer): Add support for 32 bit pointers.
+
+2005-08-31 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Look through
+ component-like references for setting MEM_NOTRAP_P.
+
+ * config/i386/i386.c (ix86_setup_incoming_varargs): Set MEM_NOTRAP_P.
+ * config/alpha/alpha.c (alpha_setup_incoming_varargs): Likewise.
+
+2005-08-31 Richard Henderson <rth@redhat.com>
+
+ * expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Force subregs
+ into a pseudo before applying gen_lowpart.
+
+2005-08-31 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/install.texi (Specific): Update cctools version required
+ for full functionality.
+ * config/darwin.h (LINK_SPEC): Pass -mmacosx-version-min to the
+ linkers as -macosx_version_min.
+
+2005-08-31 J"orn Rennecke <joern.rennecke@st.com>
+
+ PR target/21255
+ * sh.c (print_operand, %R and %S): Add handling of floating point
+ registers, memory, constants and invalid operands.
+
+2005-08-31 Daniel Berlin <dberlin@dberlin.org>
+
+ * ipa-pure-const.c: Change dump name.
+
+2005-08-31 Uros Bizjak <uros@kss-loka.si>
+
+ PR target/23570
+ * config/i386/sse.md (*sse_concatv2sf): Change operand 2 constraint
+ to "reg_or_0_operand".
+ (sse2_loadld): Change operand 1 constraint to "reg_or_0_operand".
+
+2005-08-31 Dale Johannesen <dalej@apple.com>
+
+ * loop-iv.c (iv_number_of_iterations): Fix overflow check for
+ loops that count down.
+
+2005-08-31 Richard Henderson <rth@redhat.com>
+
+ PR rtl-opt/23601
+ * reload1.c (reload): Set MEM_NOTRAP_P in spill slots.
+ (fixup_eh_region_note): New.
+ (reload_as_needed): Call it.
+ (fixup_abnormal_edges): Allow all throwing insns to be deleted;
+ don't call find_many_sub_basic_blocks; call verify_flow_info.
+ * function.c (assign_stack_local_1): Set MEM_NOTRAP_P.
+ (keep_stack_depressed): Likewise.
+ (assign_stack_temp_for_type): Likewise; use adjust_address_nv.
+
+2005-08-31 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix test for
+ fp return matching.
+
+2005-08-31 Fariborz Jahanian <fjahanian@apple.com>
+
+ * expr.c (expand_expr_real_1): Compare size of address
+ mode to target's address mode size in deciding expansion of
+ the constant address.
+
+2005-08-31 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/23477
+ * expr.c (all_zeros_p): New function.
+ (expand_expr_real_1): Handle the case of an all-zero
+ non-addressable constructor separately.
+
+2005-08-31 Adrian Straetling <straetling@de.ibm.com>
+
+ * builtins.c: (expand_builtin_strcpy, expand_builtin_strcat): Change
+ arguments, adjust all callers.
+ (expand_builtin_strcat): Rewrite to call strcpy instead of mempcpy.
+
+2005-08-30 Richard Henderson <rth@redhat.com>
+
+ PR target/23630
+ * expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Use gen_lowpart
+ whenever the mode sizes match.
+
+2005-08-31 Alan Modra <amodra@bigpond.net.au>
+
+ * calls.c (load_register_parameters): Fix comment typo.
+ * expr.c (emit_push_insn): Comment formatting.
+
+2005-08-30 Ian Lance Taylor <ian@airs.com>
+
+ * config/i386/x-cygwin (host-cygwin): Change dependency from
+ hosthooks-def.h to $(HOSTHOOKS_DEF_H).
+
+2005-08-29 Geoffrey Keating <geoffk@apple.com>
+
+ * config/i386/i386.c (ix86_expand_vector_init_one_var): Don't modify
+ parts of 'vals'.
+
+2005-08-29 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/23408
+ * ipa-inline.c (cgraph_decide_inlining_incrementally): Remove the
+ call to ggc_collect.
+
+2005-08-29 Paolo Bonzini <bonzini@gnu.org>
+
+ PR bootstrap/21268
+ * Makefile.in (ALL_CPPFLAGS): Include $(INCLUDES) at the
+ beginning. Remove $(INCLUDES) from all the rules, if following
+ $(ALL_CPPFLAGS) or $(BUILD_CPPFLAGS).
+
+2005-08-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/23484
+ * builtins.c (fold_builtin_memory_chk, fold_builtin_stxcpy_chk,
+ fold_builtin_strncpy_chk, fold_builtin_snprintf_chk): If len is
+ not constant, but maxlen is, don't set len to maxlen, rather
+ set maxlen to len if len is a constant.
+
+2005-08-29 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/23475
+ * tree-ssa-loop-ivcanon.c (remove_empty_loop): Update frequencies
+ and counts.
+
+2005-08-28 Daniel Berlin <dberlin@dberlin.org>
+
+ Fix PR middle-end/22455
+
+ * fold-const.c (fold_checksum_tree): Adjust for now-largest tree size.
+ Checksum only the parts of the tree that exist for the tree code.
+
+2005-08-28 Dale Johannesen <dalej@apple.com>
+
+ * config/i386/i386.c (nocona_cost): Increase MOVE_RATIO.
+
+2005-08-28 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * tree-vrp.c: Remove obsolete comment in front of vrp_initialize.
+
+2005-08-28 Richard Henderson <rth@redhat.com>
+
+ * stor-layout.c (finalize_type_size): Revert workaround from 08-26.
+ * tree.c (make_node_stat): Use BITS_PER_UNIT instead of alignment
+ of char_type_node.
+
+2005-08-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR ada/23593
+ * builtins.c (get_memory_rtx): Don't strip nops
+ in between COMPONENT_REFs.
+
+2005-08-27 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/23463
+ * gimplify.c (gimplify_modify_expr_rhs): Remove check for zero sized
+ types.
+ (gimplify_modify_expr): Check for zero sized types and gimplify the
+ rhs and lhs as statements.
+
+2005-08-27 John David Anglin <dave.anflin@nrc-cnrc.gc.ca>
+
+ PR libgcj/23508
+ * pa/linux-unwind.h (pa32_fallback_frame_state): Use r0 slot in frame
+ state for return address column of signal frames.
+
+2005-08-27 David Edelsohn <edelsohn@gnu.org>
+
+ PR target/23539
+ * config/rs6000/rs6000.c (expand_block_clear): Use HImode when
+ bytes >= 2 not bytes == 2.
+ (expand_block_move): Same.
+
+2005-08-27 Richard Guenther <rguenther@suse.de>
+
+ PR target/23575
+ * config/i386/sse.md (sse2_movsd): Add missing closing
+ braces.
+
+2005-08-27 Paul Brook <paul@codesourcery.com>
+
+ * genrecog.c (enum decision_type): Add DT_num_insns.
+ (struct decision_test): Add u.num_insns.
+ (add_to_sequence): Add DT_num_insns test.
+ (maybe_both_true_2, nodes_identical_1): Handle DT_num_insns.
+ (write_cond, debug_decision_2): Ditto.
+ (change_state): Assume peep2_next_insn never fails.
+ Remove "afterward" argument.
+ (write afterward, write_tree): Update to match.
+ * recog.c (peep2_current_count): New variable.
+ (peep2_next_insn): Check it.
+ (peephole2_optimize): Set peep2_current_count.
+ * recog.h (peep2_current_count): Declare.
+
+2005-08-26 Josh Conner <jconner@apple.com>
+
+ PR middle-end/23584
+ * ipa-pure-const.c (check_tree): Check for volatile-ness
+ when considering a dereference.
+
+2005-08-27 Jakub Jelinek <jakub@redhat.com>
+
+ * rtl.h (MEM_IN_STRUCT_P): Fix comment typo.
+
+2005-08-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/23561
+ * builtins.c (get_memory_rtx): Add LEN argument. If MEM_EXPR is
+ a COMPONENT_REF, remove all COMPONENT_REF from MEM_EXPR unless
+ at most LEN bytes long memory fits into the field.
+ (expand_builtin_memcpy, expand_builtin_mempcpy, expand_movstr,
+ expand_builtin_strncpy, expand_builtin_memset, expand_builtin_memcmp,
+ expand_builtin_strcmp, expand_builtin_strncmp): Adjust callers.
+
+2005-08-26 Richard Henderson <rth@redhat.com>
+
+ PR rtl-opt/23560
+ * loop.c (biased_biv_may_wrap_p): New.
+ (maybe_eliminate_biv_1): Use it to suppress non-equality
+ comparison transformations. Delete disabled code.
+
+2005-08-26 Ian Lance Taylor <ian@airs.com>
+
+ * combine.c (make_extraction): Avoid reference outside object.
+
+2005-08-26 J"orn Rennecke <joern.rennecke@st.com>
+
+ * stor-layout.c (finalize_type_size): Restore behaviour for
+ non-aggregate types to the status quo ante of the patch for
+ pr 23467. Document why it matters.
+
+2005-08-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/23506
+ * c-common.c (c_common_nodes_and_builtins): Increase builtin_types
+ array by one element, initialize the BT_LAST element with NULL.
+
+2005-08-26 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (eq<mode>_compare): Only enable when
+ optimizing for size.
+ (plus_eqsi): Same.
+ (compare_plus_eqsi): Same.
+ (plus_eqsi_compare): Same.
+ (neg_eq0<mode>): Same.
+ (neg_eq<mode>): Same.
+
+ * config/rs6000/aix52.h (PROCESSOR_DEFAULT): Change to
+ PROCESSOR_POWER4.
+
2005-08-26 Nick Clifton <nickc@redhat.com>
* config/v850/v850.c (ep_memory_operand): Return FALSE if