* dumpfile.h: Tabify.
[gcc.git] / gcc / ChangeLog
index 58693c5a4760b9c1a3236f4d9f5de31ba667c86d..91a14b8bb6009193e787e747cd096af01b923246 100644 (file)
@@ -1,3 +1,157 @@
+2017-05-10  Nathan Sidwell  <nathan@acm.org>
+
+       * dumpfile.h: Tabify.
+
+2017-05-10  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       PR target/80671
+       * config/aarch64/cortex-a57-fma-steering.c (merge_forest):
+       Move member access before delete.
+
+2017-05-10  Alexandre Oliva <aoliva@redhat.com>
+
+       * tree-inline.c (expand_call_inline): Split block at stmt
+       before the call.
+
+2017-05-09  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       PR target/68163
+       * config/rs6000/rs6000.md (f32_lr): Delete mode attributes that
+       are now unused after splitting mov{sf,sd}_hardfloat.
+       (f32_lr2): Likewise.
+       (f32_lm): Likewise.
+       (f32_lm2): Likewise.
+       (f32_li): Likewise.
+       (f32_li2): Likewise.
+       (f32_lv): Likewise.
+       (f32_sr): Likewise.
+       (f32_sr2): Likewise.
+       (f32_sm): Likewise.
+       (f32_sm2): Likewise.
+       (f32_si): Likewise.
+       (f32_si2): Likewise.
+       (f32_sv): Likewise.
+       (f32_dm): Likewise.
+       (f32_vsx): Likewise.
+       (f32_av): Likewise.
+       (mov<mode>_hardfloat): Split into separate movsf and movsd pieces.
+       For movsf, order stores so the VSX stores occur before the GPR
+       store which encourages the register allocator to use a traditional
+       FPR instead of a GPR.  For movsd, order the stores so that the GPR
+       store comes before the VSX stores to allow the power6 to work.
+       This is due to the power6 not having a 32-bit integer store
+       instruction from a FPR.
+       (movsf_hardfloat): Likewise.
+       (movsd_hardfloat): Likewise.
+
+2017-05-09  Martin Sebor  <msebor@redhat.com>
+
+       PR translation/80280
+       * config/sol2-c.c (cmn_err_flag_specs): Initialize new data member
+       added in r247778.
+
+       PR translation/80280
+       * config/i386/msformat-c.c (ms_printf_flag_specs): Initialize new
+       data member added in r247778.
+       (ms_scanf_flag_specs, ms_strftime_flag_specs): Same.
+
+2017-05-09  Nathan Sidwell  <nathan@acm.org>
+
+       * tree.h (tree_fits_shwi_p, tree_fits_uhwi_p): Unconditionally pure.
+
+       * ipa-devirt.c (default_hash_traits<type_pair>): Skip struct-scope
+       typedefs.
+
+2017-05-09  Marek Polacek  <polacek@redhat.com>
+
+       * doc/invoke.texi: Fix typo.
+
+2017-05-09  Richard Biener  <rguenther@suse.de>
+
+       * tree-vrp.c (vrp_val_is_max): Adjust comment.
+       (vrp_val_is_min): Likewise.
+       (set_value_range_to_value): Likewise.
+       (set_value_range_to_nonnegative): Likewise.
+       (gimple_assign_nonzero_p): Likewise.
+       (gimple_stmt_nonzero_p): Likewise.
+       (vrp_int_const_binop): Likewise.  Remove unreachable case.
+       (adjust_range_with_scev): Adjust comments.
+       (compare_range_with_value): Likewise.
+       (extract_range_from_phi_node): Likewise.
+       (test_for_singularity): Likewise.
+
+2017-05-09  Richard Biener  <rguenther@suse.de>
+
+       * tree-vrp.c (get_single_symbol): Add assert that we don't
+       get overflowed constants as invariant part.
+       (compare_values_warnv): Add comment before the TREE_NO_WARNING
+       checks.  Use wi::cmp instead of recursing for integer constants.
+       (compare_values): Just ignore whether we assumed undefined
+       overflow instead of failing the compare.
+       (extract_range_for_var_from_comparison_expr): Add comment before the
+       TREE_NO_WARNING sets.
+       (test_for_singularity): Likewise.
+       (extract_range_from_comparison): Do not disable optimization
+       when we assumed undefined overflow.
+       (extract_range_basic): Remove init of unused var.
+
+2017-05-09  Richard Biener  <rguenther@suse.de>
+
+       * tree-vrp.c (vrp_int_const_binop): Use wide-ints and simplify.
+       (extract_range_from_multiplicative_op_1): Adjust.
+       (extract_range_from_binary_expr_1): Use int_const_binop.
+
+2017-05-08  Kelvin Nilsen  <kelvin@gcc.gnu.org>
+
+       PR target/80101
+       * config/rs6000/power6.md: Replace store_data_bypass_p calls with
+       rs6000_store_data_bypass_p in seven define_bypass directives and
+       in several comments.
+       * config/rs6000/rs6000-protos.h: Add prototype for
+       rs6000_store_data_bypass_p function.
+       * config/rs6000/rs6000.c (rs6000_store_data_bypass_p): New
+       function implements slightly different (rs6000-specific) semantics
+       than store_data_bypass_p, returning false rather than aborting
+       with assertion error when arguments do not satisfy the
+       requirements of store data bypass.
+       (rs6000_adjust_cost): Replace six calls of store_data_bypass_p with
+       rs6000_store_data_bypass_p.
+
+2017-05-08  Max Filippov  <jcmvbkbc@gmail.com>
+
+       * config/xtensa/xtensa-protos.h
+               (xtensa_initial_elimination_offset): New declaration.
+       * config/xtensa/xtensa.c (xtensa_initial_elimination_offset):
+       New function. Move its body from the INITIAL_ELIMINATION_OFFSET
+       macro definition, add case for FRAME_POINTER_REGNUM when
+       FRAME_GROWS_DOWNWARD.
+       * config/xtensa/xtensa.h (FRAME_GROWS_DOWNWARD): New macro
+       definition.
+       (INITIAL_ELIMINATION_OFFSET): Replace body with call to
+       xtensa_initial_elimination_offset.
+
+2017-05-08  Nathan Sidwell  <nathan@acm.org>
+
+       * doc/invoke.texi: Alphabetize -fdump options.
+
+2017-05-08  Martin Sebor  <msebor@redhat.com>
+
+       PR translation/80280
+       * config/sol2-c.c (solaris_pragma_align): Correct quoting.
+
+2017-05-08  Bernd Edlinger  <bernd.edlinger@hotmail.de>
+
+       * target.def (compute_frame_layout): New optional target hook.
+       * doc/tm.texi.in (TARGET_COMPUTE_FRAME_LAYOUT): Add hook.
+       * doc/tm.texi (TARGET_COMPUTE_FRAME_LAYOUT): Add documentation.
+       * lra-eliminations.c (update_reg_eliminate): Call compute_frame_layout
+       target hook.
+       * reload1.c (verify_initial_elim_offsets): Likewise.
+       * config/arm/arm.c (TARGET_COMPUTE_FRAME_LAYOUT): Define.
+       (use_simple_return_p): Call arm_compute_frame_layout if needed.
+       (arm_get_frame_offsets): Split up into this ...
+       (arm_compute_frame_layout): ... and this function.
+
 2017-05-08  Richard Sandiford  <richard.sandiford@arm.com>
 
        * config/aarch64/constraints.md (Usa): New constraint.