* diagnostic.c (diagnostc_report_diagnostic): Fix formatting.
[gcc.git] / gcc / ChangeLog
index 1685c7f95aa06e05c0dcc735b82e605a31b35676..666add9e1c9e9bda67d8ff59bcf7d6631ff8da96 100644 (file)
@@ -1,3 +1,618 @@
+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>