+2008-09-10 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * config/bfin/bfin.c (workaround_speculation): Correct algorithm to
+ not lose track of the number of NOPs needed. Number of NOPs needed
+ for sync vs. loads workaround was switched; corrected. Run second
+ pass for all workarounds. No NOPs needed after call insns. Change
+ second pass to use find_next_insn_start and find_load helpers in order
+ to properly detect parallel insns.
+ * config/bfin/bfin.md (cbranch_with_nops): Increase length.
+
+2008-09-10 Jan Hubicka <jh@suse.cz>
+
+ * value-prof.c (gimple_ic): Fix tuplification bug.
+ * sched-deps.c (sched_insns_conditions_mutex_p): Silence unitialized var
+ warning.
+
+2008-09-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/37353
+ * tree-call-cdce.c (cond_dead_built_in_calls): Remove.
+ (shrink_wrap_conditional_dead_built_in_calls): Add calls argument, use
+ calls instead of cond_dead_built_in_calls.
+ (tree_call_cdce): Add cond_dead_built_in_calls automatic variable,
+ initalize the vector only before adding first entry. Use VEC_safe_push
+ instead of VEC_quick_push. Pass cond_dead_built_in_calls to
+ shrink_wrap_conditional_dead_built_in_calls call.
+
+2008-09-10 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/37385
+ * tree-vect-transform.c (vect_create_data_ref_ptr): Add a new argument,
+ and use it as a vector type if not NULL.
+ (vectorizable_store): Call vect_create_data_ref_ptr with the type of
+ vectorized rhs.
+ (vect_setup_realignment): Call vect_create_data_ref_ptr with additional
+ argument.
+ (vectorizable_load): Likewise.
+
+2008-09-10 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (SWI32): New mode iterator.
+ (jcc_fused_1, jcc_fused_2, jcc_fused_3, jcc_fused_4): Use it instead
+ of SWI.
+
+2008-09-09 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR rtl-optimization/37435
+ * caller-save.c (insert_restore, insert_save): Check the mode by
+ reg_save_code.
+
+2008-09-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR other/37265
+ * dwarf2asm.c (dw2_force_const_mem): Use unstripped symbol name for
+ splay tree lookup.
+ (dw2_output_indirect_constant_1): Use unstripped name in symbol
+ reference.
+
+2008-09-09 Sandra Loosemore <sandra@codesourcery.com>
+
+ * doc/invoke.texi (ARM Options): Correct errors in discussion
+ of -mfloat-abi, -mhard-float, and -msoft-float.
+
+2008-09-09 Jakub Jelinek <jakub@redhat.com>
+ Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/37356
+ * tree-inline.c (copy_bb): Insert stmt into copy_basic_block before
+ calling gimple_regimplify_operands on it. Iterate over all newly
+ added statements, not just the last one.
+ (insert_init_stmt): Insert stmt into seq first, then call
+ gimple_regimplify_operands on it. Don't create new gimplification
+ context, nor find referenced vars.
+
+2008-09-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/37419
+ * ipa-prop.h (ipa_propagate_indirect_call_infos): Change last argument
+ to pointer to vector pointer.
+ * ipa-prop.c (ipa_propagate_indirect_call_infos,
+ propagate_info_to_inlined_callees): Likewise.
+ (update_call_notes_after_inlining): Likewise. Push new indirect edge
+ to *new_edges instead of new_edges. Reread IPA_EDGE_REF after
+ ipa_check_create_edge_args.
+ * ipa-inline.c (cgraph_decide_recursive_inlining): Change last argument
+ to pointer to vector pointer.
+ (cgraph_decide_inlining_of_small_function): Adjust
+ cgraph_decide_recursive_inlining and ipa_propagate_indirect_call_infos
+ calls.
+
+ PR target/37438
+ * config/i386/i386.md (zero_extendqihi2_movzbl): Enable when optimizing
+ for size, not speed.
+
+ PR rtl-optimization/37408
+ * function.c (assign_parm_find_stack_rtl): Set correct MEM_SIZE
+ if parm is promoted.
+
+2008-09-09 Sebastian Pop <sebastian.pop@amd.com>
+
+ PR tree-optimization/37375
+ * tree-scalar-evolution.c (scev_info_str): Add field instantiated_below.
+ (new_scev_info_str, eq_scev_info, find_var_scev_info,
+ set_scalar_evolution, get_scalar_evolution, get_instantiated_value,
+ set_instantiated_value): Pass instantiated_below.
+ (analyze_scalar_evolution_1, analyze_scalar_evolution): Update calls to
+ above functions.
+ (instantiate_scev_1, instantiate_scev): Pass a basic block above which the
+ definitions are not instantiated.
+
+ * tree-scalar-evolution.h (instantiate_scev): Update declaration.
+ (block_before_loop): New.
+ * tree-data-ref.c (dr_analyze_indices): Update uses of instantiate_scev.
+ * graphite.c (block_before_scop): New.
+ (loop_affine_expr, stmt_simple_for_scop_p, harmful_stmt_in_bb): Pass a
+ basic block, not a loop for determining the parameters.
+ (scopdet_edge_info, build_scops_1): Do not pass outermost loop in the
+ scop.
+ (idx_record_params, find_params_in_bb, find_scop_parameters,
+ build_loop_iteration_domains, add_conditions_to_domain): Update calls
+ to instantiate_scev.
+
+ * Makefile.in (cfgloopmanip.o): Add missing dependency on TREE_FLOW_H.
+
+2008-09-09 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR rtl-opt/37333
+
+ * ira-build.c (ira_create_allocno): Setup frequency to 0.
+
+ * ira-color.c (update_conflict_hard_regno_costs): Remove assert.
+ Check zero freq and increase if necessary.
+
+2008-09-09 Vladimir Makarov <vmakarov@redhat.com>
+
+ * ira-conflicts.c (process_regs_for_copy): Check that the hard
+ regno is in the right range. Add comments.
+
+2008-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in (mips-tfile.o-warn): Don't error out on mips-tfile.c
+ warnings.
+ * mips-tfile.c (copy_object): Cast alloca result to int *.
+ * mips-tdump.c (print_symbol): Cast xmalloc return values to
+ proper types.
+ Rename class to sclass.
+ (read_tfile): Cast read_seek return values to proper types.
+ Cast xcalloc return value to proper type.
+
+2008-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/sol2.h (REGISTER_TARGET_PRAGMAS): Move ...
+ * config/i386/sol2.h (REGISTER_SUBTARGET_PRAGMAS): ... here.
+ * config/sparc/sol2.h (REGISTER_TARGET_PRAGMAS): ... and here.
+
+2008-09-09 Jan Hubicka <jh@suse.cz>
+
+ * profile.c (is_edge_inconsistent): Add debug output; ignore negative count
+ on fake edges.
+ (is_inconsistent): Add debug output.
+
+2008-09-09 Andrey Belevantsev <abel@ispras.ru>
+
+ * haifa-sched.c (advance_one_cycle): Do not print '\n' before printing
+ dump message.
+ (choose_ready): When first insn is chosen from the ready list, also
+ dump it.
+
+2008-09-09 Andrey Belevantsev <abel@ispras.ru>
+
+ PR rtl-optimization/37360
+ * haifa-sched.c (max_issue): Do not assert that we never issue more
+ insns than issue_rate. Add comment.
+
+2008-09-09 Richard Guenther <rguenther@suse.de>
+
+ * tree-cfg.c (verify_types_in_gimple_op): Remove.
+ (verify_types_in_gimple_call): Rename to ...
+ (verify_gimple_call): ... this. Enhance.
+ (verify_types_in_gimple_cond): Remove.
+ (verify_gimple_comparison): New function ...
+ (verify_types_in_gimple_assign): ... split out from here.
+ (verify_types_in_gimple_return): Rename to ...
+ (verify_gimple_return): ... this. Enhance.
+ (verify_types_in_gimple_switch): Rename to ...
+ (verify_gimple_switch): ... this. Enhance.
+ (verify_gimple_goto): New function.
+ (verify_types_in_gimple_phi): Rename to ...
+ (verify_gimple_phi): ... this. Enhance.
+ (verify_types_in_gimple_stmt): Adjust calls to helper functions.
+ Fold in single-statement cases from verify_types_in_gimple_seq_2.
+ (verify_types_in_gimple_seq_2): Remove cases handled in
+ verify_types_in_gimple_stmt.
+
+2008-09-09 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * config/bfin/bfin.c (n_regs_to_save): New static variable.
+ (push_multiple_operation, pop_multiple_operation): Set it.
+ (workaround_rts_anomaly): New function.
+ (workaround_speculation): New function, broken out of bfin_reorg.
+ (bfin_reorg): Call the new functions.
+
+2008-09-09 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/37354
+ PR middle-end/30165
+ * gimplify.c (gimplify_conversion): Change conversions of
+ non-register type to VIEW_CONVERT_EXPRs.
+ (gimplify_addr_expr): If we need to make the operand
+ addressable make sure to use a properly initialized
+ temporary for that so it gets a valid gimple store.
+
+2008-09-09 Aldy Hernandez <aldyh@redhat.com>
+
+ * function.h (struct function): Add function_start_locus.
+ * cfgexpand.c (gimple_expand_cfg): Use it.
+ * c-parser.c (c_parser_declaration_or_fndef): Set it.
+
+2008-09-09 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/37433
+ * tree-ssa-ccp.c (ccp_fold): Properly guard folding of
+ function calls.
+
+2008-09-09 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/37387
+ * tree-ssa-ifcombine.c (ifcombine_iforif): Convert the name
+ and bits to a common type.
+
+2008-09-09 Nick Clifton <nickc@redhat.com>
+
+ * config/v850/v850.md (return): Restore frame size restriction.
+
+2008-09-09 Paolo Bonzini <bonzini@gnu.org>
+
+ * c-common.c (c_expand_decl): Remove.
+ * c-common.h (anon_aggr_type_p): Remove prototype.
+ (DECL_ANON_UNION_ELEMS): Remove.
+ * c-objc-common.h (LANG_HOOKS_EXPAND_DECL): Remove.
+ * c-decl.c (anon_aggr_type_p): Remove.
+ * langhooks-def.h (LANG_HOOKS_EXPAND_DECL): Remove.
+ (LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_EXPAND_DECL.
+ * langhooks.h (struct lang_hooks): Remove expand_decl.
+ * langhooks.c (lhd_expand_decl): Remove.
+ * stmt.c (expand_anon_union_decl): Remove.
+ * tree.h (expand_anon_union_decl): Remove prototype.
+
+2008-08-09 Andy Hutchinson <hutchinsonandy@aim.com>
+
+ PR target/36609
+ * config/avr/avr.c (avr_reorg): Create RTL for reversed compare with
+ zero.
+ * config/avr/avr.md (QISI) : Define mode iterator.
+ (negated_tst<mode>) : Redefine as split using mode macro.
+ (reversed_tstqi): Define insn as reversed compare with zero.
+ (reversed_tsthi): Ditto.
+ (reversed_tstsi): Ditto.
+
+2008-09-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/37393
+ * tree-inline.c (copy_bb): When replacing a gimple_call_va_arg_pack_p
+ call stmt by new_call, clear gimple_bb on stmt after gsi_replace.
+
+ PR middle-end/37414
+ * predict.c (optimize_function_for_size_p): Don't segfault if
+ FUN is NULL.
+ * fold-const.c (LOGICAL_OP_NON_SHORT_CIRCUIT, fold_truthop,
+ tree_swap_operands_p): Don't test cfun != NULL before calling
+ optimize_function_for_s*_p.
+
+2008-09-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * ira-color.c (ira_reuse_stack_slot): Set slot_num on success at the
+ end of the search.
+
+2008-09-08 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
+
+ * crx/crx.h (IRA_COVER_CLASSES): Define.
+
+2008-09-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/37337
+ * tree-ssa-dom.c (optimize_stmt): Call maybe_clean_or_replace_eh_stmt
+ even when a stmt has been gimple_modified_p, but after fold_stmt is
+ not any longer. Remove unneeded may_have_exposed_new_symbols
+ initializations.
+
+2008-09-08 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/37421
+ * tree-ssa-sccvn.c (visit_copy): Make sure to fully
+ valueize the RHS.
+
+2008-09-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/37415
+ * opts.c (common_handle_option): Handle OPT_ftree_store_ccp.
+
+2008-09-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR driver/37409
+ * pa-hpux.h (LINK_SPEC): Strip -fwhole-program.
+ * pa-hpux10.h (LINK_SPEC): Likewise.
+ * pa-hpux11.h (LINK_SPEC): Likewise.
+
+2008-09-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa32-regs.h (IRA_COVER_CLASSES): Define.
+ * pa64-regs.h (IRA_COVER_CLASSES): Define.
+
+2008-09-07 Helge Deller <deller@gmx.de>
+
+ * pa/linux-atomic.c: New file.
+ * pa/t-linux (LIB2FUNCS_STATIC_EXTRA): Define.
+ * pa/t-linux64 (LIB2FUNCS_STATIC_EXTRA): Define.
+
+2008-09-07 Richard Guenther <rguenther@suse.de>
+ Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/36630
+ * tree-vect-transform.c (vect_update_ivs_after_vectorizer):
+ Call STRIP_NOPS before calling evolution_part_in_loop_num.
+
+2008-09-07 Dorit Nuzman <dorit@il.ibm.com>
+ Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/35642
+ * config/rs6000/altivec.md (mulv8hi3): Implement.
+
+2008-09-06 Jeff Law <law@redhat.com>
+
+ * h8300/h8300.h (IRA_COVER_CLASSES): Define.
+
+2008-09-06 Jan Hubicka <jh@suse.cz>
+
+ PR tree-optimization/14703
+ * tree-ssa-live.c (remove_unused_scope_block_p): Remove ignored declarations.
+ * passes.c (init_optimization_passes): Recompute inline parameters.
+
+2008-09-06 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/mips/mips.c (mips_function_ok_for_sibcall): Check for
+ DECL being null.
+
+2008-09-06 Richard Sandiford <rdsandiford@goolemail.com>
+ Peter Fuerst <post@pfrst.de>
+
+ * doc/invoke.texi: Document -mr10k-cache-barrier=.
+ * doc/extend.texi: Document __builtin_mips_cache.
+ * config/mips/mips-ftypes.def: Add a (VOID, SI, CVPOINTER) entry.
+ * config/mips/mips.opt (mr10k-cache-barrier=): New option.
+ * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define
+ __GCC_HAVE_BUILTIN_MIPS_CACHE.
+ (TARGET_CACHE_BUILTIN, ISA_HAS_CACHE): New macros.
+ * config/mips/mips.c (mips_r10k_cache_barrier_setting): New enum.
+ (set_push_mips_isas): New variable.
+ (mips_r10k_cache_barrier): New variable.
+ (cache): New availability predicate.
+ (mips_builtins): Add an entry for __builtin_mips_cache.
+ (mips_build_cvpointer_type): New function.
+ (MIPS_ATYPE_CVPOINTER): New macro.
+ (mips_prepare_builtin_arg): Only use the insn's mode if the rtx's
+ mode is VOIDmode.
+ (r10k_simplified_address_p, r10k_simplify_address)
+ (r10k_uncached_address_p, r10k_safe_address_p)
+ (r10k_needs_protection_p_1, r10k_needs_protection_p_store)
+ (r10k_needs_protection_p_call, r10k_needs_protection_p)
+ (r10k_insert_cache_barriers): New functions.
+ (mips_reorg_process_insns): Delete cache barriers after a
+ branch-likely instruction.
+ (mips_reorg): Call r10k_insert_cache_barriers.
+ (mips_handle_option): Handle OPT_mr10k_cache_barrier_.
+ * config/mips/mips.md (UNSPEC_MIPS_CACHE): New constant.
+ (UNSPEC_R10K_CACHE_BARRIER): Likewise.
+ (mips_cache, r10k_cache_barrier): New define_insns.
+
+2008-09-06 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * ira-int.h (ira_zero_hard_reg_set, ira_one_hard_reg_set): Delete.
+ * ira-color.c (setup_allocno_left_conflicts_num): Use
+ hard_reg_set_equal_p instead of a comparison with
+ ira_zero_hard_reg_set.
+ * ira.c (setup_reg_subclasses): Likewise.
+ (setup_cover_and_important_classes): Likewise.
+ (setup_class_translate): Likewise.
+ (setup_reg_class_intersect_union): Likewise.
+ (ira_zero_hard_reg_set, ira_one_hard_reg_set): Delete.
+ (ira_init_once): Don't initialize them.
+
+2008-09-05 Vladimir Makarov <vmakarov@redhat.com>
+
+ * doc/tm.texi (IRA_COVER_CLASSES): Fix a typo.
+
+2008-09-05 Vladimir Makarov <vmakarov@redhat.com>
+
+ * ira-color.c (ira_fast_allocation): Permit global allocno
+ allocation.
+
+2008-09-05 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
+
+ Improved branch hints, safe hints, and scheduling.
+
+ * haifa-sched.c (sched_emit_insn) : Define.
+ * sched-int.h (sched_emit_insn) : Add prototype.
+ * doc/invoke.texi (-mdual-nops, -mhint-max-nops,
+ -mhint-max-distance -msafe-hints) : Document.
+ * config/spu/spu.c (spu_flag_var_tracking): New.
+ (TARGET_SCHED_INIT_GLOBAL, TARGET_SCHED_INIT,
+ TARGET_SCHED_REORDER, TARGET_SCHED_REORDER2,
+ TARGET_ASM_FILE_START): Define.
+ (TARGET_SCHED_ADJUST_PRIORITY): Remove.
+ (STOP_HINT_P, HINTED_P, SCHED_ON_EVEN_P): Define.
+ (spu_emit_branch_hint): Add blocks argument.
+ (insert_branch_hints, insert_nops): Remove.
+ (pad_bb, insert_hbrp_for_ilb_runout, insert_hbrp, in_spu_reorg,
+ uses_ls_unit, spu_sched_init_global, spu_sched_init,
+ spu_sched_reorder, asm_file_start): New functions.
+ (clock_var, spu_sched_length, pipe0_clock,
+ pipe1_clock, prev_clock_var, prev_priority,
+ spu_ls_first, prev_ls_clock): New static variables.
+ * config/spu/spu.h (TARGET_DEFAULT): Add MASK_SAFE_HINTS.
+ * config/spu.md (iprefetch): Add operand, make it clobber MEM.
+ (nopn_nv): Add a non-volatile version of nop.
+ * config/spu/spu.opt (-mdual-nops, -mhint-max-nops,
+ -mhint-max-distance, -msafe-hints): New options.
+
+2008-09-05 Janis Johnson <janis187@us.ibm.com>
+ Samuel Tardieu <sam@rfc1149.net>
+
+ * opts.c (decode_options): Combine nested if statements.
+
+ PR target/37283
+ * opts.c (decode_options): Handle more relationships among
+ unit-at-a-time, toplevel-reorder, and section-anchors.
+
+2008-09-05 David Daney <ddaney@avtrex.com>
+
+ * doc/install.texi (--enable-reduced-reflection): Document new option.
+
2008-09-05 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/predicates.md (nonimmed_operand, mem_operand): Use