+2015-07-25 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (ix86_va_start): Remove
+ unneeded !TARGET_64BIT check.
+ (ix86_gimplify_va_arg): Ditto.
+
+2015-07-24 Tom de Vries <tom@codesourcery.com>
+
+ * graphite-sese-to-poly.c (build_poly_scop): Always call
+ rewrite_commutative_reductions_out_of_ssa.
+
+2015-07-24 Tom de Vries <tom@codesourcery.com>
+
+ * graphite-sese-to-poly.c (is_reduction_operation_p): Limit
+ flag_associative_math to FLOAT_TYPE_P. Honour
+ TYPE_OVERFLOW_WRAPS for INTEGRAL_TYPE_P. Don't allow any other types.
+
+2015-07-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+ PR c++/64079
+ * toplev.c (check_global_declaration): Use DECL_SOURCE_LOCATION
+ and "%qD" in warning_at instead of "%q+D" in warning.
+
+2015-07-24 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (ix86_call_abi_override): Call ix86_function_abi.
+ (ix86_function_abi): Cleanup.
+
+2015-07-24 Michael Darling <darlingm@gmail.com>
+
+ PR other/66259
+ * acinclude.m4: Reflects renaming of configure.in to configure.ac
+ * configure: Likewise
+ * configure.ac: Likewise
+ * doc/install.texi: Likewise
+ * doc/tm.texi: Likewise
+ * doc/tm.texi.in: Likewise
+
+2015-07-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * alias.c (nonoverlapping_memrefs_p): Use std::swap instead of
+ manually swapping values.
+ * cse.c (fold_rtx): Likewise.
+ * lra-eliminations.c (form_sum): Likewise.
+
+2015-07-24 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/64003
+ * config/i386/i386.h (ADJUST_INSN_LENGTH): New define.
+ * config/i386/i386.md (maybe_prefix_bnd): New attribute.
+ (*jcc_1, *jcc_2, jump, simple_return_internal)
+ (simple_return_pop_internal): Set attribute maybe_prefix_bnd.
+ Set length_nobnd attribute instead of length attribute.
+ (indirect_jump, *tablejump_1): Set attribute maybe_prefix_bnd.
+ (length_nobnd): Remove attribute.
+ (length): Remove length_nobnd processing.
+
+2015-07-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gimplify.c (omp_default_clause): New function. Reorganize flow
+ for clarity. Broken out of ...
+ (omp_notice_variable): ... here.
+
+2015-07-24 Gary Funck <gary@intrepid.com>
+
+ PR middle-end/66984
+ * fold-const.c (fold_binary_loc): Call fold_convert on arguments to
+ fold_build2 for CEIL_DIV_EXPR and FLOOR_DIV_EXPR optimization.
+
+2015-07-24 Tom de Vries <tom@codesourcery.com>
+
+ * tree-parloops.c (gen_parallel_loop): Add debug print for alternative
+ exit-first loop transform.
+
+2015-07-24 Cesar Philippidis <cesar@codesourcery.com>
+
+ PR 66714
+ * tree-cfg.c (struct replace_decls_d): New struct.
+ (replace_block_vars_by_duplicates_1): New function.
+ (replace_block_vars_by_duplicates): Use it to replace the decls
+ in the value exprs by duplicates.
+
+2015-07-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ * config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Handle -h, -static,
+ -shared, -symbolic, -rdynamic.
+
+2015-07-24 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ PR target/65711
+ * config/aarch64/aarch64-linux.h (LINUX_TARGET_LINK_SPEC): Move
+ -dynamic-linker within %{!static %{!shared, and -rdynamic within
+ %{!static.
+
+2015-07-24 Ilya Enkovich <enkovich.gnu@gmail.com>
+
+ PR ipa/66566
+ * ipa-inline-analysis.c (estimate_calls_size_and_time): Check
+ edge summary is available.
+
+2015-07-24 Richard Biener <rguenther@suse.de>
+
+ * genmatch.c (struct dt_node): Add statistic fields.
+ (dt_node::analyze): New method.
+ (decision_tree::gen_gimple): Call analyze on the root node
+ and print statistics to stderr.
+ (decision_tree::gen_generic): Likewise.
+
+2015-07-24 Richard Biener <rguenther@suse.de>
+
+ * fold-const.c (fold_binary_loc): Move simplifying of comparisons
+ against the highest or lowest possible integer ...
+ * match.pd: ... as patterns here.
+
+2015-07-24 Richard Biener <rguenther@suse.de>
+
+ * genmatch.c (struct capture_info): Add same_as field.
+ (capture_info::capture_info): Initialize same_as.
+ (capture_info::walk_match): Compute same_as.
+ (capture_info::walk_result): Compute stuff for the leader.
+ (capture_info::walk_c_expr): Likewise.
+ (dt_simplify::gen_1): Only look at leaders when deciding
+ to force no side-effects or emit side-effects of omitted operands.
+
+2015-07-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * config/s390/s390.c (s390_save_gprs_to_fprs): Add CFA_REGISTER
+ reg note to the GPR -> FPR save instructions.
+
+2015-07-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * config/s390/s390.c (s390_rtx_costs): Make risbg patterns
+ cheaper.
+ (s390_expand_insv): Don't generate risbg pattern for constant zero
+ sources.
+ * config/s390/s390.md ("*insv<mode>_zEC12_appendbitsleft")
+ ("*insv<mode>_z10_appendbitsleft"): New pattern definitions. New
+ splitters.
+
+2015-07-24 Dominik Vogt <vogt@linux.vnet.ibm.com>
+
+ * config/s390/s390.c (s390_reorg): Clean up handling of processors
+ with
+ -mtune=
+ (s390_issue_rate): Likewise.
+ (s390_sched_reorder): Likewise.
+ (s390_sched_variable_issue): Likewise.
+ (s390_loop_unroll_adjust): Likewise.
+ (s390_option_override): Likewise.
+
+2015-07-24 Dominik Vogt <vogt@linux.vnet.ibm.com>
+
+ * config/s390/driver-native.c (s390_host_detect_local_cpu): Handle
+ processor capabilities with -march=native.
+ * config/s390/s390.h (MARCH_MTUNE_NATIVE_SPECS): Likewise.
+ (DRIVER_SELF_SPECS): Likewise. Join specs for 31 and 64 bit.
+ (S390_TARGET_BITS_STRING): Macro to simplify specs.
+
+2015-07-24 Dominik Vogt <vogt@linux.vnet.ibm.com>
+
+ * config/s390/s390.c (s390_issue_rate): Handle
+ PROCESSOR_2094_Z9_EC.
+ (s390_option_override): Likewise.
+ (s390_adjust_priority): Likewise.
+
+2015-07-24 Dominik Vogt <vogt@linux.vnet.ibm.com>
+
+ * config/s390/s390.h: S390: Do not define EXTRA_SPEC_FUNCTIONS
+ when cross compiling.
+
+2015-07-24 Richard Biener <rguenther@suse.de>
+
+ * fold-const.c (maybe_canonicalize_comparison_1): Move
+ A code CST canonicalization ...
+ * match.pd: ... to a pattern here.
+
+2015-07-24 Jiong Wang <jiong.wang@arm.com>
+
+ Revert:
+ 2015-07-22 Jiong Wang <jiong.wang@arm.com>
+ PR target/63521
+ * config/aarch64/aarch64.h (REG_ALLOC_ORDER): Define.
+ (HONOR_REG_ALLOC_ORDER): Define.
+
+2015-07-24 Richard Biener <rguenther@suse.de>
+
+ * genmatch.c (add_operator): Allow SSA_NAME as predicate.
+ * fold-const.c (fold_comparison): Move parameter does not
+ alias &local simplification ...
+ * match.pd: ... as a pattern here.
+
+2015-07-24 Richard Biener <rguenther@suse.de>
+
+ * gimple-fold.c (replace_stmt_with_simplification): Special-case
+ valueizing call operands.
+ * gimple-match-head.c (maybe_push_res_to_seq): Take
+ number of call arguments from ops array.
+ (do_valueize): New function.
+ (gimple_simplify): Return true if valueization changed
+ any operand even if the result didn't simplify further.
+
+2015-07-24 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
+
+ PR middle-end/25530
+ * match.pd (mult (trunc_div @0 integer_pow2p@1) @1) : New simplifier.
+
+2015-07-24 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
+
+ PR middle-end/25529
+ * match.pd (trunc_div (mult @0 integer_pow2p@1) @1) : New simplifier.
+
+2015-07-23 Kugan Vivekanandarajah <kuganv@linaro.org>
+
+ * config/arm/arm.c (arm_emit_movpair): Add REG_EQUAL notes to
+ instruction.
+
+2015-07-23 Kugan Vivekanandarajah <kuganv@linaro.org>
+
+ * cse.c (cse_insn): Fix missing check for STRICT_LOW_PART and minor
+ clean up.
+
+2015-07-23 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (ix86_build_builtin_va_list_64): Rename
+ from ix86_build_builtin_va_list_abi. Handle only 64bit non-MS_ABI
+ targets here.
+ (ix86_build_builtin_va_list): Rewrite sysv_va_list_type_node and
+ ms_va_list_type_node initialization.
+
+2015-07-23 Jeff Law <law@redhat.com>
+
+ PR lto/66752
+ * tree-ssa-threadedge.c (simplify_conrol_stmt_condition): If we are
+ unable to find X NE 0 in the tables, return X as the simplified
+ condition.
+ (fsm_find_control_statement_thread_paths): If nodes in NEXT_PATH are
+ in VISISTED_BBS, then return failure. Else add nodes from NEXT_PATH
+ to VISISTED_BBS. */
+ * tree-ssa-threadupdate.c (duplicate_thread_path): Fix up edge flags
+ after removing the control flow statement and unnecessary edges.
+
+2015-07-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ * tree-pass.h (get_current_pass_name): Removed.
+
+2015-07-23 Alexandre Oliva <aoliva@redhat.com>
+
+ PR rtl-optimization/64164
+ * Makefile.in (OBJS): Drop tree-ssa-copyrename.o.
+ * tree-ssa-copyrename.c: Removed.
+ * opts.c (default_options_table): Drop -ftree-copyrename. Add
+ -ftree-coalesce-vars.
+ * passes.def: Drop all occurrences of pass_rename_ssa_copies.
+ * common.opt (ftree-copyrename): Ignore.
+ (ftree-coalesce-inlined-vars): Likewise.
+ * doc/invoke.texi: Remove the ignored options above.
+ * gimple-expr.h (gimple_can_coalesce_p): Move declaration
+ * tree-ssa-coalesce.h: ... here.
+ * tree-ssa-uncprop.c: Include tree-ssa-coalesce.h and other
+ headers required by it.
+ * gimple-expr.c (gimple_can_coalesce_p): Allow coalescing
+ across variables when flag_tree_coalesce_vars. Check register
+ use and promoted modes to allow coalescing. Moved to
+ tree-ssa-coalesce.c.
+ * tree-ssa-live.c (struct tree_int_map_hasher): Move along
+ with its member functions to tree-ssa-coalesce.c.
+ (var_map_base_init): Likewise. Renamed to
+ compute_samebase_partition_bases.
+ (partition_view_normal): Drop want_bases parameter.
+ (partition_view_bitmap): Likewise.
+ * tree-ssa-live.h: Adjust declarations.
+ * tree-ssa-coalesce.c: Include explow.h.
+ (build_ssa_conflict_graph): Process PARM_ and RESULT_DECLs's
+ default defs at the entry point.
+ (dump_part_var_map): New.
+ (compute_optimized_partition_bases): New, called by...
+ (coalesce_ssa_name): ... when flag_tree_coalesce_vars, instead
+ of compute_samebase_partition_bases. Adjust.
+ * alias.c (nonoverlapping_memrefs_p): Disregard gimple-regs.
+ * cfgexpand.c (leader_merge): New.
+ (get_rtl_for_parm_ssa_default_def): New.
+ (set_rtl): Merge exprs and attrs, even for MEMs and non-SSA
+ vars. Update DECL_RTL for PARM_DECLs and RESULT_DECLs too.
+ (expand_one_stack_var_at): Handle anonymous SSA_NAMEs. Drop
+ redundant MEM attr setting.
+ (expand_one_stack_var_1): Handle anonymous SSA_NAMEs. Renamed
+ from...
+ (expand_one_stack_var): ... this. New wrapper to check and
+ skip already expanded SSA partitions.
+ (record_alignment_for_reg_var): New, factored out of...
+ (expand_one_var): ... this.
+ (expand_one_ssa_partition): New.
+ (adjust_one_expanded_partition_var): New.
+ (expand_one_register_var): Check and skip already expanded SSA
+ partitions.
+ (expand_used_vars): Don't create DECLs for anonymous SSA
+ names. Expand all SSA partitions, then adjust all SSA names.
+ (pass::execute): Replace the loops that set
+ SA.partition_to_pseudo from partition leaders and cleared
+ DECL_RTL for multi-location variables, and that which used to
+ rename vars and set attrs, with one that clears DECL_RTL and
+ checks that PARMs and RESULTs default_defs match DECL_RTL.
+ * cfgexpand.h (get_rtl_for_parm_ssa_default_def): Declare.
+ * emit-rtl.c (set_reg_attrs_for_parm): Handle NULL decl.
+ * explow.c (promote_ssa_mode): New.
+ * explow.h (promote_ssa_mode): Declare.
+ * expr.c (expand_expr_real_1): Handle anonymous SSA_NAMEs.
+ * function.c: Include cfgexpand.h.
+ (use_register_for_decl): Handle SSA_NAMEs, anonymous or not.
+ (use_register_for_parm_decl): Wrapper for the above to
+ special-case the result_ptr.
+ (rtl_for_parm): Ditto for get_rtl_for_parm_ssa_default_def.
+ (split_complex_args): Take assign_parm_data_all argument.
+ Pass it to rtl_for_parm. Set up rtl and context for split
+ args.
+ (assign_parms_augmented_arg_list): Adjust.
+ (maybe_reset_rtl_for_parm): Reset DECL_RTL of parms with
+ multiple locations. Recognize split complex args.
+ (assign_parm_adjust_stack_rtl): Add all and parm arguments,
+ for rtl_for_parm. For SSA-assigned parms, zero stack_parm.
+ (assign_parm_setup_block): Prefer SSA-assigned location.
+ (assign_parm_setup_reg): Likewise. Use entry_parm for equiv
+ if stack_parm is NULL.
+ (assign_parm_setup_stack): Prefer SSA-assigned location.
+ (assign_parms): Maybe reset DECL_RTL of params. Adjust stack
+ rtl before testing for pointer bounds. Special-case result_ptr.
+ (expand_function_start): Maybe reset DECL_RTL of result.
+ Prefer SSA-assigned location for result and static chain.
+ Factor out DECL_RESULT and SET_DECL_RTL.
+ * tree-outof-ssa.c (insert_value_copy_on_edge): Handle
+ anonymous SSA names. Use promote_ssa_mode.
+ (get_temp_reg): Likewise.
+ (remove_ssa_form): Adjust.
+ * stor-layout.c (layout_decl): Don't set mem attributes of
+ non-MEMs.
+ * var-tracking.c (dataflow_set_clear_at_call): Take call_insn
+ and get its reg_usage for reg invalidation.
+ (compute_bb_dataflow): Pass it insn.
+ (emit_notes_in_bb): Likewise.
+
+2015-07-23 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR target/66217
+ * config/rs6000/rs6000-protos.h (rs6000_emit_2insn_and): Change
+ prototype.
+ * config/rs6000/rs6000.c (rs6000_emit_dot_insn): New function.
+ (rs6000_emit_2insn_and): Handle dot forms.
+ * config/rs6000/rs6000.md (and<mode>3): Adjust.
+ (*and<mode>3_2insn): Remove TODO. Adjust. Add "type" attr.
+ (*and<mode>3_2insn_dot, *and<mode>3_2insn_dot2): New.
+
+2015-07-23 Richard Biener <rguenther@suse.de>
+
+ * generic-match-head.c: Include cgraph.h.
+ * gimple-match-head.c: Likewise.
+ * tree-ssa-sccvn.c (free_scc_vn): Guard against newly created
+ SSA names.
+ * fold-const.c (fold_binary_loc): Move &A ==/!= &B simplification...
+ * match.pd: ...to a pattern here. Add &A ==/!= 0 simplification
+ pattern.
+
+2015-07-23 Richard Biener <rguenther@suse.de>
+
+ * gimple-fold.c (fold_gimple_cond): Do not require folding
+ results to pass valid_gimple_rhs_p.
+ * tree-cfg.h (fold_cond_expr_cond): Remove.
+ * tree-cfg.c (fold_cond_expr_cond): Likewise.
+ (make_edges): Do not call it.
+ * tree-inline.c (tree_function_versioning): Likewise.
+
+2015-07-23 Tom de Vries <tom@codesourcery.com>
+
+ * tree-parloops.c (gather_scalar_reductions): Add arg to call to
+ vect_force_simple_reduction.
+ * tree-vect-loop.c (vect_analyze_scalar_cycles_1): Same.
+ (vect_is_simple_reduction_1): Add and handle
+ need_wrapping_integral_overflow parameter.
+ (vect_is_simple_reduction, vect_force_simple_reduction): Add and pass
+ need_wrapping_integral_overflow parameter.
+ (vectorizable_reduction): Add arg to call to vect_is_simple_reduction.
+ * tree-vectorizer.h (vect_force_simple_reduction): Add parameter to
+ decl.
+
+2015-07-23 Yuri Rumyantsev <ysrumyan@gmail.com>
+
+ PR tree-optimization/66926,66951
+ * tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Delete
+ INNER_LOOP and fix up condition for renaming virtual operands.
+
+2015-07-23 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * combine.c (try_combine): Use std::swap instead of manually
+ swapping.
+
+2015-07-23 Prachi Godbole <prachi.godbole@imgtec.com>
+
+ * config/mips/i6400.md: New file.
+ * config/mips/mips-cpus.def (mips32r6): Change to PROCESSOR_I6400.
+ (mips64r6): Likewise.
+ (i6400): Define.
+ * config/mips/mips-tables.opt: Regenerate.
+ * config/mips/mips.c (mips_rtx_cost_data): Add I6400 processor.
+ (mips_issue_rate): Add support for i6400.
+ (mips_multipass_dfa_lookahead): Likewise.
+ * config/mips/mips.h (TUNE_I6400): Define.
+ * config/mips/mips.md: Include i6400.md.
+ (processor): Add i6400.
+ * doc/invoke.texi (-march=@var{arch}): Add i6400.
+
+2015-07-23 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/66916
+ * match.pd: Guard widen and sign-change comparison simplification
+ with single_use.
+
+2015-07-23 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/66945
+ * tree-ssa-propagate.c (substitute_and_fold_dom_walker
+ ::before_dom_children): Force the propagators idea of
+ non-executable edges to materialize, not what the folder
+ chooses.
+
+2015-07-23 Richard Biener <rguenther@suse.de>
+
+ * gimple.h (gimple_cond_make_false): Use 0 != 0.
+ (gimple_cond_make_true): Use 1 != 0.
+
+2015-07-22 DJ Delorie <dj@redhat.com>
+
+ * config/msp430/t-msp430 (MULTILIB_DIRNAMES): Remove trailing
+ slashes.
+
+ * config/msp430/msp430.md (ashlhi3): Optimize shifts of subregs.
+ (ashrhi3): Likewise.
+ (lshrhi3): Likewise.
+ (movhi): Take advantage of zero-extend to load small constants.
+ (movpsi): Likewise.
+ (and<mode>3): Likewise.
+ (zero_extendqihi2): Likewise.
+ (zero_extendqisi2): New.
+ * config/msp430/constraints.md (N,O): New.
+ * config/msp430/msp430.h (WORD_REGISTER_OPERATIONS): Define.
+
+2015-07-22 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/66954
+ * config/i386/i386.c (get_builtin_code_for_version): Add P_AES
+ to enum feature_priority and feature_list.
+ (fold_builtin_cpu): Add F_AES to enum processor_features
+ and isa_names_table.
+
+2015-07-22 Ilya Enkovich <enkovich.gnu@gmail.com>
+
+ PR driver/66737
+ * config/i386/linux-common.h (MPX_SPEC): Use linker option
+ for 64bit target only.
+
+2015-07-22 Bernd Schmidt <bernds@codesourcery.com>
+
+ * config/nvptx/nvptx.c: Expand some comments.
+
+2015-07-22 James Greenhalgh <james.greenhalgh@arm.com>
+
+ * config/arm/cortex-a53 (cortex_53_advsimd): Rename to...
+ (cortex_a53_advsimd): ...This.
+
+2015-07-22 Richard Biener <rguenther@suse.de>
+
+ * genmatch.c (expr::gen_transform): Clarify error message
+ and display location.
+
+2015-07-22 Richard Biener <rguenther@suse.de>
+
+ * genmatch.c (struct operand): Add location member.
+ (predicate, expr, c_expr, capture, if_expr, with_expr): Adjust
+ constructors.
+ (struct simplify): Remove match_location and result_location
+ members.
+ (elsehwere): Adjust.
+
+2015-07-22 Prachi Godbole <prachi.godbole@imgtec.com>
+
+ * config/mips/m5100.md: New file.
+ * config/mips/mips-cpus.def (m5100, m5101): Define.
+ * config/mips/mips-tables.opt: Regenerate.
+ * config/mips/mips.c (mips_rtx_cost_data): Add costs for m5100.
+ * config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Map -march=m5100 and
+ -march=m5101 to -mips32r5.
+ (MIPS_ARCH_FLOAT_SPEC): Map -m5101 to -msoft-float.
+ (MIPS_ISA_NAN2008_SPEC): Map -march=m51* to -mnan=2008 if
+ !-msoft-float.
+ * config/mips/mips.md: Include m5100.md.
+ (processor): Add m5100.
+ * doc/invoke.texi (-march=@var{arch}): Add m5100, m5101.
+
2015-07-22 Robert Suchanek <robert.suchanek@imgtec.com>
* config/mips/mips-cpus.def (interaptiv): Define.