+2016-10-12 Nathan Sidwell <nathan@acm.org>
+
+ * diagnostic.c (diagnostc_report_diagnostic): Fix formatting.
+
+2016-10-12 Pierre-Marie de Rodat <derodat@adacore.com>
+
+ * dwarf2out.c (int_loc_descriptor): Generate opcodes for another
+ equivalent 32-bit constant (modulo 2**32) when that yields
+ smaller instructions.
+ (size_of_int_loc_descriptor): Update accordingly.
+
+2016-10-12 Pierre-Marie de Rodat <derodat@adacore.com>
+
+ * dwarf2out.c (dwarf2out_early_global_decl): For nested
+ functions, call dwarf2out_decl on the parent function first.
+
+2016-10-12 Richard Biener <rguenther@suse.de>
+
+ * match.pd ((X /[ex] A) * A -> X): Remove unnecessary constraint
+ on the conversion.
+
+2016-10-12 Richard Biener <rguenther@suse.de>
+
+ * tree-ssa-propagate.c
+ (substitute_and_fold_dom_walker::before_dom_children): Do not
+ ignore ASSERT_EXPRs but only preserve them.
+ * tree-vrp.c (remove_range_assertions): Deal with ASSERT_EXPRs
+ that have been propagated into.
+ (vrp_finalize): Enable DCE for substitute_and_fold.
+
+2016-10-12 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/77920
+ * tree-vrp.c (simplify_div_or_mod_using_ranges): Simplify.
+ (simplify_min_or_max_using_ranges): Pass in gsi and use it.
+ (simplify_abs_using_ranges): Likewise.
+ (simplify_conversion_using_ranges): Likewise.
+ (simplify_stmt_using_ranges): Adjust.
+
+2016-10-12 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/77929
+ * tree-ssa-reassoc.c (optimize_range_tests_var_bound): Handle
+ (*ops)[ranges[i].idx]->op != ranges[i].exp case.
+
+2016-10-12 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
+
+ PR target/77934
+ * config/rs6000/vmx.md (vsx_concat_<mode>): The mtvsrdd instruction
+ needs a base register for arg 1.
+
+2016-10-12 Jakub Jelinek <jakub@redhat.com>
+
+ * common.opt (Wimplicit-fallthrough) Turn into alias to
+ -Wimplicit-fallthrough=3. Remove EnabledBy.
+ (Wimplicit-fallthrough=): New option.
+ * gimplify.c (warn_implicit_fallthrough_r): Use
+ OPT_Wimplicit_fallthrough_ instead of OPT_Wimplicit_fallthrough.
+ * doc/invoke.texi (-Wimplicit-fallthrough): Document as alias
+ to -Wimplicit-fallthrough=3.
+ (-Wimplicit-fallthrough=): Document.
+
+2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/sparc/sparc.c (emit_scc_insn): Remove direct support for EQ
+ and GEU in DImode if TARGET_SUBXC.
+ * config/sparc/sparc.md (seqdi<W:mode>_zero): Remove TARGET_SUBXC.
+ (seqdi<W:mode>_zero_subxc): Delete.
+ (neg_seqdi<W:mode>_zero): Remove TARGET_VIS3.
+ (neg_seqdi<W:mode>_zero_vis3): Delete.
+ (plus_seqdi<W:mode>_zero): Likewise.
+ (minus_seqdi<W:mode>_zero): Likewise.
+ (plus_plus_sltu<W:mode>): Accept only register.
+ (addx<W:mode>): Likewise.
+ (plus_sltu<W:mode>_vis3): Likewise.
+ (plus_plus_sltu<W:mode>_vis3): Likewise.
+ (neg_sgeu<W:mode>_vis3): Delete.
+ (minus_sgeu<W:mode>_vis3): Likewise.
+ (addxc<W:mode>): Accept only registers.
+ (neg_sltu<W:mode>_subxc): Write %%g0 instead of 0.
+ (minus_neg_sltu<W:mode>_subxc): Accept only register.
+ (neg_plus_sltu<W:mode>_subxc): Likewise.
+ (minus_sltu<W:mode>_subxc): Write %%g0 instead of 0.
+ (minus_minus_sltu<W:mode>_subxc): Accept only register.
+ (sgeu<W:mode>_insn_subxc): Delete.
+ (plus_sgeu<W:mode>_subxc): Likewise.
+ (subxc<W:mode>): Accept only register.
+ (scc splitter): Split always GEU again.
+
+2016-10-11 Jeff Law <law@redhat.com>
+
+ PR tree-optimization/77424
+ * tree-ssa-threadupdate.c (thread_through_all_blocks): Remove
+ dead conditionals. Assert that all e->aux fields are NULL.
+
+2016-10-11 David Malcolm <dmalcolm@redhat.com>
+
+ * print-rtl.c (print_rtx): Rename "i" to "idx". Split out the
+ operand-printing "switch" statement into...
+ (print_rtx_operand_code_0): ...this new function, ...
+ (print_rtx_operand_code_e): ...this new function, ...
+ (print_rtx_operand_codes_E_and_V): ...this new function, ...
+ (print_rtx_operand_code_i): ...this new function, ...
+ (print_rtx_operand_code_r): ...this new function, ...
+ (print_rtx_operand_code_u): ...this new function, ...
+ (print_rtx_operand): ...and this new function.
+
+2016-10-11 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/alpha/alpha-passes.def: New file.
+ * config/alpha/t-alpha: New file.
+ * config/alpha/alpha-protos.h (gcc::context, rtl_opt_pass): Declare.
+ (make_pass_handle_trap_shadows): New prototype.
+ (make_pass_align_insns): Ditto.
+ * config/alpha/alpha.c (alpha_option_override): Don't register
+ passes here.
+ * config.gcc (alpha*-*-*) Add alpha/t-alpha to tmake_file.
+
+2016-10-11 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ PR target/77924
+ * config/rs6000/rs6000.c (rs6000_init_builtins): Only create the
+ distinct __ibm128 IBM extended double type if long doubles are
+ 128-bits and the default format for long double is IEEE 128-bit.
+
+2016-10-11 Richard Biener <rguenther@suse.de>
+
+ * dwarf2out.c (DEBUG_STR_OFFSETS_SECTION): Remove conditional.
+ (init_sections_and_labels): Use DEBUG_DWO_STR_OFFSETS_SECTION.
+ (verify_die): New function.
+ (dwarf2out_finish): Call it.
+ (output_line_info): Handle case of -gsplit-dwarf without
+ DWARF2_ASM_LINE_DEBUG_INFO.
+
+2016-10-11 Richard Biener <rguenther@suse.de>
+
+ PR debug/77931
+ * gimple-low.c (lower_gimple_bind): Handle arbitrary common
+ sub-chains of BLOCK_VARS and gimple_bind_vars.
+
+2016-10-11 Venkataramanan Kumar <Venkataramanan.kumar@amd.com>
+
+ * config/i386/znver1.md : Fix imov/imovx load type reservations.
+
+2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/sparc/sparc.opt (msubxc): New option.
+ * doc/invoke.texi (SPARC options): Document it and tidy up.
+ * doc/tm.texi.in (Condition Codes): Adjust SPARC example.
+ * doc/tm.texi: Regenerate.
+ * config/sparc/sparc-modes.def (CC_NOOV): Rename into...
+ (CCNZ): ...this.
+ (CCX_NOOV): Rename into...
+ (CCXNZ): ...this.
+ (CCC): New.
+ (CCXC): Likewise.
+ * config/sparc/predicates.m (fcc_register_operand): Simplify.
+ (fcc0_register_operand): Likewise.
+ (icc_register_operand): New.
+ (icc_or_fcc_register_operand): Simplify.
+ (nz_comparison_operator): New.
+ (c_comparison_operator): Likewise.
+ (noov_compare_operator): Rename into...
+ (icc_comparison_operator): ...this. Use above predicates.
+ (noov_compare64_operator): Rename into...
+ (v9_comparison_operator): ...this and tidy up.
+ (fcc_comparison_operator): New.
+ (icc_or_fcc_comparison_operator): Likewise.
+ (v9_register_compare_operator): Rename info...
+ (v9_register_comparison_operator): ...this.
+ * config/sparc/sparc.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
+ (sparc_option_override): Remove redundant VIS masks and add MASK_SUBXC
+ for Niagara-7.
+ (sparc_fixed_condition_code_regs): New function.
+ (select_cc_mode): Remove ATTRIBUTE_UNUSED. Adjust for CCNZ/CCXNZ
+ renaming and add support for CCC/CCXC.
+ (output_cbranch): Likewise.
+ (sparc_print_operand): Likewise.
+ (gen_v9_scc): Remove obsolete assertion.
+ (emit_scc_insn): Emit RTL directly for EQ and NE. Add direct support
+ for EQ in DImode if TARGET_SUBXC. Remove test on TARGET_VIS3 for GEU.
+ (output_cbcond): Remove bogus handling of CC modes.
+ (sparc_register_move_cost): Return 100 for NO_REGS.
+ * config/sparc/sparc.md (W): New mode iterator.
+ (length): Adjust for noov_compare64_operator renaming.
+ (cmpsi_sne): New instruction.
+ (cmpdi_sne): Likewise.
+ (seqdi_special): Delete.
+ (seqdi_special): Likewise.
+ (snesi<P:mode>_special): Likewise.
+ (snedi_special): Likewise.
+ (snedi_special_vis3): Likewise.
+ (snesi patterns): Use W iterator.
+ (snedi patterns): Likewise. Add TARGET_SUBXC patterns.
+ (sltu patterns): Likewise.
+ (sgeu patterns): Likewise.
+ (scc splitter): Do not split GEU in DImode if TARGET_SUBXC.
+ (normal_branch): Use icc_comparison_operator predicate.
+ (inverted_branch): Likewise.
+ (cbcond_sp32): Use comparison_operator predicate.
+ (cbcond_sp64): Likewise.
+ (normal_int_branch_sp64): Adjust for renaming
+ (inverted_int_branch_sp64): Likewise.
+ (mov<I:mode>_cc_reg_sp64): Likewise.
+ (movsf_cc_reg_sp6): Likewise.
+ (movdf_cc_reg_sp64): Likewise.
+ (movtf_cc_reg_hq_sp64): Likewise.
+ (movtf_cc_reg_sp64): Likewise.
+ (mov<I:mode>_cc_v9): Use icc_or_fcc_comparison_operator predicate.
+ (movsf_cc_v9): Likewise.
+ (movdf_cc_v9): Likewise.
+ (movtf_cc_hq_v9): Likewise.
+ (movtf_cc_v9): Likewise.
+ (adddi3): Call gen_adddi3_sp32.
+ (adddi3_insn_sp32): Rename to...
+ (adddi3_sp32): ...this. Accept only register_operand as operand #1
+ and use CCCmode for the carry.
+ (addx_extend_sp32): Use CCCmode for the carry.
+ (addx_extend_sp64): Delete.
+ (adddi3_extend_sp32): Use CCCmode for the carry.
+ (cmp_plus patterns): Use CCNZ/CCXNZ mode and add C variants.
+ (subdi3): Call gen_subdi3_sp32.
+ (subdi3_insn_sp32): Rename to...
+ (subdi3_sp32): ...this and use CCmode for the carry.
+ (subx_extend_sp32): Use CCCmode for the carry.
+ (subx_extend_sp64): Delete.
+ (subdi3_extend_sp32): Use CCmode for the carry.
+ (cmp_minus patterns): Use CCNZ/CCXNZ mode and add C variants.
+ (negdi3): Call gen_negdi3_sp32.
+ (negdi3_sp32): Use CCCmode for the carry.
+ (cmp_neg patterns): Use CCNZ/CCXNZ mode and add C variants.
+ (cmp_nz_ashift_1): Use CCNZ mode.
+ (cmp_nz_set_ashift_1): Likewise.
+ (ctrapsi4): Use comparison_operator predicate.
+ (ctrapdi4): Likewise.
+ (trapsi_insn): Use icc_comparison_operator predicate.
+ (trapdi_insn): Likewise.
+ (edge8 patterns): Use CCNZmode.
+ (edge16 patterns): Likewise.
+ (edge32 patterns): Likewise.
+
+2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/visium/visium-modes.def (CC_NOOV): Rename into...
+ (CCNZ): ...this.
+ (CC_BTST): Rename into...
+ (CCC): ...this.
+ * config/visium/predicates.md (real_add_operand): New.
+ (visium_btst_operator): Rename into...
+ (visium_equality_comparison_operator): ...this.
+ (visium_noov_operator): Rename into...
+ (visium_nz_comparison_operator): ...this.
+ (visium_c_comparison_operator): New.
+ (visium_branch_operator): Adjust and deal with all CC modes.
+ * config/visium/visium.c (visium_adjust_cost): Adjust.
+ (visium_split_double_add): Use the *_set_carry patterns.
+ (visium_select_cc_mode): Add support for CCC mode and adjust.
+ (output_cbranch): Adjust and use the carry-based operators for
+ floating-point comparisons.
+ * config/visium/visium.md (flags_subst_arith): Adjust.
+ (addsi3_insn_set_carry): New instruction.
+ (subsi3_insn_set_carry): Likewise.
+ (negsi2_insn_set_carry): Likewise.
+ (btst): Adjust.
+ (cmp<mode>_sne): Likewise.
+ (cbranch<mode>4): Use ordered_comparison_operator.
+ (cbranch<mode>4_insn): Likewise.
+ (cbranchsi4_btst_insn): Adjust.
+
+2016-10-11 Tom de Vries <tom@codesourcery.com>
+
+ PR middle-end/77558
+ * builtins.c (std_canonical_va_list_type): Remove RECORD_TYPE
+ special-casing.
+
+2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree.h (build_complex_type): Add second parameter with default.
+ * tree.c (build_complex_type): Add NAMED second parameter and adjust
+ recursive call. Create a TYPE_DECL only if NAMED is true.
+ (build_common_tree_nodes): Pass true in calls to build_complex_type.
+
+2016-10-11 Georg-Johann Lay <avr@gjlay.de>
+
+ New avr-passes.def to register AVR specific passes.
+
+ * config/avr/avr-passes.def: New file.
+ * config/avr/t-avr (PASSES_EXTRA): Add avr-passes.def.
+ * config/avr/avr-protos.h (gcc::context, rtl_opt_pass): Declare.
+ (make_avr_pass_recompute_note): New proto.
+ * config/avr/avr.c (make_avr_pass_recompute_notes): New function.
+ (avr_pass_recompute_notes): Use anonymous namespace.
+ (avr_register_passes): Remove function...
+ (avr_option_override): ...and its call.
+
+2016-10-11 Robert Suchanek <robert.suchanek@imgtec.com>
+
+ * config/mips/mips-cpus.def: Replace PTF_AVOID_BRANCHLIKELY with
+ PTF_AVOID_BRANCHLIKELY_ALWAYS for generic architecture and with
+ PTF_AVOID_BRANCHLIKELY_SPEED for others.
+ (mips2, mips3, mips4): Add PTF_AVOID_BRANCHLIKELY_SIZE to tune
+ flags.
+ * config/mips/mips.c (mips_option_override): Enable the branch
+ likely depending on the tune flags and optimization level.
+ * config/mips/mips.h (PTF_AVOID_BRANCHLIKELY): Remove.
+ (PTF_AVOID_BRANCHLIKELY_SPEED): Define.
+ (PTF_AVOID_BRANCHLIKELY_SIZE): Likewise.
+ (PTF_AVOID_BRANCHLIKELY_ALWAYS): Likewise.
+
+2016-10-11 Richard Biener <rguenther@suse.de>
+
+ * lto-streamer-out.c (collect_block_tree_leafs): New helper.
+ (output_function): Properly stream the whole block tree.
+ * lto-streamer-in.c (input_function): Likewise.
+
+2016-10-11 Marek Polacek <polacek@redhat.com>
+
+ * Makefile.in (C_COMMON_OBJS): Add c-family/c-warn.o.
+
+2016-10-11 Kugan Vivekanandarajah <kuganv@linaro.org>
+
+ * tree-vrp.c (evrp_dom_walker::try_add_new_range): New.
+ (evrp_dom_walker::before_dom_children): Infer and push new value
+ ranges for x in y < x.
+
+2016-10-10 Joseph Myers <joseph@codesourcery.com>
+
+ PR target/77586
+ * config/ia64/ia64.c (ia64_libgcc_floating_mode_supported_p)
+ (TARGET_LIBGCC_FLOATING_MODE_SUPPORTED_P): Remove.
+ * config/ia64/elf.h (IA64_NO_LIBGCC_TFMODE): Likewise.
+ * config/ia64/freebsd.h (IA64_NO_LIBGCC_TFMODE): Likewise.
+ * config/ia64/vms.h (IA64_NO_LIBGCC_XFMODE)
+ (IA64_NO_LIBGCC_TFMODE): Likewise.
+
+2016-10-11 Kugan Vivekanandarajah <kuganv@linaro.org>
+
+ * tree-vrp.c (vrp_intersect_ranges_1): Allocate bitmap before
+ copying.
+
+2016-10-10 Andreas Tobler <andreast@gcc.gnu.org>
+
+ * config.gcc: Add aarch64-*-freebsd* support.
+ * config.host: Likewise.
+ * config/aarch64/aarch64-freebsd.h: New file.
+ * config/aarch64/t-aarch64-freebsd: Ditto.
+
+2016-10-10 Jeff Law <law@redhat.com>
+
+ PR tree-optimization/71947
+ * tree-ssa-dom.c (cprop_into_stmt): Avoid replacing A with B, then
+ B with A within a single statement.
+
+2016-10-10 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
+
+ PR tree-optimization/77824
+ * gimple-ssa-strength-reduction.c (stmt_cost): Explicitly return
+ zero cost for copies.
+ (find_candidates_dom_walker::before_dom_children): Replace
+ MODIFY_EXPR with SSA_NAME.
+ (replace_mult_candidate): Likewise.
+ (replace_profitable_candidates): Likewise.
+
+2016-10-10 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
+ * config/s390/s390.h: Wrap more macros args in brackets and fix
+
+2016-10-10 Georg-Johann Lay <avr@gjlay.de>
+
+ * config/avr/gen-avr-mmcu-texi.c (string.h): Include.
+
+2016-10-10 Andreas Schwab <schwab@suse.de>
+
+ PR target/77738
+ * config/ia64/ia64.md ("doloop_end"): Reject if mode of loop
+ pseudo is not DImode.
+
+2016-10-10 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * common/config/arc/arc-common.c (arc_option_optimization_table):
+ Remove compact casesi option.
+ * config/arc/arc.c (arc_override_options): Use compact casesi
+ option only for pre-ARCv2 cores.
+ * doc/invoke.texi (mcompact-casesi): Update text.
+
+2016-10-09 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
+
+ * config/rs6000/rs6000.h (TARGET_EFFICIENT_OVERLAPPING_UNALIGNED):
+ Add macro to say we can efficiently handle overlapping unaligned
+ loads.
+ * config/rs6000/rs6000.c (expand_block_compare): Avoid generating
+ poor code for processors older than p8.
+
+2016-10-09 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gen-pass-instances.awk: Remove GNUism.
+
+2016-10-09 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
+
+ * ipa-prop.c (ipcp_transform_function): Set fields m_vr and bits to
+ NULL of (*ipcp_transformations)][node->uid].
+
+2016-10-09 John David Anglin <danglin@gcc.gnu.org>
+
+ * config/pa/pa.h (BIGGEST_ALIGNMENT): Adjust comment.
+ (MALLOC_ABI_ALIGNMENT): Define.
+
+2016-10-09 Jakub Jelinek <jakub@redhat.com>
+
+ * tree-ssa.c (target_for_debug_bind, verify_phi_args,
+ ssa_undefined_value_p, maybe_optimize_var): Use VAR_P and/or
+ VAR_OR_FUNCTION_DECL_P macros.
+ * tree-chkp.c (chkp_register_var_initializer, chkp_make_static_bounds,
+ chkp_get_bounds_for_decl_addr, chkp_parse_array_and_component_ref,
+ chkp_find_bounds_1): Likewise.
+ * ipa-polymorphic-call.c (decl_maybe_in_construction_p): Likewise.
+ * hsa-gen.c (get_symbol_for_decl): Likewise.
+ * cgraphunit.c (check_global_declaration, analyze_functions,
+ handle_alias_pairs, thunk_adjust, cgraph_node::expand_thunk):
+ Likewise.
+ * gimple-fold.c (can_refer_decl_in_current_unit_p,
+ canonicalize_constructor_val, gimple_get_virt_method_for_vtable):
+ Likewise.
+ * tree.c (set_decl_section_name, copy_node_stat,
+ need_assembler_name_p, free_lang_data_in_decl, find_decls_types_r,
+ merge_dllimport_decl_attributes, handle_dll_attribute,
+ decl_init_priority_insert, auto_var_in_fn_p, array_at_struct_end_p,
+ verify_type): Likewise.
+ * gimple-ssa-isolate-paths.c (find_implicit_erroneous_behavior,
+ find_explicit_erroneous_behavior): Likewise.
+ * sdbout.c (sdbout_toplevel_data, sdbout_late_global_decl): Likewise.
+ * ipa.c (process_references): Likewise.
+ * tree-chkp-opt.c (chkp_get_check_result): Likewise.
+ * varasm.c (get_block_for_decl, use_blocks_for_decl_p, make_decl_rtl,
+ notice_global_symbol, assemble_variable, mark_decl_referenced,
+ build_constant_desc, output_constant_def_contents, do_assemble_alias,
+ make_decl_one_only, default_section_type_flags,
+ categorize_decl_for_section, default_encode_section_info): Likewise.
+ * trans-mem.c (requires_barrier): Likewise.
+ * gimple-expr.c (mark_addressable): Likewise.
+ * cfgexpand.c (add_scope_conflicts_1, expand_one_var,
+ expand_used_vars_for_block, clear_tree_used, stack_protect_decl_p,
+ expand_debug_expr): Likewise.
+ * tree-dump.c (dequeue_and_dump): Likewise.
+ * ubsan.c (instrument_bool_enum_load): Likewise.
+ * tree-pretty-print.c (print_declaration): Likewise.
+ * simplify-rtx.c (delegitimize_mem_from_attrs): Likewise.
+ * tree-ssa-uninit.c (warn_uninitialized_vars): Likewise.
+ * asan.c (asan_protect_global, instrument_derefs): Likewise.
+ * tree-into-ssa.c (rewrite_stmt, maybe_register_def,
+ pass_build_ssa::execute): Likewise.
+ * var-tracking.c (var_debug_decl, track_expr_p): Likewise.
+ * tree-ssa-loop-ivopts.c (force_expr_to_var_cost, split_address_cost):
+ Likewise.
+ * ipa-split.c (test_nonssa_use, consider_split, mark_nonssa_use):
+ Likewise.
+ * tree-inline.c (insert_debug_decl_map, remap_ssa_name,
+ can_be_nonlocal, remap_decls, copy_debug_stmt,
+ initialize_inlined_parameters, add_local_variables,
+ reset_debug_binding, replace_locals_op): Likewise.
+ * dse.c (can_escape): Likewise.
+ * ipa-devirt.c (compare_virtual_tables, referenced_from_vtable_p):
+ Likewise.
+ * tree-diagnostic.c (default_tree_printer): Likewise.
+ * tree-streamer-in.c (unpack_ts_decl_common_value_fields,
+ unpack_ts_decl_with_vis_value_fields,
+ lto_input_ts_decl_common_tree_pointers): Likewise.
+ * builtins.c (builtin_save_expr, fold_builtin_expect,
+ readonly_data_expr): Likewise.
+ * tree-ssa-structalias.c (new_var_info, get_constraint_for_ssa_var,
+ create_variable_info_for, set_uids_in_ptset, visit_loadstore):
+ Likewise.
+ * gimple-streamer-out.c (output_gimple_stmt): Likewise.
+ * gimplify.c (force_constant_size, gimplify_bind_expr,
+ gimplify_decl_expr, gimplify_var_or_parm_decl,
+ gimplify_compound_lval, gimplify_init_constructor,
+ gimplify_modify_expr, gimplify_asm_expr, gimplify_oacc_declare,
+ gimplify_type_sizes): Likewise.
+ * cgraphbuild.c (record_reference, record_type_list, mark_address,
+ mark_load, mark_store, pass_build_cgraph_edges::execute): Likewise.
+ * tree-ssa-live.c (mark_all_vars_used_1, remove_unused_scope_block_p,
+ remove_unused_locals): Likewise.
+ * tree-ssa-alias.c (ptr_deref_may_alias_decl_p, ptrs_compare_unequal,
+ ref_maybe_used_by_call_p_1, call_may_clobber_ref_p_1): Likewise.
+ * function.c (instantiate_expr, instantiate_decls_1,
+ setjmp_vars_warning, add_local_decl): Likewise.
+ * alias.c (ao_ref_from_mem, get_alias_set, compare_base_symbol_refs):
+ Likewise.
+ * tree-stdarg.c (find_va_list_reference, va_list_counter_struct_op,
+ va_list_ptr_read, va_list_ptr_write, check_all_va_list_escapes,
+ optimize_va_list_gpr_fpr_size): Likewise.
+ * tree-nrv.c (pass_nrv::execute): Likewise.
+ * tsan.c (instrument_expr): Likewise.
+ * tree-ssa-dce.c (remove_dead_stmt): Likewise.
+ * vtable-verify.c (verify_bb_vtables): Likewise.
+ * tree-dfa.c (ssa_default_def, set_ssa_default_def,
+ get_ref_base_and_extent): Likewise.
+ * toplev.c (wrapup_global_declaration_1, wrapup_global_declaration_2):
+ Likewise.
+ * tree-sra.c (static bool constant_decl_p, find_var_candidates,
+ analyze_all_variable_accesses): Likewise.
+ * tree-nested.c (get_nonlocal_debug_decl,
+ convert_nonlocal_omp_clauses, note_nonlocal_vla_type,
+ note_nonlocal_block_vlas, convert_nonlocal_reference_stmt,
+ get_local_debug_decl, convert_local_omp_clauses,
+ convert_local_reference_stmt, nesting_copy_decl, remap_vla_decls):
+ Likewise.
+ * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Likewise.
+ * stmt.c (decl_overlaps_hard_reg_set_p): Likewise.
+ * dbxout.c (dbxout_late_global_decl, dbxout_type_fields,
+ dbxout_symbol, dbxout_common_check): Likewise.
+ * expr.c (expand_assignment, expand_expr_real_2, expand_expr_real_1,
+ string_constant): Likewise.
+ * hsa.c (hsa_get_declaration_name): Likewise.
+ * passes.c (rest_of_decl_compilation): Likewise.
+ * tree-ssanames.c (make_ssa_name_fn): Likewise.
+ * tree-streamer-out.c (pack_ts_decl_common_value_fields,
+ pack_ts_decl_with_vis_value_fields,
+ write_ts_decl_common_tree_pointers): Likewise.
+ * stor-layout.c (place_field): Likewise.
+ * symtab.c (symtab_node::maybe_create_reference,
+ symtab_node::verify_base, symtab_node::make_decl_local,
+ symtab_node::copy_visibility_from,
+ symtab_node::can_increase_alignment_p): Likewise.
+ * dwarf2out.c (add_var_loc_to_decl, tls_mem_loc_descriptor,
+ decl_by_reference_p, reference_to_unused, rtl_for_decl_location,
+ fortran_common, add_location_or_const_value_attribute,
+ add_scalar_info, add_linkage_name, set_block_abstract_flags,
+ local_function_static, gen_variable_die, dwarf2out_late_global_decl,
+ optimize_one_addr_into_implicit_ptr,
+ optimize_location_into_implicit_ptr): Likewise.
+ * gimple-low.c (record_vars_into): Likewise.
+ * ipa-visibility.c (update_vtable_references): Likewise.
+ * tree-ssa-address.c (fixed_address_object_p, copy_ref_info):
+ Likewise.
+ * lto-streamer-out.c (tree_is_indexable, get_symbol_initial_value,
+ DFS::DFS_write_tree_body, write_symbol): Likewise.
+ * langhooks.c (lhd_warn_unused_global_decl,
+ lhd_set_decl_assembler_name): Likewise.
+ * attribs.c (decl_attributes): Likewise.
+ * except.c (output_ttype): Likewise.
+ * varpool.c (varpool_node::get_create, ctor_for_folding,
+ varpool_node::assemble_decl, varpool_node::create_alias): Likewise.
+ * fold-const.c (fold_unary_loc): Likewise.
+ * ipa-prop.c (ipa_compute_jump_functions_for_edge,
+ ipa_find_agg_cst_from_init): Likewise.
+ * omp-low.c (expand_omp_regimplify_p, expand_omp_taskreg,
+ expand_omp_target, lower_omp_regimplify_p,
+ grid_reg_assignment_to_local_var_p, grid_remap_prebody_decls,
+ find_link_var_op): Likewise.
+ * tree-chrec.c (chrec_contains_symbols): Likewise.
+ * tree-cfg.c (verify_address, verify_expr, verify_expr_location_1,
+ gimple_duplicate_bb, move_stmt_op, replace_block_vars_by_duplicates,
+ execute_fixup_cfg): Likewise.
+
+ PR tree-optimization/77901
+ * tree-ssa-reassoc.c (optimize_range_tests_var_bound): Only optimize
+ if ranges[i].exp is SSA_NAME when looking for >= and only when
+ ranges[i].exp is NULL or SSA_NAME when looking for the other
+ comparison.
+
+2016-10-09 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
+
+ * ipa-cp.c (ipcp_alignment_lattice): Remove.
+ (ipcp_param_lattices): Remove field alignment.
+ (print_all_lattices): Remove call to ipcp_alignment_lattice::print.
+ (set_all_contains_variable): Remove call to
+ ipcp_alignment_lattice::set_to_bottom.
+ (initialize_node_lattices): Likewise.
+ (propagate_alignment_accross_jump_function): Remove.
+ (propagate_constants_accross_call): Remove call to
+ propagate_alignment_accross_jump_function.
+ (ipcp_store_alignment_results): Remove.
+ (ipcp_driver): Remove call to ipcp_store_alignment_results.
+ (propagate_bits_accross_jump_function): Handle ancestor jump function.
+ * ipa-prop.c (ipa_print_node_jump_functions_for_edge): Remove
+ pretty-printing of alignment jump function.
+ (ipa_set_jf_unknown): Remove assignment to jfunc->alignment.known.
+ (ipa_compute_jump_functions_for_edge): Adjust ipa_bits jump function for
+ alignments and remove computing ipa_alignment jump function.
+ (ipa_node_params_t::duplicate): Remove copying of src_trans->alignments.
+ (ipa_write_jump_functions): Remove streaming for ipa_alignment.
+ (ipa_read_jump_function): Remove reading of ipa_alignment.
+ (write_ipcp_transformation_info): Remove streaming for alignment
+ propagation summary.
+ (read_ipcp_transformation_info): Remove reading of alignment
+ propagation summary.
+ (ipcp_update_alignments): Remove.
+ (ipcp_update_bits): Adjust to set alignment for parameters of pointer
+ type.
+ (ipcp_transform_function): Remove call to ipcp_update_alignments()
+ and remove assignment to (*ipcp_transformations)[node->uid].alignments.
+ * ipa-prop.h (ipa_alignment): Remove.
+ (ipa_jump_func): Remove field alignment.
+ (ipcp_transformation_summary): Remove field alignments.
+ * doc/invoke.texi: Mark fipa-cp-alignment as obsolete.
+ * opts.c (default_options_table): Remove entry for fipa-cp-alignment.
+ (enable_fdo_optimizations): Remove checking for fipa-cp-alignment.
+
+2016-10-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/sparc/sparc.h (FIXED_REGISTERS): Add %icc.
+
+ * config/visium/visium.c (visium_expand_int_cstore): Revert latest
+ change.
+ (visium_expand_fp_cstore): Likewise.
+
+2016-10-08 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
+
+ * diagnostic-core.h (warning_at_rich_loc_n): Declare.
+ * diagnostic.c (warning_at_rich_loc_n): New function.
+ (diagnostic_n_impl_richloc): Likewise.
+ (diagnostic_n_impl): Move most of the function to
+ diagnostic_n_impl_richloc and call it.
+
2016-10-08 Jakub Jelinek <jakub@redhat.com>
* gen-pass-instances.awk: Rewritten.
* config/aarch64/aarch64-arches.def (AARCH64_ARCH): #undef at the end.
* config/aarch64/aarch64-cores.def (AARCH64_CORE): Likewise.
- * config/aarch64/aarch64-fusion-pairs.def (AARCH64_FUSION_PAIR): Likewise.
- * config/aarch64/aarch64-option-extensions.def (AARCH64_OPT_EXTENSION): Likewise.
- * config/aarch64/aarch64-tuning-flags.def (AARCH64_EXTRA_TUNING_OPTION): Likewise.
+ * config/aarch64/aarch64-fusion-pairs.def (AARCH64_FUSION_PAIR):
+ Likewise.
+ * config/aarch64/aarch64-option-extensions.def (AARCH64_OPT_EXTENSION):
+ Likewise.
+ * config/aarch64/aarch64-tuning-flags.def (AARCH64_EXTRA_TUNING_OPTION):
+ Likewise.
* config/aarch64/aarch64-opts.h (AARCH64_CORE): Don't #undef here.
(AARCH64_ARCH): Likewise.
- * common/config/aarch64/aarch64-common.c (AARCH64_OPT_EXTENSION): Likewise.
+ * common/config/aarch64/aarch64-common.c (AARCH64_OPT_EXTENSION):
+ Likewise.
(AARCH64_CORE): Likewise.
(AARCH64_ARCH): Likewise.
* config/aarch64/aarch64-protos.h (AARCH64_FUSION_PAIR): Likewise.
which is not safe.
2016-10-06 James Clarke <jrtc27@jrtc27.com>
- Eric Botcazou <ebotcazou@adacore.com>
+ Eric Botcazou <ebotcazou@adacore.com>
PR target/77759
* config/sparc/sparc.c (classify_data_t): Remove int_regs field.
2016-09-02 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* cfg.c (free_original_copy_tables): Replace second assignment of
- bb_copy = NULL by bb_original = NULL.
+ bb_copy = NULL by bb_original = NULL.
2016-09-02 Jakub Jelinek <jakub@redhat.com>
Tweak the pipeline model for Exynos M1
- * config/aarch64/aarch64.c (exynosm1_tunings): Enable weak prefetching
+ * config/aarch64/aarch64.c (exynosm1_tunings): Enable weak prefetching
model.
2016-03-17 David Malcolm <dmalcolm@redhat.com>