+2016-06-29 Martin Liska <mliska@suse.cz>
+
+ PR middle-end/71585
+ * common.opt (flag_stack_protect): Mark the flag as optimization
+ flag.
+ * ipa-inline-transform.c (inline_call): Remove unnecessary call
+ of build_optimization_node.
+
+2016-06-29 Yuri Rumyantsev <ysrumyan@gmail.com>
+
+ PR tree-optimization/70729
+ * tree-ssa-loop-im.c (ref_indep_loop_p_1): Consider memory reference as
+ independent in loops having positive safelen value.
+ * tree-vect-loop.c (vect_transform_loop): Clear-up safelen value since
+ it may be not valid after vectorization.
+
+2016-06-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/71625
+ * tree-ssa-strlen.c (get_addr_stridx): Add PTR argument. Assume list
+ is sorted by ascending list->offset. If PTR is non-NULL and there is
+ previous strinfo, call get_stridx_plus_constant.
+ (get_stridx): Pass exp as second argument to get_addr_stridx.
+ (addr_stridxptr): Add missing list = list->next, so that there can be
+ more than one entries in the list. Bump limit from 16 to 32. Ensure
+ the list is sorted by ascending list->offset.
+ (get_stridx_plus_constant): Adjust so that it can be also called with
+ ADDR_EXPR instead of SSA_NAME as PTR.
+ (handle_char_store): Pass NULL_TREE as second argument to
+ get_addr_stridx.
+
+2016-06-29 Richard Biener <rguenther@suse.de>
+
+ PR rtl-optimization/68961
+ * simplify-rtx.c (simplify_subreg): Handle VEC_CONCAT like CONCAT.
+
+2016-06-29 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/71002
+ * alias.c (component_uses_parent_alias_set_from): Handle
+ type punning through union accesses by using the union alias set.
+ * gimple.c (gimple_get_alias_set): Remove union type punning case.
+
+2016-07-29 Richard Biener <rguenther@suse.de>
+
+ * match.pd ((T)(T2)x -> (T)x): Remove restriction on final
+ precision not matching mode precision.
+
+2016-06-28 John David Anglin <danglin@gcc.gnu.org>
+
+ * config/pa/pa.md (call_symref_64bit_post_reload): Don't call
+ pa_output_arg_descriptor.
+ (call_val_symref_64bit_post_reload): Likewise.
+ (call_val_powf_64bit_post_reload): Likewise.
+ (sibcall_internal_symref_64bit): Likewise.
+ (sibcall_value_internal_symref_64bit): Likewise.
+
+2016-06-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/71626
+ * config/i386/i386.c (ix86_expand_vector_move): For SUBREG of
+ a constant, force its SUBREG_REG into memory or register instead
+ of whole op1.
+
+2016-06-28 Pitchumani Sivanupandi <pitchumani.s@atmel.com>
+
+ PR target/58655
+ * config/avr/avr.opt (-mfract-convert-truncate): Update description.
+ * doc/invoke.texi (AVR Options): Document it.
+
+2016-06-28 Walter Lee <walt@tilera.com>
+
+ * config/tilegx/linux.h: Do not include arch/icache.h
+ (CLEAR_INSN_CACHE): Provide inlined definition directly.
+ * config/tilepro/linux.h: Do not include arch/icache.h
+ (CLEAR_INSN_CACHE): Provide inlined definition directly.
+
+2016-06-28 Wilco Dijkstra <wdijkstr@arm.com>
+
+ * tree-ssa-math-opts.c (find_bswap_or_nop_1): Adjust bitnumbering
+ for big-endian BIT_FIELD_REF.
+
+2016-06-28 Pat Haugen <pthaugen@us.ibm.com>
+
+ * config/rs6000/rs6000.md ('type' attribute): Add htmsimple/dfp types.
+ ('size' attribute): Add '128'.
+ Include power9.md.
+ (*mov<mode>_hardfloat32, *mov<mode>_hardfloat64, *movdi_internal32,
+ *movdi_internal64, *movdf_update1): Set size attribute to '64'.
+ (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3, sqrt<mode>2,
+ copysign<mode>3, neg<mode>2_hw, abs<mode>2_hw, *nabs<mode>2_hw,
+ *fma<mode>4_hw, *fms<mode>4_hw, *nfma<mode>4_hw, *nfms<mode>4_hw,
+ extend<SFDF:mode><IEEE128:mode>2_hw, trunc<mode>df2_hw,
+ *xscvqp<su>wz_<mode>, *xscvqp<su>dz_<mode>, *xscv<su>dqp_<mode>,
+ *trunc<mode>df2_odd): Set size attribute to '128'.
+ (*cmp<mode>_hw): Change type to veccmp and set size attribute to '128'.
+ * config/rs6000/power6.md (power6-fp): Include dfp type.
+ * config/rs6000/power7.md (power7-fp): Likewise.
+ * config/rs6000/power8.md (power8-fp): Likewise.
+ * config/rs6000/power9.md: New file.
+ * config/rs6000/t-rs6000 (MD_INCLUDES): Add power9.md.
+ * config/rs6000/htm.md (*tabort, *tabort<wd>c, *tabort<wd>ci,
+ *trechkpt, *treclaim, *tsr, *ttest): Change type attribute to
+ htmsimple.
+ * config/rs6000/dfp.md (extendsddd2, truncddsd2, extendddtd2,
+ trunctddd2, adddd3, addtd3, subdd3, subtd3, muldd3, multd3, divdd3,
+ divtd3, *cmpdd_internal1, *cmptd_internal1, floatdidd2, floatditd2,
+ ftruncdd2, fixdddi2, ftrunctd2, fixtddi2, dfp_ddedpd_<mode>,
+ dfp_denbcd_<mode>, dfp_dxex_<mode>, dfp_diex_<mode>, dfp_dscli_<mode>,
+ dfp_dscri_<mode>): Change type attribute to dfp.
+ * config/rs6000/crypto.md (crypto_vshasigma<CR_char>): Change type
+ attribute to vecsimple.
+ * config/rs6000/rs6000.c (power9_cost): Update costs, cache size
+ and prefetch streams.
+ (rs6000_option_override_internal): Remove temporary code setting
+ tuning to power8. Don't set rs6000_sched_groups for power9.
+ (last_scheduled_insn): Change to rtx_insn *.
+ (divide_cnt, vec_load_pendulum): New variables.
+ (rs6000_adjust_cost): Add Power9 to test for store->load separation.
+ (rs6000_issue_rate): Set issue rate for Power9.
+ (is_power9_pairable_vec_type): New.
+ (power9_sched_reorder2): New.
+ (rs6000_sched_reorder2): Call new function for Power9 specific
+ reordering.
+ (insn_must_be_first_in_group): Remove Power9.
+ (insn_must_be_last_in_group): Likewise.
+ (force_new_group): Likewise.
+ (rs6000_sched_init): Fix initialization of last_scheduled_insn.
+ Initialize divide_cnt/vec_load_pendulum.
+ (_rs6000_sched_context, rs6000_init_sched_context,
+ rs6000_set_sched_context): Handle context save/restore of new
+ variables.
+
+2016-06-28 Richard Biener <rguenther@suse.de>
+
+ * tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p):
+ Properly handle DECL_BIT_FIELD_REPRESENTATIVE occuring as
+ COMPONENT_REF operand.
+ (nonoverlapping_component_refs_p): Likewise.
+ * stor-layout.c (start_bitfield_representative): Mark
+ DECL_BIT_FIELD_REPRESENTATIVE as DECL_NONADDRESSABLE_P.
+
2016-06-28 Jakub Jelinek <jakub@redhat.com>
* Makefile.in: Don't cat ../stage_current if it does not exist.