+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
+ constantpool_mem_p.
+ (constantpool_operand): New.
+ (move_operand): Disallow sub-word modes for the constant pool.
+ * config/xtensa/xtensa.c (TARGET_SECONDARY_RELOAD): Define.
+ (xtensa_secondary_reload_class): Replace with....
+ (xtensa_secondary_reload): this function. Remove SIGN_EXTEND check.
+ Set icode for sub-word reloads from the constant pool.
+ * config/xtensa/xtensa.h (SECONDARY_INPUT_RELOAD_CLASS): Delete.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): Delete.
+ * config/xtensa/xtensa.md (reload<mode>_literal): New.
+ * config/xtensa/xtensa-protos.h: Update prototypes.
+
+2008-09-05 Joseph Myers <joseph@codesourcery.com>
+
+ * config/mips/mips.h (enum reg_class): Add FRAME_REGS.
+ (REG_CLASS_NAMES): Update.
+ (REG_CLASS_CONTENTS): Update.
+ * config/mips/mips.c (mips_regno_to_class): Use FRAME_REGS instead
+ of ALL_REGS for regs 77 and 78.
+ * function.c (instantiate_virtual_regs_in_insn): Assert that
+ return value of simplify_gen_subreg is not NULL.
+
+2008-09-05 Paolo Bonzini <bonzini@gnu.org>
+
+ * emit-rtl.c (gen_rtvec): Rewrite not using gen_rtvec_v.
+ (gen_rtvec_v): Fix coding standards.
+
+2008-09-04 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (decide_alg): Be more conservative about optimizing for size.
+
+2008-09-04 Ian Lance Taylor <iant@google.com>
+
+ * varasm.c (narrowing_initializer_constant_valid_p): New
+ static function.
+ (initializer_constant_valid_p): Call it.
+
+2008-09-04 Jeff Law <law@redhat.com>
+
+ * fold-const.c (native_encode_real): Fix computation of WORDS.
+ (native_interpret_real): Likewise.
+
+2008-09-04 Janis Johnson <janis187@us.ibm.com>
+
+ * config/rs6000/t-rs6000: Remove target gt-rs6000.h.
+
+2008-09-04 Vladimir Makarov <vmakarov@redhat.com>
+
+ * ira-conflicts.c (process_regs_for_copy): Check insn to check
+ that the cost is already taken into account in ira-costs.c
+
+ * ira-int.h (ira_debug_copy, ira_debug_copies): New.
+
+ * ira-build.c (print_copy, print_copies, ira_debug_copy,
+ ira_debug_copies): New.
+ (ira_bulid): Call print_copies.
+
+ * doc/tm.texi (IRA_COVER_CLASSES): Fix the description.
+
+2008-09-04 Samuel Tardieu <sam@rfc1149.net>
+
+ PR target/32783
+ * config/rs6000/rs6000.c (optimization_options): Remove check of
+ flag_toplevel_order.
+
+2008-09-04 Adam Nemet <anemet@caviumnetworks.com>
+
+ * config/mips/mips.h (ISA_HAS_SEQ_SNE): New macro.
+ * config/mips/mips.c (mips_expand_scc): Also expand seq and sne if
+ second operand is a reg_imm10_operand.
+ * config/mips/mips.md (*seq_<GPR:mode><GPR2:mode>_seq,
+ *sne_<GPR:mode><GPR2:mode>_sne): New patterns.
+ (*seq_<GPR:mode><GPR2:mode>): Rename to
+ *seq_zero_<GPR:mode><GPR2:mode>. Don't match if
+ ISA_HAS_SEQ_SNE.
+ (*seq_<GPR:mode><GPR2:mode>_mips16): Rename to
+ *seq_zero_<GPR:mode><GPR2:mode>_mip16. Don't match if
+ ISA_HAS_SEQ_SNE.
+ (*sne_<GPR:mode><GPR2:mode>): Rename to
+ *sne_zero_<GPR:mode><GPR2:mode>. Don't match if
+ ISA_HAS_SEQ_SNE.
+
+2008-09-04 Adam Nemet <anemet@caviumnetworks.com>
+
+ * config/mips/mips.h (ISA_HAS_EXTS): New macro.
+ * config/mips/mips.md (*ashr_trunc<mode>): Name the pattern
+ combining an arithmetic right shift by more than 31 and a
+ trunction. Don't match for out-of-range shift amounts. Set
+ attribute mode to <MODE>.
+ (*lshr32_trunc<mode>): Name the pattern combining a logical right
+ shift by 32 and and a truncation. Set attribute mode to <MODE>.
+ (*<optab>_trunc<mode>_exts): New pattern for truncated right
+ shifts by less than 32.
+ (extv): Change predicate on first operand to accept registers.
+ Change predicate of the other operands from immediate_operand to
+ const_int_operand. Expand exts when source is a register.
+ (extzv): Change predicate of the constant operands from
+ immediate_operand to const_int_operand.
+ (extzv<mode>): Change predicate of the constant operands from
+ immediate_operand to const_int_operand and no constraint. Also
+ remove mode.
+ (*extzv_trunc<mode>_exts): New pattern.
+
+2008-09-04 Adam Nemet <anemet@caviumnetworks.com>
+
+ * config/mips/mips.h (ISA_HAS_CINS): New macro.
+ * config/mips/mips-protos.h (mask_low_and_shift_p,
+ mask_low_and_shift_len): Declare.
+ * config/mips/mips.c (mask_low_and_shift_p,
+ mask_low_and_shift_len): New functions.
+ (mips_print_operand): Handle new operand prefix "m".
+ * config/mips/mips.md (*cins<mode>): New pattern.
+
+2008-09-04 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * config/bfin/bfin.c (gen_one_bundle): Don't create new nops when
+ optimizing for size.
+
+2008-09-04 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * df-scan.c (df_get_entry_block_def_set): Add STACK_POINTER_REGNUM
+ regardless of epilogue_completed.
+
+2008-09-04 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR middle-end/37359
+ * ira-lives.c (process_bb_node_lives): Check setjmp.
+
+2008-09-04 Richard Sandiford <rdsandiford@googlemail.com>
+
+ PR middle-end/37243
+ * ira-build.c (form_loop_tree): Reverse BB walk.
+ (create_bb_allocnos): Likewise.
+ * ira-lives.c (make_regno_born_and_dead, regs_set): Delete.
+ (mark_reg_store): Rename to...
+ (mark_ref_live): ...this and take a df_ref argument instead of
+ note_stores arguments. Assert that we have a register.
+ (mark_reg_clobber): Delete.
+ (def_conflicts_with_inputs_p): New function.
+ (mark_reg_conflicts): Delete.
+ (mark_reg_death): Rename to...
+ (mark_ref_dead): ...this and take a df_ref argument instead of
+ a register. Assert that we have a register.
+ (process_bb_node_lives): Hoist frequency calculation out of
+ instruction walk. Convert from a forwards scan to a backwards scan.
+ Use DF_REF_USES and DF_REF_DEFS instead of register notes and
+ note_stores. Remove EH_RETURN_DATA_REGNO and regs_set handling.
+ (create_allocno_live_ranges): Don't create regs_set.
+
+2008-09-04 Ian Lance Taylor <iant@google.com>
+
+ * rtl.h (LABEL_REF_NONLOCAL_P): Don't check for REG_LABEL_OPERAND
+ or REG_LABEL_TARGET.
+ * calls.c (emit_library_call_value_1): Use MEM_P rather than
+ comparing MODE with MEM.
+ * gimple.c (gimple_build_predict): Cast END_PREDICTORS before
+ comparing with GF_PREDICT_TAKEN.
+ (gimple_get_lhs): Change code to enum gimple_code.
+ (gimple_set_lhs): Likewise.
+ * ifcvt.c (noce_process_if_block): Correct GET_MODE to GET_CODE.
+ * omp-low.c (find_omp_clause): Change kind parameter to enum
+ omp_clause_code.
+ * tree-flow.h (find_omp_clause): Update declaration.
+ * regrename.c (clear_dead_regs): Change kind parameter to enum
+ reg_note.
+ * reload1.c (eliminate_regs_1): Use REG_NOTE_KIND rather than
+ GET_MODE.
+ * see.c (see_get_extension_data): Change return type to enum
+ entry_type. Change UNKNOWN to NOT_RELEVANT, SIGN_EXTEND to
+ SIGNED_EXTENDED_DEF, ZERO_EXTEND to ZERO_EXTENDED_DEF.
+ (see_gen_normalized_extension): Change extension_code parameter to
+ enum entry_type.
+ (see_seek_pre_extension_expr): Change extension_code to enum
+ entry_type.
+ (see_merge_one_def_extension): Likewise.
+ (see_handle_relevant_defs): Likewise.
+ (see_handle_relevant_uses): Likewise.
+ (see_analyze_one_def): Likewise.
+ * tree-cfg.c (need_fake_edge_p): Compare gimple code with
+ GIMPLE_ASM rather than ASM_EXPR.
+ * tree-ssa-alias.c (is_escape_site): Compare gimple code with
+ GIMPLE_RETURN rather than RETURN_EXPR.
+ * tree-ssa-ccp.c (likely_value): Change code to enum gimple_code.
+ (evaluate_stmt): Likewise.
+ * tree-vect-analyze.c (vect_analyze_operations): Change relevance
+ to enum vect_relevant.
+ (vect_mark_stmts_to_be_vectorized): Change assertion to not
+ compare gimple codes with tree codes.
+
+2008-09-04 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_size_rtx_costs): Call cost function.
+
+2008-09-04 Bernd Schmidt <bernd.schmidt@analog.com>
+
+ * config/bfin/bfin.c (bfin_function_ok_for_sibcall): Restore a null
+ pointer check lost in the recent no-unit-at-a-time patch.
+
+2008-09-04 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/37343
+ * tree-switch-conversion.c (check_final_bb): Accept only IP
+ invariants.
+
+2008-09-04 Jan Hubicka <jh@suse.cz>
+
+ * tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges):
+ Break out from ...
+ (vrp_evaluate_conditional_warnv_with_ops): ... this one. Add
+ using_ranges argument.
+ (vrp_evaluate_conditional): Avoid bogus warning for type range.
+ (vrp_visit_cond_stmt): Update call of
+ vrp_evaluate_conditional_warnv_with_ops
+
+2008-09-04 Jan Hubicka <jh@suse.cz>
+
+ PR tree-optimization/37345
+ PR tree-optimization/37358
+ PR tree-optimization/37357
+ * tree.c (build_function_type_skip_args): Build distinct type copy;
+ set TYPE_CONTEXT.
+ (build_function_decl_skip_args): Set type of new decl not orig decl;
+ clear DECL_VINDEX for methods turned into functions.
+
+2008-09-04 Nick Clifton <nickc@redhat.com>
+
+ * configure.ac (HAVE_GAS_LCOMM_WITH_ALIGNMENT): New assembler
+ check.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * config/i386/bsd.h (ASM_OUTPUT_ALIGNED_LOCAL): Use .lcomm with an
+ alignment field, if it is supported.
+
+2008-09-04 Kai Tietz <kai.tietz@onevision.com>
+
+ * config/i386/t-mingw32 (SHLIB_LC): Change order of import
+ libraries.
+
+2008-09-03 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (processor_target_table): Do not
+ enable VMX for POWER6.
+
+2008-09-03 Anton Blanchard <anton@samba.org>
+
+ * config/rs6000/rs6000.c (rs6000_split_lock_test_and_set): Do not
+ emit memory barrier before operation.
+
2008-09-03 John David Anglin <dave.anglin@nrc.cnrc.gc.ca>
PR testsuite/37325
* passes.c (init_optimization_passes): Exchange store-ccp
with a ccp pass.
-2008-08-19 Rafael Espindola <espindola@google.com>
+2008-08-19 Rafael Espíndola <espindola@google.com>
* varasm.c (weak_decls): Move earlier in the file.
(assemble_external): Add weak decls to the weak_decls list.
PR ada/36554
* dwarf2out.c (is_subrange_type): Deal with BOOLEAN_TYPE.
-2008-07-30 Rafael Avila de Espindola <espindola@google.com>
+2008-07-30 Rafael Ávila de Espíndola <espindola@google.com>
PR 36974
* final.c (call_from_call_insn): Handle COND_EXEC.
* config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Add clause for
vector modes.
-2008-07-30 Rafael Avila de Espindola <espindola@google.com>
+2008-07-30 Rafael Ávila de Espíndola <espindola@google.com>
* final.c (call_from_call_insn): New.
(final_scan_insn): Call assemble_external on FUNCTION_DECLs.
(TARGET_OPTION_PRINT): Ditto.
(TARGET_CAN_INLINE_P): Ditto.
-2008-07-22 Rafael Avila de Espindola <espindola@google.com>
+2008-07-22 Rafael Ávila de Espíndola <espindola@google.com>
* c-typeck.c (build_external_ref): Don't call assemble_external.
* final.c (output_operand): Call assemble_external.
highest magnitude if this is still less or equal to the true
quotient in magnitude.
-2008-07-21 Rafael Avila de Espindola <espindola@google.com>
+2008-07-21 Rafael Ávila de Espíndola <espindola@google.com>
* Makefile.in: Replace toplev.h with TOPLEV_H.
* c-decl.c (merge_decls): Don't set DECL_IN_SYSTEM_HEADER.
(m32c_legitimate_address_p): Handle "++rii" addresses created by
m32c_legitimize_reload_address.
-2007-07-16 Rafael Avila de Espindola <espindola@google.com>
+2007-07-16 Rafael Ávila de Espíndola <espindola@google.com>
* c-decl.c (merge_decls): Keep DECL_SOURCE_LOCATION and
DECL_IN_SYSTEM_HEADER in sync.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Improve comment.
-2007-07-14 Rafael Avila de Espindola <espindola@google.com>
+2007-07-14 Rafael Ávila de Espíndola <espindola@google.com>
* c-decl.c (diagnose_mismatched_decls): Don't warn if TREE_NO_WARNING
is set.
Clear __gcov_indreict_call_callee variable to avoid misattribution
of the profile.
-2008-05-28 Rafael Espindola <espindola@google.com>
+2008-05-28 Rafael Espíndola <espindola@google.com>
* see.c (see_def_extension_not_merged): Use copy_rtx_if_shared to avoid
invalid sharing.
for A24 to PSImode.
(m32c_address_cost): Detail costs for indirect offsets.
-2008-05-23 Rafael Espindola <espindola@google.com>
+2008-05-23 Rafael Espíndola <espindola@google.com>
* see.c (see_get_extension_data): Don't use SUBREG_REG to test
if a node is a SUBREG.
* config/avr/avr.c (get_sequence_length): Add new function.
(expand_prologue, expand_epilogue): Remove duplicate code.
-2008-05-22 Rafael Espindola <espindola@google.com>
+2008-05-22 Rafael Espíndola <espindola@google.com>
* see.c (see_pre_insert_extensions): Use copy_rtx to avoid invalid rtx
sharing.
to one line.
* doc/invoke.texi (Wframe-larger-than=): Add more description.
-2008-05-08 Rafael Espindola <espindola@google.com>
+2008-05-08 Rafael Espíndola <espindola@google.com>
* tree-complex.c (expand_complex_div_wide): Don't create CONDs that
trap.
(evaluate_stmt): Print the likely value.
(ccp_visit_stmt): Avoid excessive vertical spacing.
-2008-04-30 Rafael Espindola <espindola@google.com>
+2008-04-30 Rafael Espíndola <espindola@google.com>
* builtins.c (fold_call_expr): Return realret.
* tree-ssa-threadedge.c
* tree-vect-analyze.c (vect_analyze_group_access): SLP is
incapable of dealing with loads with gaps.
-2008-04-24 Rafael Espindola <espindola@google.com>
+2008-04-24 Rafael Espíndola <espindola@google.com>
* tree-flow.h (vrp_evaluate_conditional): Change signature.
* tree-ssa-propagate.c (fold_predicate_in): Update call to
* Makefile.in (s-gtyp-input): Remove tmp-gi.list before writing it.
-2008-04-18 Rafael Espindola <espindola@google.com>
+2008-04-18 Rafael Espíndola <espindola@google.com>
* tree-vrp.c (find_case_label_index): Fix the binary search.
(find_case_label_range): New.
* c-decl.c (finish_decl): If extern or static var has variable
size, set TREE_TYPE (decl) to error_mark_node.
-2008-04-15 Rafael Espindola <espindola@google.com>
+2008-04-15 Rafael Espíndola <espindola@google.com>
* fold-const.c (tree_call_nonnegative_warnv_p): Remove local
variable arg1.
* config/spu/spu.c (spu_init_builtins): Mark builtins as nothrow.
-2008-04-10 Rafael Espindola <espindola@google.com>
+2008-04-10 Rafael Espíndola <espindola@google.com>
* tree-vrp.c (extract_range_from_binary_expr): Don't handle
TRUTH_ANDIF_EXPR or TRUTH_ORIF_EXPR.
* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Update
GNU Fortran language string.
-2008-04-08 Rafael Espindola <espindola@google.com>
+2008-04-08 Rafael Espíndola <espindola@google.com>
* fold-canst.c (tree_call_nonnegative_warnv_p): New.
(tree_invalid_nonnegative_warnv_p): Use tree_call_nonnegative_warnv_p.
make sure to fill gaps with a fallback label if default_label
is not present.
-2008-04-03 Dominique d'Humieres <dominiq@lps.ens.fr>
+2008-04-03 Dominique d'Humières <dominiq@lps.ens.fr>
PR target/35801
* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Free cfun.
(varying_mem_p): Move above propagate_rtx.
(all_uses_available_at): Do not check MEMs.
-2008-04-02 Rafael Espindola <espindola@google.com>
+2008-04-02 Rafael Espíndola <espindola@google.com>
* tree-vrp.c (extract_code_and_val_from_cond): Remove.
(register_edge_assert_for_2): Split the cond argument.
(*sse4_1_smin<mode>3): Likewise.
(*sse4_1_umin<mode>3): Likewise.
-2008-04-01 Rafael Espindola <espindola@google.com>
+2008-04-01 Rafael Espíndola <espindola@google.com>
* tree-cfg.c (verify_expr): remove in_phi.
(verify_stmt): Don't call walk_tree with verify_expr. Use
PR pch/13675
* c-pch.c (c_common_read_pch): On error close (fd) resp. fclose (f).
-2008-04-01 Rafael Espindola <espindola@google.com>
+2008-04-01 Rafael Espíndola <espindola@google.com>
* tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
(extract_code_and_val_from_cond): Use
vectorization support.
* doc/invoke.texi (-mveclibabi) [svml]: Document new target option.
-2008-03-28 Rafael Espindola <espindola@google.com>
+2008-03-28 Rafael Espíndola <espindola@google.com>
* fold-const.c (tree_unary_nonnegative_warnv_p): Make it public.
(tree_binary_nonnegative_warnv_p): Make it public.
on hpux10.
* configure: Rebuilt.
-2008-03-04 Rafael Espindola <espindola@google.com>
+2008-03-04 Rafael Espíndola <espindola@google.com>
* fold-const.c (tree_simple_nonnegative_warnv_p): New.
(tree_unary_nonnegative_warnv_p): New.
* config/i386/smmintrin.h (SIDD_XXX): Renamed to ...
(_SIDD_XXX): This.
-2008-03-04 Rafael Espindola <espindola@google.com>
+2008-03-04 Rafael Espíndola <espindola@google.com>
* fold-const.c (tree_unary_nonzero_warnv_p): New.
(tree_binary_nonzero_warnv_p): New.