1. 07 Nov, 2017 2 commits
    • FT32 makes use of multiple address spaces. · a297ccb5
      
      FT32 makes use of multiple address spaces. When trying to inspect
      objects in GDB, GDB was treating them as a straight "const". The cause
      seems to be in GCC DWARF2 output.
      
      This output is handled in gcc/gcc/dwarf2out.c, where modified_type_die()
      checks that TYPE has qualifiers CV_QUALS. However while TYPE has
      ADDR_SPACE qualifiers, the modified_type_die() explicitly discards the
      ADDR_SPACE qualifiers.
      
      This patch retains the ADDR_SPACE qualifiers as modified_type_die()
      outputs the DWARF type tree.  This allows the types to match, and correct
      type information for the object is emitted.
      
      [gcc]
      
      2017-11-06  James Bowman  <james.bowman@ftdichip.com>
      
      	* gcc/dwarf2out.c (modified_type_die): Retain ADDR_SPACE
      	qualifiers.
              (add_type_attribute) likewise.
      
      From-SVN: r254484
      James Bowman committed
    • Daily bump. · 853c0dfb
      From-SVN: r254483
      GCC Administrator committed
  2. 06 Nov, 2017 37 commits
    • i386: Use reference of struct ix86_frame to avoid copy · 9f8760ed
      When there is no need to make a copy of ix86_frame, we can use reference
      of struct ix86_frame to avoid copy.
      
      Tested on x86-64.
      
      	* config/i386/i386.c (ix86_can_use_return_insn_p): Use reference
      	of struct ix86_frame.
      	(ix86_initial_elimination_offset): Likewise.
      	(ix86_expand_split_stack_prologue): Likewise.
      
      From-SVN: r254480
      H.J. Lu committed
    • stack-check-12.c: Revert to initial version. · 53d855e0
      	* gcc.target/i386/stack-check-12.c: Revert to initial version.  Then..
      	Add -fomit-frame-pointer.
      
      From-SVN: r254479
      Jeff Law committed
    • Update comment in tree-vrp.h · e52781dc
      2017-11-06  Marc Glisse  <marc.glisse@inria.fr>
      
      	* tree-vrp.h (enum value_range_type): Update stale comment.
      
      From-SVN: r254478
      Marc Glisse committed
    • tr1.cc: Compile with -O0. · 187e8ee7
      2017-11-06  François Dumont  <fdumont@gcc.gnu.org>
      
      	* testsuite/libstdc++-prettyprinters/tr1.cc:  Compile with -O0.
      
      From-SVN: r254477
      François Dumont committed
    • compiler: disable escape analysis for runtime · b78e2e52
          
          Currently the runtime is hard-coded to non-escape in various places.
          Don't run escape analysis for runtime.
          
          Reviewed-on: https://go-review.googlesource.com/76210
      
      From-SVN: r254476
      Ian Lance Taylor committed
    • libgo: pass flags to recursive make · ce995d1c
          
          "make check" runs make recursively to check each package. Pass
          the flags through. So it is possible to run "make check" with
          different settings easily.
          
          Reviewed-on: https://go-review.googlesource.com/76029
      
      From-SVN: r254475
      Ian Lance Taylor committed
    • [AArch64] Pass number of units to aarch64_expand_vec_perm(_const) · 80940017
      This patch passes the number of units to aarch64_expand_vec_perm
      and aarch64_expand_vec_perm_const, which avoids a to_constant ()
      once GET_MODE_NUNITS is variable.
      
      2017-11-06  Richard Sandiford  <richard.sandiford@linaro.org>
      	    Alan Hayward  <alan.hayward@arm.com>
      	    David Sherwood  <david.sherwood@arm.com>
      
      gcc/
      	* config/aarch64/aarch64-protos.h (aarch64_expand_vec_perm)
      	(aarch64_expand_vec_perm_const): Take the number of units too.
      	* config/aarch64/aarch64.c (aarch64_expand_vec_perm)
      	(aarch64_expand_vec_perm_const): Likewise.
      	* config/aarch64/aarch64-simd.md (vec_perm_const<mode>)
      	(vec_perm<mode>): Update accordingly.
      
      Reviewed-by: James Greenhalgh <james.greenhalgh@arm.com>
      
      Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
      Co-Authored-By: David Sherwood <david.sherwood@arm.com>
      
      From-SVN: r254469
      Richard Sandiford committed
    • [AArch64] Pass number of units to aarch64_simd_vect_par_cnst_half · f5cbabc1
      This patch passes the number of units to aarch64_simd_vect_par_cnst_half,
      which avoids a to_constant () once GET_MODE_NUNITS is variable.
      
      2017-11-06  Richard Sandiford  <richard.sandiford@linaro.org>
      	    Alan Hayward  <alan.hayward@arm.com>
      	    David Sherwood  <david.sherwood@arm.com>
      
      gcc/
      	* config/aarch64/aarch64-protos.h (aarch64_simd_vect_par_cnst_half):
      	Take the number of units too.
      	* config/aarch64/aarch64.c (aarch64_simd_vect_par_cnst_half): Likewise.
      	(aarch64_simd_check_vect_par_cnst_half): Update call accordingly,
      	but check for a vector mode before rather than after the call.
      	* config/aarch64/aarch64-simd.md (aarch64_split_simd_mov<mode>)
      	(move_hi_quad_<mode>, vec_unpack<su>_hi_<mode>)
      	(vec_unpack<su>_lo_<mode, vec_widen_<su>mult_lo_<mode>)
      	(vec_widen_<su>mult_hi_<mode>, vec_unpacks_lo_<mode>)
      	(vec_unpacks_hi_<mode>, aarch64_saddl2<mode>, aarch64_uaddl2<mode>)
      	(aarch64_ssubl2<mode>, aarch64_usubl2<mode>, widen_ssum<mode>3)
      	(widen_usum<mode>3, aarch64_saddw2<mode>, aarch64_uaddw2<mode>)
      	(aarch64_ssubw2<mode>, aarch64_usubw2<mode>, aarch64_sqdmlal2<mode>)
      	(aarch64_sqdmlsl2<mode>, aarch64_sqdmlal2_lane<mode>)
      	(aarch64_sqdmlal2_laneq<mode>, aarch64_sqdmlsl2_lane<mode>)
      	(aarch64_sqdmlsl2_laneq<mode>, aarch64_sqdmlal2_n<mode>)
      	(aarch64_sqdmlsl2_n<mode>, aarch64_sqdmull2<mode>)
      	(aarch64_sqdmull2_lane<mode>, aarch64_sqdmull2_laneq<mode>)
      	(aarch64_sqdmull2_n<mode>): Update accordingly.
      
      Reviewed-by: James Greenhalgh <james.greenhalgh@arm.com>
      
      Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
      Co-Authored-By: David Sherwood <david.sherwood@arm.com>
      
      From-SVN: r254468
      Richard Sandiford committed
    • [AArch64] Pass number of units to aarch64_reverse_mask · 73e3da51
      This patch passes the number of units to aarch64_reverse_mask,
      which avoids a to_constant () once GET_MODE_NUNITS is variable.
      
      2017-11-06  Richard Sandiford  <richard.sandiford@linaro.org>
      	    Alan Hayward  <alan.hayward@arm.com>
      	    David Sherwood  <david.sherwood@arm.com>
      
      gcc/
      	* config/aarch64/aarch64-protos.h (aarch64_reverse_mask): Take
      	the number of units too.
      	* config/aarch64/aarch64.c (aarch64_reverse_mask): Likewise.
      	* config/aarch64/aarch64-simd.md (vec_load_lanesoi<mode>)
      	(vec_store_lanesoi<mode>, vec_load_lanesci<mode>)
      	(vec_store_lanesci<mode>, vec_load_lanesxi<mode>)
      	(vec_store_lanesxi<mode>): Update accordingly.
      
      Reviewed-by: James Greenhalgh <james.greenhalgh@arm.com>
      
      Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
      Co-Authored-By: David Sherwood <david.sherwood@arm.com>
      
      From-SVN: r254467
      Richard Sandiford committed
    • [AArch64] Add an endian_lane_rtx helper routine · 7ac29c0f
      Later patches turn the number of vector units into a poly_int.
      We deliberately don't support applying GEN_INT to those (except
      in target code that doesn't distinguish between poly_ints and normal
      constants); gen_int_mode needs to be used instead.
      
      This patch therefore replaces instances of:
      
        GEN_INT (ENDIAN_LANE_N (builtin_mode, INTVAL (op[opc])))
      
      with uses of a new endian_lane_rtx function.
      
      2017-11-06  Richard Sandiford  <richard.sandiford@linaro.org>
      	    Alan Hayward  <alan.hayward@arm.com>
      	    David Sherwood  <david.sherwood@arm.com>
      
      gcc/
      	* config/aarch64/aarch64-protos.h (aarch64_endian_lane_rtx): Declare.
      	* config/aarch64/aarch64.c (aarch64_endian_lane_rtx): New function.
      	* config/aarch64/aarch64.h (ENDIAN_LANE_N): Take the number
      	of units rather than the mode.
      	* config/aarch64/iterators.md (nunits): New mode attribute.
      	* config/aarch64/aarch64-builtins.c (aarch64_simd_expand_args):
      	Use aarch64_endian_lane_rtx instead of GEN_INT (ENDIAN_LANE_N ...).
      	* config/aarch64/aarch64-simd.md (aarch64_dup_lane<mode>)
      	(aarch64_dup_lane_<vswap_width_name><mode>, *aarch64_mul3_elt<mode>)
      	(*aarch64_mul3_elt_<vswap_width_name><mode>): Likewise.
      	(*aarch64_mul3_elt_to_64v2df, *aarch64_mla_elt<mode>): Likewise.
      	(*aarch64_mla_elt_<vswap_width_name><mode>, *aarch64_mls_elt<mode>)
      	(*aarch64_mls_elt_<vswap_width_name><mode>, *aarch64_fma4_elt<mode>)
      	(*aarch64_fma4_elt_<vswap_width_name><mode>):: Likewise.
      	(*aarch64_fma4_elt_to_64v2df, *aarch64_fnma4_elt<mode>): Likewise.
      	(*aarch64_fnma4_elt_<vswap_width_name><mode>): Likewise.
      	(*aarch64_fnma4_elt_to_64v2df, reduc_plus_scal_<mode>): Likewise.
      	(reduc_plus_scal_v4sf, reduc_<maxmin_uns>_scal_<mode>): Likewise.
      	(reduc_<maxmin_uns>_scal_<mode>): Likewise.
      	(*aarch64_get_lane_extend<GPI:mode><VDQQH:mode>): Likewise.
      	(*aarch64_get_lane_zero_extendsi<mode>): Likewise.
      	(aarch64_get_lane<mode>, *aarch64_mulx_elt_<vswap_width_name><mode>)
      	(*aarch64_mulx_elt<mode>, *aarch64_vgetfmulx<mode>): Likewise.
      	(aarch64_sq<r>dmulh_lane<mode>, aarch64_sq<r>dmulh_laneq<mode>)
      	(aarch64_sqrdml<SQRDMLH_AS:rdma_as>h_lane<mode>): Likewise.
      	(aarch64_sqrdml<SQRDMLH_AS:rdma_as>h_laneq<mode>): Likewise.
      	(aarch64_sqdml<SBINQOPS:as>l_lane<mode>): Likewise.
      	(aarch64_sqdml<SBINQOPS:as>l_laneq<mode>): Likewise.
      	(aarch64_sqdml<SBINQOPS:as>l2_lane<mode>_internal): Likewise.
      	(aarch64_sqdml<SBINQOPS:as>l2_laneq<mode>_internal): Likewise.
      	(aarch64_sqdmull_lane<mode>, aarch64_sqdmull_laneq<mode>): Likewise.
      	(aarch64_sqdmull2_lane<mode>_internal): Likewise.
      	(aarch64_sqdmull2_laneq<mode>_internal): Likewise.
      	(aarch64_vec_load_lanesoi_lane<mode>): Likewise.
      	(aarch64_vec_store_lanesoi_lane<mode>): Likewise.
      	(aarch64_vec_load_lanesci_lane<mode>): Likewise.
      	(aarch64_vec_store_lanesci_lane<mode>): Likewise.
      	(aarch64_vec_load_lanesxi_lane<mode>): Likewise.
      	(aarch64_vec_store_lanesxi_lane<mode>): Likewise.
      	(aarch64_simd_vec_set<mode>): Update use of ENDIAN_LANE_N.
      	(aarch64_simd_vec_setv2di): Likewise.
      
      Reviewed-by: James Greenhalgh <james.greenhalgh@arm.com>
      
      Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
      Co-Authored-By: David Sherwood <david.sherwood@arm.com>
      
      From-SVN: r254466
      Richard Sandiford committed
    • Fix ChangeLog entry · 6e601f26
      From-SVN: r254465
      Richard Sandiford committed
    • rs6000-c.c (P8V_BUILTIN_VEC_REVB): Add power 8 definitions. · fc504349
      gcc/ChangeLog:
      
      2017-11-06  Carl Love  <cel@us.ibm.com>
      
      	* config/rs6000/rs6000-c.c (P8V_BUILTIN_VEC_REVB): Add power 8
      	definitions.
      	(P9V_BUILTIN_VEC_REVB): Remove the power 9 instance definitions.
      	* config/rs6000/altivec.h (vec_revb): Change the #define from power 9
      	to power 8.
      	* config/rs6000/r6000-protos.h (swap_endian_selector_for_mode): Add new
      	extern declaration.
      	* config/rs6000/rs6000.c (swap_endian_selector_for_mode): Add function.
      	* config/rs6000/rs6000-builtin.def (BU_P8V_VSX_1, BU_P8V_OVERLOAD_1):
      	Add power 8 macro expansions.
      	(BU_P9V_OVERLOAD_1): Remove power 9 overload expansion.
      	* config/rs6000/vsx.md (revb_<mode>): Add define_expand to generate
      	power 8 instructions.  (VSX_XXBR): Add iterator.
      
      gcc/testsuite/ChangeLog:
      
      2017-11-06  Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtins-revb-runnable.c: New runnable test file.
      
      From-SVN: r254464
      Carl Love committed
    • [Arm] Cleanup IT attributes · 113c53c3
      A recent change to remove the movdi_vfp_cortexa8 meant that ldrd was used in
      ITs block even when arm_restrict_it was enabled.  Rather than just fixing this
      latent issue, change the default of predicable_short_it to "no" so that only
      16-bit instructions need to be marked with it.  As a result there are far fewer
      patterns that need the attribute, and omitting predicable_short_it is no longer
      causing issues.
      
      	* config/arm/arm.md (predicable_short_it): Change default to "no",
      	improve documentation, remove uses that are identical to the default.
      	(enabled_for_depr_it): Rename to enabled_for_short_it.
      	* gcc/config/arm/arm-fixed.md (predicable_short_it): Remove default uses.
      	* gcc/config/arm/ldmstm.md (predicable_short_it): Likewise.
      	* gcc/config/arm/sync.md (predicable_short_it): Likewise.
      	* gcc/config/arm/thumb2.md (predicable_short_it): Likewise.
      	* gcc/config/arm/vfp.md (predicable_short_it): Likewise.
      
      From-SVN: r254463
      Wilco Dijkstra committed
    • re PR target/82748 (ICE with __builtin_fabsq and __float128 in copy_to_mode_reg, at explow.c:612) · aeed6d61
      [gcc]
      2017-11-06  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/82748
      	* config/rs6000/rs6000-builtin.def (BU_FLOAT128_1): Delete
      	float128 helper macros, which are no longer used after deleting
      	the old 'q' built-in functions, and moving the round to odd
      	built-in functions to being special built-in functions.
      	(BU_FLOAT128_2): Likewise.
      	(BU_FLOAT128_1_HW): Likewise.
      	(BU_FLOAT128_2_HW): Likewise.
      	(BU_FLOAT128_3_HW): Likewise.
      	(FABSQ): Delete old 'q' built-in functions.
      	(COPYSIGNQ): Likewise.
      	(SQRTF128_ODD): Move round to odd built-in functions to be
      	special built-in functions, so that we can handle
      	-mabi=ieeelongdouble.
      	(TRUNCF128_ODD): Likewise.
      	(ADDF128_ODD): Likewise.
      	(SUBF128_ODD): Likewise.
      	(MULF128_ODD): Likewise.
      	(DIVF128_ODD): Likewise.
      	(FMAF128_ODD): Likewise.
      	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Map old 'q'
      	built-in names to 'f128'.
      	* config/rs6000/rs6000.c (rs6000_fold_builtin): Remove folding the
      	old 'q' built-in functions, as the machine independent code for
      	'f128' built-in functions handles this.
      	(rs6000_expand_builtin): Add expansion for float128 round to odd
      	functions, keying off on -mabi=ieeelongdouble of whether to use
      	the KFmode or TFmode variant.
      	(rs6000_init_builtins): Initialize the _Float128 round to odd
      	built-in functions.
      	* doc/extend.texi (PowerPC Built-in Functions): Document the old
      	_Float128 'q' built-in functions are now mapped into the new
      	'f128' built-in functions.
      
      [gcc/testsuite]
      2017-11-06  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/82748
      	* gcc.target/powerpc/pr82748-1.c: New test.
      	* gcc.target/powerpc/pr82748-2.c: Likewise.
      
      From-SVN: r254462
      Michael Meissner committed
    • re PR c++/65579 ([C++11] gcc requires definition of a static constexpr member… · 65371a7e
      re PR c++/65579 ([C++11] gcc requires definition of a static constexpr member even though it is not odr-used)
      
      /cp
      2017-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/65579
      	* decl2.c (finish_static_data_member_decl): If there's an initializer,
      	complete the type and re-apply the quals.
      
      /testsuite
      2017-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/65579
      	* g++.dg/cpp0x/constexpr-template11.C: New.
      
      From-SVN: r254461
      Paolo Carlini committed
    • collect2.c (add_lto_object): Compile for OBJECT_COFF. · d3722bf7
      * collect2.c (add_lto_object): Compile for OBJECT_COFF.
      (scan_prog_file): Don't skip PASS_LTOINFO. Scan for LTO objects.
      
      From-SVN: r254460
      David Edelsohn committed
    • ipa-fnsummary.c: fix use-after-free crash (PR jit/82826) · de4381a4
      gcc/ChangeLog:
      	PR jit/82826
      	* ipa-fnsummary.c (ipa_fnsummary_c_finalize): New function.
      	* ipa-fnsummary.h (ipa_fnsummary_c_finalize): New decl.
      	* toplev.c: Include "ipa-fnsummary.h".
      	(toplev::finalize): Call ipa_fnsummary_c_finalize.
      
      From-SVN: r254458
      David Malcolm committed
    • re PR tree-optimization/82838 (ICE in verify_ssa failed w/ store-merging) · 3e2927a1
      	PR tree-optimization/82838
      	* gimple-ssa-store-merging.c
      	(imm_store_chain_info::output_merged_store): Call force_gimple_operand_1
      	on a separate gimple_seq which is then appended to seq.
      
      	* gcc.c-torture/compile/pr82838.c: New test.
      
      From-SVN: r254457
      Jakub Jelinek committed
    • re PR target/82788 (wrong code with -fstack-clash-protection… · 7a1bdd66
      re PR target/82788 (wrong code with -fstack-clash-protection --param=stack-clash-protection-probe-interval=10 on simple code)
      
      	PR target/82788
      	* config/i386/i386.c (PROBE_INTERVAL): Remove.
      	(get_probe_interval): New functions.
      	(ix86_adjust_stack_and_probe_stack_clash): Use get_probe_interval.
      	(ix86_adjust_stack_and_probe): Likewise.
      	(output_adjust_stack_and_probe): Likewise.
      	(ix86_emit_probe_stack_range): Likewise.
      	(ix86_expand_prologue): Likewise.
      
      	PR target/82788
      	* gcc.dg/pr82788.c: New test.
      
      From-SVN: r254456
      Jeff Law committed
    • Check in right version of stack-check-12.c · 5422b1f0
      From-SVN: r254455
      Jeff Law committed
    • PR82816: Widening multiplies of bitfields · 9134df2c
      In this PR we tried to create a widening multiply of two 3-bit numbers,
      but that isn't a widening multiply at the optab/rtl level, since both
      the input and output still have the same mode.
      
      We could trap this either in is_widening_mult_p or (as the patch does)
      in the routines that actually ask for an optab.  The latter seemed
      more natural since is_widening_mult_p doesn't otherwise care about modes.
      
      2017-11-03  Richard Sandiford  <richard.sandiford@linaro.org>
      	    Alan Hayward  <alan.hayward@arm.com>
      	    David Sherwood  <david.sherwood@arm.com>
      
      gcc/
      	PR tree-optimization/82816
      	* tree-ssa-math-opts.c (convert_mult_to_widen): Return false
      	if the modes of the two types are the same.
      	(convert_plusminus_to_widen): Likewise.
      
      gcc/testsuite/
      	* gcc.c-torture/compile/pr82816.c: New test.
      
      Co-Authored-By: Alan Hayward <alan.hayward@arm.com>
      Co-Authored-By: David Sherwood <david.sherwood@arm.com>
      
      From-SVN: r254454
      Richard Sandiford committed
    • [gcc] · 962b9668
      2017-11-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/altivec.md (*p9_vadu<mode>3) Rename to
      	p9_vadu<mode>3.
      	(usadv16qi): New define_expand.
      	(usadv8hi): New define_expand.
      
      [gcc/testsuite]
      
      2017-11-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/sad-vectorize-1.c: New file.
      	* gcc.target/powerpc/sad-vectorize-2.c: New file.
      	* gcc.target/powerpc/sad-vectorize-3.c: New file.
      	* gcc.target/powerpc/sad-vectorize-4.c: New file.
      
      From-SVN: r254453
      Bill Schmidt committed
    • re PR bootstrap/82832 (Broken PGO LTO bootstrap on x86_64 after r254379) · 8e7d1486
      
      	PR bootstrap/82832
      	* ipa-inline-transform.c (update_noncloned_frequencies): Always
      	scale.
      	(inline_transform): Likewise.
      	* predict.c (counts_to_freqs): Remove useless conditional.
      	* profile-count.h (profile_count::apply_scale): Move sanity check.
      	* tree-inline.c (copy_bb): Always scale.
      	(copy_cfg_body): Likewise.
      
      From-SVN: r254452
      Jan Hubicka committed
    • Fix -Wreturn-type fallout. · 454f8b2b
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	* c-c++-common/cilk-plus/AN/pr57541-2.c (foo1): Return a value
      	for functions with non-void return type, or change type to void,
      	or add -Wno-return-type for test.
      	(foo2): Likewise.
      	* c-c++-common/cilk-plus/AN/pr57541.c (foo): Likewise.
      	(foo1): Likewise.
      	* c-c++-common/cilk-plus/CK/errors.c: Likewise.
      	* c-c++-common/cilk-plus/CK/pr60197.c: Likewise.
      	* c-c++-common/cilk-plus/CK/spawn_in_return.c: Likewise.
      	* c-c++-common/fold-masked-cmp-1.c (test_pic): Likewise.
      	(test_exe): Likewise.
      	* c-c++-common/fold-masked-cmp-2.c (test_exe): Likewise.
      	* g++.dg/cilk-plus/AN/builtin_fn_mutating_tplt.cc (my_func): Likewise.
      	* g++.dg/cilk-plus/CK/pr68997.cc (fa2): Likewise.
      	* g++.dg/eh/sighandle.C (dosegv): Likewise.
      	* g++.dg/ext/vector14.C (foo): Likewise.
      	(main): Likewise.
      	* g++.dg/graphite/pr41305.C: Likewise.
      	* g++.dg/graphite/pr42930.C: Likewise.
      	* g++.dg/opt/pr46640.C (struct QBasicAtomicInt): Likewise.
      	(makeDir): Likewise.
      	* g++.dg/other/i386-8.C (foo): Likewise.
      	* g++.dg/pr45788.C: Likewise.
      	* g++.dg/pr64688.C (at_c): Likewise.
      	* g++.dg/pr65032.C (G::DecodeVorbis): Likewise.
      	* g++.dg/pr71633.C (c3::fn2): Likewise.
      	* g++.dg/stackprotectexplicit2.C (A): Likewise.
      	* g++.old-deja/g++.law/weak.C (main): Likewise.
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	* testsuite/libgomp.c++/loop-2.C: Return a value
      	for functions with non-void return type, or change type to void,
      	or add -Wno-return-type for test.
      	* testsuite/libgomp.c++/loop-4.C: Likewise.
      	* testsuite/libgomp.c++/parallel-1.C: Likewise.
      	* testsuite/libgomp.c++/shared-1.C: Likewise.
      	* testsuite/libgomp.c++/single-1.C: Likewise.
      	* testsuite/libgomp.c++/single-2.C: Likewise.
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	* testsuite/27_io/basic_fstream/cons/char/path.cc (main):
      	  Return a value for functions with non-void return type,
      	  or change type to void, or add -Wno-return-type for test.
      	* testsuite/27_io/basic_ifstream/cons/char/path.cc (main):
      	Likewise.
      	* testsuite/27_io/basic_ofstream/open/char/path.cc (main):
      	Likewise.
      
      From-SVN: r254451
      Martin Liska committed
    • deduction.cc: Avoid -Wreturn-type warnings. · 98910bc2
      2017-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* testsuite/20_util/optional/cons/deduction.cc: Avoid -Wreturn-type
      	warnings.
      	* testsuite/20_util/pair/cons/deduction.cc: Likewise.
      	* testsuite/20_util/pair/traits.cc: Likewise.
      	* testsuite/20_util/tuple/cons/deduction.cc: Likewise.
      	* testsuite/20_util/variant/compile.cc: Likewise.
      	* testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
      	* testsuite/23_containers/unordered_map/modifiers/try_emplace.cc:
      	Likewise.
      
      From-SVN: r254450
      Paolo Carlini committed
    • gcov: New directory. · 6b6b9e5b
      	* gnat.dg/gcov: New directory.
      	* gnat.dg/gcov/gcov.exp: New driver.
      	* gnat.dg/gcov/check.adb: New test.
      
      From-SVN: r254447
      Eric Botcazou committed
    • [ARM] PR 67591 ARM v8 Thumb IT blocks are deprecated part 2 · d276dc31
      2017-11-06  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	PR target/67591
      	* config/arm/arm.md (*sub_shiftsi): Add predicable_short_it
      	attribute.
      	(*cmp_ite0): Add enabled_for_depr_it attribute.
      	(*cmp_ite1): Likewise.
      
      From-SVN: r254446
      Christophe Lyon committed
    • [testsuite] Fix directives order · caa3209e
      2017-11-06  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	* gcc.c-torture/execute/pr23135.c: Move dg-add-options after
      	dg-options.
      	* gcc.dg/torture/pr78305.c: Move dg-do as first directive.
      	* gcc.misc-tests/gcov-3.c: Likewise.
      	* gcc.target/arm/cmse/baseline/cmse-11.c: Move dg-options before dg-add-options.
      	* gcc.target/arm/cmse/baseline/cmse-13.c: Likewise.
      	* gcc.target/arm/cmse/baseline/cmse-2.c: Likewise.
      	* gcc.target/arm/cmse/baseline/cmse-6.c: Likewise.
      	* gcc.target/arm/cmse/baseline/softfp.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard-sp/cmse-13.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard-sp/cmse-5.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard-sp/cmse-7.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard-sp/cmse-8.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard/cmse-13.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard/cmse-5.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard/cmse-7.c: Likewise.
      	* gcc.target/arm/cmse/mainline/hard/cmse-8.c: Likewise.
      	* gcc.target/arm/cmse/mainline/soft/cmse-13.c: Likewise.
      	* gcc.target/arm/cmse/mainline/soft/cmse-5.c: Likewise.
      	* gcc.target/arm/cmse/mainline/soft/cmse-7.c: Likewise.
      	* gcc.target/arm/cmse/mainline/soft/cmse-8.c: Likewise.
      	* gcc.target/arm/cmse/mainline/softfp-sp/cmse-5.c: Likewise.
      	* gcc.target/arm/cmse/mainline/softfp-sp/cmse-7.c: Likewise.
      	* gcc.target/arm/cmse/mainline/softfp-sp/cmse-8.c: Likewise.
      	* gcc.target/arm/cmse/mainline/softfp/cmse-13.c: Likewise.
      	* gcc.target/arm/cmse/mainline/softfp/cmse-5.c: Likewise.
      	* gcc.target/arm/cmse/mainline/softfp/cmse-7.c: Likewise.
      	* gcc.target/arm/cmse/mainline/softfp/cmse-8.c: Likewise.
      	* gcc.target/arm/lp1189445.c: Likewise.
      
      From-SVN: r254445
      Christophe Lyon committed
    • re PR c++/80955 (Macros expanded in definition of user-defined literals) · 7d19c460
      /libcpp
      2017-11-06  Mukesh Kapoor  <mukesh.kapoor@oracle.com>
      
      	PR c++/80955
      	* lex.c (lex_string): When checking for a valid macro for the
      	warning related to -Wliteral-suffix (CPP_W_LITERAL_SUFFIX),
      	check that the macro name does not start with an underscore
      	before calling is_macro().
      
      /gcc/testsuite
      2017-11-06  Mukesh Kapoor  <mukesh.kapoor@oracle.com>
      
      	PR c++/80955
      	* g++.dg/cpp0x/udlit-macros.C: New.
      
      From-SVN: r254443
      Mukesh Kapoor committed
    • [multiple changes] · 16f681db
       2017-11-06  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/69739
      	* trans-expr.c (gfc_map_intrinsic_function): Return false for
      	bounds without the DIM argument instead of ICEing.
      
      2017-11-06  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/69739
      	* gfortran.dg/pr69739.f90: New test.
      
      From-SVN: r254441
      Paul Thomas committed
    • Fix test-suite fallout of default -Wreturn-type. · 19520957
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	* c-c++-common/Wimplicit-fallthrough-8.c: Return a value for
      	functions with non-void return type, or change type to void, or
      	add -Wno-return-type for test.
      	* c-c++-common/asan/pr63638.c (f): Likewise.
      	* c-c++-common/goacc/parallel-1.c (firstprivate): Likewise.
      	* c-c++-common/gomp/sink-1.c (depend): Likewise.
      	* c-c++-common/missing-symbol.c: Likewise.
      	* c-c++-common/pr36513-2.c (main2): Likewise.
      	* c-c++-common/pr36513.c (main1): Likewise.
      	* c-c++-common/pr49706-2.c: Likewise.
      	* c-c++-common/pr65120.c: Likewise.
      	* c-c++-common/tm/volatile-1.c (f): Likewise.
      	* c-c++-common/vector-1.c (f): Likewise.
      	* c-c++-common/vector-2.c (f): Likewise.
      	* g++.dg/abi/abi-tag14.C (f): Likewise.
      	(g): Likewise.
      	* g++.dg/abi/abi-tag18.C (f): Likewise.
      	* g++.dg/abi/abi-tag18a.C (f): Likewise.
      	* g++.dg/abi/covariant2.C (struct c3): Likewise.
      	(struct c7): Likewise.
      	* g++.dg/abi/covariant3.C (c1::f6): Likewise.
      	* g++.dg/abi/mangle7.C (f1): Likewise.
      	* g++.dg/asan/pr81340.C (class e): Likewise.
      	(e::f): Likewise.
      	* g++.dg/concepts/fn8.C (struct S): Likewise.
      	* g++.dg/concepts/pr65575.C (f): Likewise.
      	* g++.dg/concepts/template-parm11.C (f): Likewise.
      	* g++.dg/conversion/op6.C: Likewise.
      	* g++.dg/cpp0x/Wunused-variable-1.C (foo): Likewise.
      	* g++.dg/cpp0x/access01.C: Likewise.
      	* g++.dg/cpp0x/alignas3.C (class alignas): Likewise.
      	* g++.dg/cpp0x/auto2.C (f): Likewise.
      	(struct A): Likewise.
      	(main): Likewise.
      	* g++.dg/cpp0x/constexpr-array17.C (struct D): Likewise.
      	* g++.dg/cpp0x/constexpr-defarg2.C (a): Likewise.
      	(B::foo): Likewise.
      	(B::bar): Likewise.
      	* g++.dg/cpp0x/constexpr-memfn1.C (struct Y): Likewise.
      	* g++.dg/cpp0x/dc1.C (struct D): Likewise.
      	* g++.dg/cpp0x/dc3.C (struct D): Likewise.
      	* g++.dg/cpp0x/decltype12.C: Likewise.
      	* g++.dg/cpp0x/decltype17.C (main): Likewise.
      	* g++.dg/cpp0x/decltype3.C: Likewise.
      	* g++.dg/cpp0x/decltype41.C (struct C): Likewise.
      	(struct D): Likewise.
      	* g++.dg/cpp0x/defaulted28.C (f): Likewise.
      	* g++.dg/cpp0x/enum_base3.C (struct D): Likewise.
      	* g++.dg/cpp0x/gen-attrs-4.C (five): Likewise.
      	* g++.dg/cpp0x/initlist96.C: Likewise.
      	* g++.dg/cpp0x/lambda/lambda-58566.C (struct A): Likewise.
      	* g++.dg/cpp0x/lambda/lambda-conv10.C: Likewise.
      	* g++.dg/cpp0x/lambda/lambda-conv12.C: Likewise.
      	* g++.dg/cpp0x/lambda/lambda-defarg3.C: Likewise.
      	* g++.dg/cpp0x/lambda/lambda-ice3.C (Klass::dostuff): Likewise.
      	* g++.dg/cpp0x/lambda/lambda-ice5.C (foo): Likewise.
      	* g++.dg/cpp0x/lambda/lambda-nested2.C (f1): Likewise.
      	* g++.dg/cpp0x/lambda/lambda-template12.C (class X): Likewise.
      	* g++.dg/cpp0x/lambda/lambda-template2.C (struct T): Likewise.
      	* g++.dg/cpp0x/lambda/lambda-this12.C (struct A): Likewise.
      	* g++.dg/cpp0x/nolinkage1.C (main): Likewise.
      	* g++.dg/cpp0x/nolinkage1a.cc (dummy): Likewise.
      	* g++.dg/cpp0x/nsdmi-template5.C: Likewise.
      	* g++.dg/cpp0x/parse1.C (B::B): Likewise.
      	* g++.dg/cpp0x/pr34054.C (foo): Likewise.
      	* g++.dg/cpp0x/pr47416.C: Likewise.
      	* g++.dg/cpp0x/pr58781.C: Likewise.
      	* g++.dg/cpp0x/pr70538.C: Likewise.
      	* g++.dg/cpp0x/pr81325.C: Likewise.
      	* g++.dg/cpp0x/range-for13.C (begin): Likewise.
      	(end): Likewise.
      	* g++.dg/cpp0x/range-for14.C (begin): Likewise.
      	(end): Likewise.
      	* g++.dg/cpp0x/rv2n.C (test2_18): Likewise.
      	(test2_28): Likewise.
      	(test2_38): Likewise.
      	(test2_58): Likewise.
      	(test2_68): Likewise.
      	(test2_78): Likewise.
      	* g++.dg/cpp0x/rv3n.C (test3_128): Likewise.
      	* g++.dg/cpp0x/static_assert10.C (foo): Likewise.
      	* g++.dg/cpp0x/static_assert11.C (struct A): Likewise.
      	* g++.dg/cpp0x/static_assert12.C: Likewise.
      	* g++.dg/cpp0x/static_assert13.C: Likewise.
      	* g++.dg/cpp0x/trailing1.C (struct A): Likewise.
      	* g++.dg/cpp0x/trailing5.C (foo): Likewise.
      	(bar): Likewise.
      	* g++.dg/cpp0x/variadic114.C: Likewise.
      	* g++.dg/cpp0x/variadic57.C (Dims...>::foo): Likewise.
      	(bar): Likewise.
      	* g++.dg/cpp0x/variadic65.C: Likewise.
      	* g++.dg/cpp0x/variadic66.C (bind): Likewise.
      	* g++.dg/cpp0x/variadic97.C: Likewise.
      	* g++.dg/cpp0x/variadic98.C (__attribute__): Likewise.
      	* g++.dg/cpp1y/auto-fn11.C: Likewise.
      	* g++.dg/cpp1y/auto-fn29.C: Likewise.
      	* g++.dg/cpp1y/auto-fn38.C: Likewise.
      	* g++.dg/cpp1y/constexpr-return2.C: Likewise.
      	* g++.dg/cpp1y/lambda-init7.C (foo): Likewise.
      	* g++.dg/cpp1y/pr63996.C: Likewise.
      	* g++.dg/cpp1y/pr65202.C: Likewise.
      	* g++.dg/cpp1y/pr66443-cxx14.C (Ok): Likewise.
      	* g++.dg/cpp1y/pr79253.C (struct D): Likewise.
      	* g++.dg/cpp1y/static_assert1.C: Likewise.
      	* g++.dg/cpp1y/static_assert2.C: Likewise.
      	* g++.dg/cpp1y/var-templ44.C: Likewise.
      	* g++.dg/cpp1z/fold6.C (f): Likewise.
      	* g++.dg/cpp1z/inline-var2.C (foo): Likewise.
      	* g++.dg/cpp1z/lambda-this1.C (struct B): Likewise.
      	* g++.dg/cpp1z/static_assert-nomsg.C: Likewise.
      	* g++.dg/debug/dwarf-eh-personality-1.C (foobar): Likewise.
      	* g++.dg/debug/dwarf2/dwarf4-typedef.C (struct B): Likewise.
      	* g++.dg/debug/dwarf2/icf.C: Likewise.
      	* g++.dg/debug/dwarf2/pr61433.C (main): Likewise.
      	* g++.dg/debug/nullptr01.C (g): Likewise.
      	* g++.dg/debug/pr16792.C (foo): Likewise.
      	* g++.dg/debug/pr46241.C (class btCollisionWorld): Likewise.
      	* g++.dg/debug/pr46338.C (struct S): Likewise.
      	* g++.dg/debug/pr47106.C (baz): Likewise.
      	(bar): Likewise.
      	(foo): Likewise.
      	* g++.dg/debug/pr71057.C (fn1): Likewise.
      	* g++.dg/debug/pr71432.C (class CLIParameterType): Likewise.
      	(CLIParameterType::checkSwitched): Likewise.
      	* g++.dg/debug/pr80461.C (struct B): Likewise.
      	* g++.dg/dfp/44473-1.C (bar): Likewise.
      	* g++.dg/dfp/44473-2.C (bar): Likewise.
      	(foo): Likewise.
      	* g++.dg/eh/builtin1.C: Likewise.
      	* g++.dg/eh/builtin2.C: Likewise.
      	* g++.dg/eh/builtin3.C: Likewise.
      	* g++.dg/eh/pr45569.C (j): Likewise.
      	* g++.dg/eh/unwind2.C: Likewise.
      	* g++.dg/expr/bitfield11.C: Likewise.
      	* g++.dg/expr/static_cast7.C (f): Likewise.
      	* g++.dg/ext/altivec-14.C: Likewise.
      	* g++.dg/ext/asm13.C (fn1): Likewise.
      	* g++.dg/ext/builtin-object-size3.C: Likewise.
      	* g++.dg/ext/has_nothrow_assign_odr.C (main): Likewise.
      	(S::operator=): Likewise.
      	* g++.dg/ext/label7.C (f): Likewise.
      	* g++.dg/ext/label8.C (f): Likewise.
      	* g++.dg/ext/tmplattr7.C (test): Likewise.
      	* g++.dg/ext/vector8.C (f): Likewise.
      	* g++.dg/ext/visibility/anon1.C: Likewise.
      	* g++.dg/ext/visibility/anon2.C (f): Likewise.
      	* g++.dg/ext/visibility/namespace1.C (__attribute): Likewise.
      	* g++.dg/ext/vla16.C (fn1): Likewise.
      	* g++.dg/goacc/reference.C: Likewise.
      	* g++.dg/gomp/pr37189.C: Likewise.
      	* g++.dg/gomp/pr39495-1.C: Likewise.
      	* g++.dg/gomp/pr39495-2.C: Likewise.
      	* g++.dg/gomp/pr82054.C: Likewise.
      	* g++.dg/inherit/covariant10.C (struct c6): Likewise.
      	(struct c17): Likewise.
      	* g++.dg/inherit/covariant11.C (struct c1): Likewise.
      	(struct c3): Likewise.
      	(struct c11): Likewise.
      	(struct c15): Likewise.
      	* g++.dg/inherit/protected1.C (A::operator==): Likewise.
      	* g++.dg/init/inline1.C (struct A): Likewise.
      	* g++.dg/init/new18.C: Likewise.
      	* g++.dg/init/reference2.C (f): Likewise.
      	* g++.dg/init/reference3.C: Likewise.
      	* g++.dg/init/switch1.C (f): Likewise.
      	* g++.dg/ipa/devirt-10.C (struct wxDCBase): Likewise.
      	* g++.dg/ipa/devirt-13.C (main): Likewise.
      	* g++.dg/ipa/devirt-14.C (main): Likewise.
      	* g++.dg/ipa/devirt-15.C (main): Likewise.
      	* g++.dg/ipa/devirt-16.C (main): Likewise.
      	* g++.dg/ipa/devirt-17.C (main): Likewise.
      	* g++.dg/ipa/devirt-18.C (main): Likewise.
      	* g++.dg/ipa/devirt-19.C: Likewise.
      	* g++.dg/ipa/devirt-21.C (main): Likewise.
      	* g++.dg/ipa/devirt-23.C (main): Likewise.
      	* g++.dg/ipa/devirt-38.C: Likewise.
      	* g++.dg/ipa/devirt-40.C (A::m_fn1): Likewise.
      	* g++.dg/ipa/devirt-41.C (main): Likewise.
      	* g++.dg/ipa/devirt-42.C (main): Likewise.
      	* g++.dg/ipa/devirt-44.C (struct A): Likewise.
      	(main): Likewise.
      	* g++.dg/ipa/devirt-45.C (struct A): Likewise.
      	(main): Likewise.
      	* g++.dg/ipa/devirt-48.C (struct B): Likewise.
      	(struct D): Likewise.
      	* g++.dg/ipa/devirt-52.C: Likewise.
      	* g++.dg/ipa/nothrow-1.C (main): Likewise.
      	* g++.dg/ipa/pr43812.C (LocalSurface::bbox): Likewise.
      	* g++.dg/ipa/pr44372.C: Likewise.
      	* g++.dg/ipa/pr45572-1.C (fgetc_unlocked): Likewise.
      	(putc_unlocked): Likewise.
      	(getline): Likewise.
      	(ferror_unlocked): Likewise.
      	* g++.dg/ipa/pr58371.C: Likewise.
      	* g++.dg/ipa/pr59176.C: Likewise.
      	* g++.dg/ipa/pr60640-1.C (class G): Likewise.
      	* g++.dg/ipa/pr61540.C (struct top): Likewise.
      	* g++.dg/ipa/pr63470.C (class FTjackSupport): Likewise.
      	* g++.dg/ipa/pr63587-1.C: Likewise.
      	* g++.dg/ipa/pr63587-2.C: Likewise.
      	* g++.dg/ipa/pr63838.C (__attribute__): Likewise.
      	* g++.dg/ipa/pr63894.C (J::m_fn3): Likewise.
      	* g++.dg/ipa/pr64068.C (class A): Likewise.
      	(A::m_fn2): Likewise.
      	(class C): Likewise.
      	* g++.dg/ipa/pr64896.C (struct D): Likewise.
      	* g++.dg/ipa/pr65002.C: Likewise.
      	* g++.dg/ipa/pr65008.C (__attribute__): Likewise.
      	* g++.dg/ipa/pr65465.C (struct D): Likewise.
      	* g++.dg/ipa/pr66896.C (struct A): Likewise.
      	* g++.dg/ipa/pr68851.C (class G): Likewise.
      	(C::checkPseudoClass): Likewise.
      	* g++.dg/ipa/pr78211.C: Likewise.
      	* g++.dg/ipa/pr79931.C (AttrImpl::insertBefore): Likewise.
      	* g++.dg/ipa/pure-const-1.C (main): Likewise.
      	* g++.dg/ipa/pure-const-2.C (main): Likewise.
      	* g++.dg/ipa/pure-const-3.C (main): Likewise.
      	* g++.dg/ipa/remref-1.C (main): Likewise.
      	* g++.dg/ipa/remref-2.C (main): Likewise.
      	* g++.dg/lookup/builtin2.C (f): Likewise.
      	* g++.dg/lookup/crash3.C (struct A): Likewise.
      	(struct B): Likewise.
      	(crash): Likewise.
      	* g++.dg/lookup/friend20.C: Likewise.
      	* g++.dg/lookup/pr80891-5.C (vf2_subgraph_iso): Likewise.
      	* g++.dg/lookup/struct2.C (A::c): Likewise.
      	* g++.dg/lto/20080709_0.C (f): Likewise.
      	* g++.dg/lto/20080907_0.C: Likewise.
      	* g++.dg/lto/20080915_0.C (struct Baz): Likewise.
      	* g++.dg/lto/20080916_0.C (g): Likewise.
      	* g++.dg/lto/20081022_0.C (main): Likewise.
      	* g++.dg/lto/20081023_0.C (main): Likewise.
      	* g++.dg/lto/20081118_0.C (foo::method): Likewise.
      	* g++.dg/lto/20081118_1.C (bar::method): Likewise.
      	* g++.dg/lto/20081120-1_0.C: Likewise.
      	* g++.dg/lto/20081120-1_1.C: Likewise.
      	* g++.dg/lto/20081127_1.C (main): Likewise.
      	* g++.dg/lto/20081217-2_0.C (struct A): Likewise.
      	* g++.dg/lto/20090303_0.C: Likewise.
      	* g++.dg/lto/20090311-1_0.C: Likewise.
      	* g++.dg/lto/20090312_0.C: Likewise.
      	* g++.dg/lto/20090315_0.C (main): Likewise.
      	* g++.dg/lto/20091002-1_0.C: Likewise.
      	* g++.dg/lto/20091002-2_0.C (class DataArray): Likewise.
      	* g++.dg/lto/20091002-3_0.C (class DataArray): Likewise.
      	* g++.dg/lto/20091004-1_0.C: Likewise.
      	* g++.dg/lto/20091004-2_0.C: Likewise.
      	* g++.dg/lto/20091004-3_1.C (All_Torus_Intersections): Likewise.
      	* g++.dg/lto/20100721-1_0.C (__gthread_active_p): Likewise.
      	* g++.dg/lto/20101010-1_0.C: Likewise.
      	* g++.dg/lto/20101010-2_0.C: Likewise.
      	* g++.dg/lto/pr45679-1_0.C: Likewise.
      	* g++.dg/lto/pr45679-1_1.C: Likewise.
      	* g++.dg/lto/pr45679-2_0.C: Likewise.
      	* g++.dg/lto/pr48042_0.C (B::x): Likewise.
      	* g++.dg/lto/pr51650-1_0.C (fn): Likewise.
      	(main): Likewise.
      	* g++.dg/lto/pr51650-3_0.C (fn): Likewise.
      	(main): Likewise.
      	* g++.dg/lto/pr63270_1.C: Likewise.
      	* g++.dg/lto/pr65193_0.C: Likewise.
      	* g++.dg/lto/pr65302_0.C: Likewise.
      	* g++.dg/lto/pr65316_0.C: Likewise.
      	* g++.dg/lto/pr65475c_0.C: Likewise.
      	* g++.dg/lto/pr65549_0.C (main): Likewise.
      	* g++.dg/lto/pr69077_0.C (cWeightedStdDev::netPack): Likewise.
      	* g++.dg/lto/pr69589_0.C: Likewise.
      	* g++.dg/opt/combine.C (qvariant_cast): Likewise.
      	(QScriptDebuggerBackendPrivate::trace): Likewise.
      	* g++.dg/opt/complex3.C (j): Likewise.
      	* g++.dg/opt/covariant1.C (struct T): Likewise.
      	* g++.dg/opt/declone3.C (Item::m_fn1): Likewise.
      	* g++.dg/opt/dump1.C (__attribute__): Likewise.
      	* g++.dg/opt/inline15.C (struct C): Likewise.
      	(fn2): Likewise.
      	* g++.dg/opt/local1.C (h): Likewise.
      	* g++.dg/opt/memcpy1.C (csBoxClipper::Clip): Likewise.
      	* g++.dg/opt/new1.C: Likewise.
      	* g++.dg/opt/nrv8.C (main): Likewise.
      	* g++.dg/opt/pr23299.C (struct A): Likewise.
      	(struct B): Likewise.
      	(struct C): Likewise.
      	* g++.dg/opt/pr27826.C (struct Geometry): Likewise.
      	* g++.dg/opt/pr44919.C (back_inserter): Likewise.
      	* g++.dg/opt/pr47615.C (main): Likewise.
      	* g++.dg/opt/pr55329.C (struct A): Likewise.
      	* g++.dg/opt/pr61456.C (Set): Likewise.
      	* g++.dg/opt/pr65003.C (D::foo): Likewise.
      	(F::foo): Likewise.
      	* g++.dg/opt/pr65554.C: Likewise.
      	* g++.dg/opt/pr69432.C (struct C): Likewise.
      	* g++.dg/opt/pr78373.C (struct D): Likewise.
      	(Traits>::m_fn4): Likewise.
      	* g++.dg/opt/pr79267.C (struct F): Likewise.
      	* g++.dg/opt/pr82159-2.C: Likewise.
      	* g++.dg/other/array3.C (reserve): Likewise.
      	* g++.dg/other/crash-5.C (f): Likewise.
      	* g++.dg/other/crash-8.C: Likewise.
      	* g++.dg/other/error34.C (S): Likewise.
      	* g++.dg/other/pr22003.C (c3::func): Likewise.
      	* g++.dg/other/pr24623.C (RefCountPointer): Likewise.
      	* g++.dg/other/pr29610.C (struct __normal_iterator): Likewise.
      	(Painter::for_each): Likewise.
      	(Painter::redraw_window): Likewise.
      	* g++.dg/other/pr42645-1.C (struct S): Likewise.
      	* g++.dg/other/pr42645-2.C (foo): Likewise.
      	(f3): Likewise.
      	* g++.dg/other/pr52048.C: Likewise.
      	* g++.dg/other/typedef3.C (XalanCProcessor::getParseOption): Likewise.
      	* g++.dg/overload/defarg4.C (class foo): Likewise.
      	(bar::Initialize): Likewise.
      	* g++.dg/overload/operator5.C (equalIgnoringCase): Likewise.
      	* g++.dg/overload/ref-conv1.C: Likewise.
      	* g++.dg/overload/template5.C (test): Likewise.
      	* g++.dg/parse/crash40.C (class AAA): Likewise.
      	* g++.dg/parse/crash61.C: Likewise.
      	* g++.dg/parse/crash67.C: Likewise.
      	* g++.dg/parse/ctor5.C: Likewise.
      	* g++.dg/parse/defarg4.C (Foo): Likewise.
      	* g++.dg/parse/defarg6.C: Likewise.
      	* g++.dg/parse/error5.C (class Foo): Likewise.
      	* g++.dg/parse/expr2.C (foo): Likewise.
      	* g++.dg/parse/friend7.C: Likewise.
      	* g++.dg/parse/namespace1.C (bar): Likewise.
      	* g++.dg/parse/namespace9.C (g): Likewise.
      	* g++.dg/parse/ret-type2.C: Likewise.
      	* g++.dg/parse/typedef8.C (foo): Likewise.
      	* g++.dg/pch/static-1.C (LocalStaticTest): Likewise.
      	(main): Likewise.
      	* g++.dg/plugin/diagnostic-test-expressions-1.C (test_structure_references): Likewise.
      	(test_postfix_incdec): Likewise.
      	(test_sizeof): Likewise.
      	(test_alignof): Likewise.
      	(test_prefix_incdec): Likewise.
      	* g++.dg/plugin/dumb-plugin-test-1.C (func): Likewise.
      	* g++.dg/plugin/self-assign-test-1.C (func): Likewise.
      	* g++.dg/plugin/self-assign-test-2.C (func): Likewise.
      	* g++.dg/plugin/self-assign-test-3.C (func): Likewise.
      	* g++.dg/pr55513.C (main): Likewise.
      	* g++.dg/pr55604.C (main): Likewise.
      	* g++.dg/pr57662.C: Likewise.
      	* g++.dg/pr58389.C (F::m_fn1): Likewise.
      	* g++.dg/pr59510.C: Likewise.
      	* g++.dg/pr67989.C: Likewise.
      	* g++.dg/pr70590-2.C: Likewise.
      	* g++.dg/pr70590.C: Likewise.
      	* g++.dg/pr70965.C (foo): Likewise.
      	* g++.dg/pr77550.C: Likewise.
      	* g++.dg/pr80287.C (struct A): Likewise.
      	* g++.dg/pr80707.C (A::m_fn1): Likewise.
      	* g++.dg/pr81194.C: Likewise.
      	* g++.dg/spellcheck-identifiers.C: Likewise.
      	* g++.dg/tc1/dr152.C: Likewise.
      	* g++.dg/template/aggr-init1.C (CreateA): Likewise.
      	* g++.dg/template/anon1.C (struct x): Likewise.
      	(struct vector): Likewise.
      	* g++.dg/template/array29.C: Likewise.
      	* g++.dg/template/array7.C (bar): Likewise.
      	* g++.dg/template/canon-type-8.C: Likewise.
      	* g++.dg/template/conv1.C (First::Foo): Likewise.
      	* g++.dg/template/crash107.C: Likewise.
      	* g++.dg/template/crash23.C (f): Likewise.
      	* g++.dg/template/crash8.C (struct bar): Likewise.
      	* g++.dg/template/defarg4.C (struct A): Likewise.
      	* g++.dg/template/dependent-expr9.C: Likewise.
      	* g++.dg/template/error10.C (Btest): Likewise.
      	* g++.dg/template/friend32.C (f): Likewise.
      	* g++.dg/template/init6.C (Graph::Inner::get): Likewise.
      	(main): Likewise.
      	* g++.dg/template/memfriend7.C (A::h): Likewise.
      	* g++.dg/template/new10.C (Analyzer::ReadDictionary): Likewise.
      	* g++.dg/template/nontype12.C (baz): Likewise.
      	* g++.dg/template/overload12.C (foo2): Likewise.
      	* g++.dg/template/overload5.C (foo::f): Likewise.
      	* g++.dg/template/overload8.C (struct A): Likewise.
      	* g++.dg/template/partial10.C (fn): Likewise.
      	(main): Likewise.
      	* g++.dg/template/partial9.C (f): Likewise.
      	* g++.dg/template/qual1.C (shift_compare): Likewise.
      	* g++.dg/template/show-template-tree-3.C: Likewise.
      	* g++.dg/template/sizeof8.C (S<sizeof): Likewise.
      	* g++.dg/template/sizeof9.C (d): Likewise.
      	* g++.dg/template/spec6.C: Likewise.
      	* g++.dg/template/spec7.C (h): Likewise.
      	* g++.dg/template/typedef8.C: Likewise.
      	* g++.dg/template/using20.C (f): Likewise.
      	* g++.dg/template/vla1.C (label): Likewise.
      	* g++.dg/tm/cgraph_edge.C: Likewise.
      	* g++.dg/tm/pr46646.C: Likewise.
      	* g++.dg/tm/pr47554.C (class list): Likewise.
      	* g++.dg/tm/pr47573.C (getStringHeight): Likewise.
      	* g++.dg/tm/unsafe1.C (f): Likewise.
      	* g++.dg/tm/unsafe2.C (g): Likewise.
      	* g++.dg/torture/pr70971.C: Likewise.
      	* g++.dg/torture/20070621-1.C: Likewise.
      	* g++.dg/torture/20090329-1.C: Likewise.
      	* g++.dg/torture/20141013.C: Likewise.
      	* g++.dg/torture/pr33134.C (fxsaveGIF): Likewise.
      	* g++.dg/torture/pr33340.C (new): Likewise.
      	* g++.dg/torture/pr33627.C (class pf_Frag): Likewise.
      	* g++.dg/torture/pr34222.C (readFloat): Likewise.
      	* g++.dg/torture/pr34241.C (test): Likewise.
      	* g++.dg/torture/pr34641.C: Likewise.
      	* g++.dg/torture/pr34850.C (OctetString::operator^=): Likewise.
      	* g++.dg/torture/pr35164-1.C: Likewise.
      	* g++.dg/torture/pr36745.C: Likewise.
      	* g++.dg/torture/pr38705.C (S::bar): Likewise.
      	* g++.dg/torture/pr38811.C (AbcAbcdTracer::TestIsoAbcde): Likewise.
      	* g++.dg/torture/pr39362.C: Likewise.
      	* g++.dg/torture/pr39732.C (f): Likewise.
      	* g++.dg/torture/pr40991.C: Likewise.
      	* g++.dg/torture/pr41775.C: Likewise.
      	* g++.dg/torture/pr42183.C: Likewise.
      	* g++.dg/torture/pr42450.C: Likewise.
      	* g++.dg/torture/pr42704.C: Likewise.
      	* g++.dg/torture/pr42760.C (baz): Likewise.
      	(bar): Likewise.
      	* g++.dg/torture/pr42773.C (Cell::obscuringCells): Likewise.
      	* g++.dg/torture/pr42883.C: Likewise.
      	* g++.dg/torture/pr43905.C (struct Matrix): Likewise.
      	* g++.dg/torture/pr44148.C: Likewise.
      	* g++.dg/torture/pr44295.C: Likewise.
      	* g++.dg/torture/pr44357.C: Likewise.
      	* g++.dg/torture/pr44813.C: Likewise.
      	* g++.dg/torture/pr45580.C: Likewise.
      	* g++.dg/torture/pr45874.C (Mpeg2FrameConstructor::ParsePictureHeader): Likewise.
      	* g++.dg/torture/pr45877.C: Likewise.
      	* g++.dg/torture/pr46383.C: Likewise.
      	* g++.dg/torture/pr46469.C (__attribute__): Likewise.
      	(identifierByPthreadHandle): Likewise.
      	* g++.dg/torture/pr47313.C: Likewise.
      	* g++.dg/torture/pr48271.C: Likewise.
      	* g++.dg/torture/pr49615.C (Dispatch): Likewise.
      	(C::f): Likewise.
      	* g++.dg/torture/pr49770.C (main): Likewise.
      	* g++.dg/torture/pr49938.C: Likewise.
      	* g++.dg/torture/pr51436.C: Likewise.
      	* g++.dg/torture/pr51482.C (anim_track_bez_wvect::tangent): Likewise.
      	* g++.dg/torture/pr51737.C (id_state::start_file): Likewise.
      	* g++.dg/torture/pr51959.C: Likewise.
      	* g++.dg/torture/pr52772.C (class c6): Likewise.
      	* g++.dg/torture/pr52918-2.C (__cxa_allocate_exception): Likewise.
      	* g++.dg/torture/pr53011.C: Likewise.
      	* g++.dg/torture/pr53602.C: Likewise.
      	* g++.dg/torture/pr53752.C: Likewise.
      	* g++.dg/torture/pr54838.C: Likewise.
      	* g++.dg/torture/pr54902.C: Likewise.
      	* g++.dg/torture/pr56029.C: Likewise.
      	* g++.dg/torture/pr56768.C (operator!=): Likewise.
      	* g++.dg/torture/pr57107.C: Likewise.
      	* g++.dg/torture/pr57140.C: Likewise.
      	* g++.dg/torture/pr57235.C: Likewise.
      	* g++.dg/torture/pr58252.C: Likewise.
      	* g++.dg/torture/pr58555.C: Likewise.
      	* g++.dg/torture/pr59208.C (get_dbx_doc): Likewise.
      	* g++.dg/torture/pr60438-1.C (foo): Likewise.
      	* g++.dg/torture/pr60746.C (Two::run): Likewise.
      	* g++.dg/torture/pr61554.C: Likewise.
      	* g++.dg/torture/pr63419.C: Likewise.
      	* g++.dg/torture/pr63476.C: Likewise.
      	* g++.dg/torture/pr63512.C (C::m_fn3): Likewise.
      	* g++.dg/torture/pr64282.C (class H): Likewise.
      	* g++.dg/torture/pr64378.C (struct top): Likewise.
      	* g++.dg/torture/pr64565.C: Likewise.
      	* g++.dg/torture/pr64568-2.C: Likewise.
      	* g++.dg/torture/pr64669.C (Lex::advance_one_char): Likewise.
      	* g++.dg/torture/pr64686.C (B::m_fn1): Likewise.
      	* g++.dg/torture/pr64978.C (B::m_fn2): Likewise.
      	* g++.dg/torture/pr64995.C (A::m_fn2): Likewise.
      	* g++.dg/torture/pr65655.C: Likewise.
      	* g++.dg/torture/pr65851.C: Likewise.
      	* g++.dg/torture/pr67055.C: Likewise.
      	* g++.dg/torture/pr67191.C: Likewise.
      	* g++.dg/torture/pr68852.C: Likewise.
      	* g++.dg/torture/pr69264.C: Likewise.
      	* g++.dg/torture/pr77674.C: Likewise.
      	* g++.dg/torture/pr77947.C (B::m_fn2): Likewise.
      	* g++.dg/torture/pr78268.C: Likewise.
      	* g++.dg/torture/pr78507.C: Likewise.
      	* g++.dg/torture/pr78692.C (F::g): Likewise.
      	* g++.dg/torture/pr80171.C: Likewise.
      	* g++.dg/torture/pr82154.C (class f): Likewise.
      	(f::k): Likewise.
      	* g++.dg/tree-ssa/copyprop.C: Likewise.
      	* g++.dg/tree-ssa/pr22444.C: Likewise.
      	* g++.dg/tree-ssa/pr23948.C (make_scheduler_request): Likewise.
      	* g++.dg/tree-ssa/pr24172.C (dummy): Likewise.
      	* g++.dg/tree-ssa/pr24351-3.C: Likewise.
      	* g++.dg/tree-ssa/pr27283.C: Likewise.
      	* g++.dg/tree-ssa/pr27291.C: Likewise.
      	* g++.dg/tree-ssa/pr27548.C: Likewise.
      	* g++.dg/tree-ssa/pr34355.C (Parse_Float): Likewise.
      	* g++.dg/tree-ssa/pr42337.C: Likewise.
      	* g++.dg/tree-ssa/pred-1.C (main): Likewise.
      	* g++.dg/ubsan/pr65019.C (C::foo): Likewise.
      	* g++.dg/ubsan/pr65583.C: Likewise.
      	* g++.dg/vect/pr60836.cc (norm_): Likewise.
      	* g++.dg/vect/pr68145.cc: Likewise.
      	* g++.dg/vect/pr70729-nest.cc (my_alloc): Likewise.
      	* g++.dg/vect/pr70729.cc (my_alloc): Likewise.
      	* g++.dg/warn/Waddress-3.C: Likewise.
      	* g++.dg/warn/Wconversion-null-2.C (warn_for___null): Likewise.
      	* g++.dg/warn/Wnull-conversion-2.C (main): Likewise.
      	* g++.dg/warn/Wparentheses-10.C: Likewise.
      	* g++.dg/warn/Wparentheses-11.C: Likewise.
      	* g++.dg/warn/Wparentheses-12.C: Likewise.
      	* g++.dg/warn/Wparentheses-25.C: Likewise.
      	* g++.dg/warn/Wparentheses-6.C: Likewise.
      	* g++.dg/warn/Wparentheses-7.C: Likewise.
      	* g++.dg/warn/Wparentheses-8.C: Likewise.
      	* g++.dg/warn/Wparentheses-9.C: Likewise.
      	* g++.dg/warn/Wshadow-5.C: Likewise.
      	* g++.dg/warn/Wtype-limits-Wextra.C (ff): Likewise.
      	(gg): Likewise.
      	* g++.dg/warn/Wtype-limits-no.C (ff): Likewise.
      	(gg): Likewise.
      	* g++.dg/warn/Wtype-limits.C (ff): Likewise.
      	(gg): Likewise.
      	* g++.dg/warn/Wunused-local-typedefs.C: Likewise.
      	* g++.dg/warn/Wzero-as-null-pointer-constant-5.C: Likewise.
      	* g++.dg/warn/pmf1.C (a::f): Likewise.
      	* g++.old-deja/g++.benjamin/p13417.C: Likewise.
      	* g++.old-deja/g++.brendan/crash24.C (main): Likewise.
      	* g++.old-deja/g++.ext/constructor.C: Likewise.
      	* g++.old-deja/g++.ext/namedret1.C (f): Likewise.
      	* g++.old-deja/g++.ext/namedret3.C: Likewise.
      	* g++.old-deja/g++.ext/return1.C: Likewise.
      	* g++.old-deja/g++.jason/anon4.C (main): Likewise.
      	* g++.old-deja/g++.jason/enum6.C: Likewise.
      	* g++.old-deja/g++.jason/lineno2.C (main): Likewise.
      	* g++.old-deja/g++.jason/lineno3.C: Likewise.
      	* g++.old-deja/g++.jason/lineno4.C: Likewise.
      	* g++.old-deja/g++.jason/new2.C (main): Likewise.
      	* g++.old-deja/g++.jason/new4.C (main): Likewise.
      	* g++.old-deja/g++.jason/shadow1.C (main): Likewise.
      	* g++.old-deja/g++.jason/tempcons.C (struct A): Likewise.
      	* g++.old-deja/g++.jason/thunk2.C (main): Likewise.
      	* g++.old-deja/g++.law/builtin1.C (main): Likewise.
      	* g++.old-deja/g++.law/enum9.C: Likewise.
      	* g++.old-deja/g++.law/except3.C: Likewise.
      	* g++.old-deja/g++.law/init6.C: Likewise.
      	* g++.old-deja/g++.law/profile1.C (main): Likewise.
      	* g++.old-deja/g++.law/shadow2.C (main): Likewise.
      	* g++.old-deja/g++.law/temps4.C (main): Likewise.
      	* g++.old-deja/g++.mike/bool2.C (main): Likewise.
      	* g++.old-deja/g++.mike/eh1.C: Likewise.
      	* g++.old-deja/g++.mike/eh10.C: Likewise.
      	* g++.old-deja/g++.mike/eh13.C (main): Likewise.
      	* g++.old-deja/g++.mike/eh16.C: Likewise.
      	* g++.old-deja/g++.mike/eh17.C: Likewise.
      	* g++.old-deja/g++.mike/eh2.C: Likewise.
      	* g++.old-deja/g++.mike/eh23.C: Likewise.
      	* g++.old-deja/g++.mike/eh24.C: Likewise.
      	* g++.old-deja/g++.mike/eh25.C: Likewise.
      	* g++.old-deja/g++.mike/eh26.C: Likewise.
      	* g++.old-deja/g++.mike/eh27.C: Likewise.
      	* g++.old-deja/g++.mike/eh28.C: Likewise.
      	* g++.old-deja/g++.mike/eh29.C: Likewise.
      	* g++.old-deja/g++.mike/eh30.C: Likewise.
      	* g++.old-deja/g++.mike/eh31.C: Likewise.
      	* g++.old-deja/g++.mike/eh35.C: Likewise.
      	* g++.old-deja/g++.mike/eh36.C: Likewise.
      	* g++.old-deja/g++.mike/eh37.C: Likewise.
      	* g++.old-deja/g++.mike/eh38.C: Likewise.
      	* g++.old-deja/g++.mike/eh39.C: Likewise.
      	* g++.old-deja/g++.mike/eh40.C: Likewise.
      	* g++.old-deja/g++.mike/eh47.C: Likewise.
      	* g++.old-deja/g++.mike/eh50.C: Likewise.
      	* g++.old-deja/g++.mike/eh51.C: Likewise.
      	* g++.old-deja/g++.mike/eh7.C: Likewise.
      	* g++.old-deja/g++.mike/eh8.C: Likewise.
      	* g++.old-deja/g++.mike/eh9.C: Likewise.
      	* g++.old-deja/g++.mike/mangle1.C: Likewise.
      	* g++.old-deja/g++.mike/p5958.C: Likewise.
      	* g++.old-deja/g++.mike/p6004.C: Likewise.
      	* g++.old-deja/g++.mike/p700.C: Likewise.
      	* g++.old-deja/g++.mike/p7912.C: Likewise.
      	* g++.old-deja/g++.mike/p811.C (main): Likewise.
      	* g++.old-deja/g++.mike/virt4.C (main): Likewise.
      	* g++.old-deja/g++.oliva/nameret1.C: Likewise.
      	* g++.old-deja/g++.oliva/nameret2.C: Likewise.
      	* g++.old-deja/g++.other/decl1.C (bar): Likewise.
      	* g++.old-deja/g++.other/expr1.C (struct T): Likewise.
      	(main): Likewise.
      	* g++.old-deja/g++.other/inline8.C (main): Likewise.
      	* g++.old-deja/g++.other/loop1.C: Likewise.
      	* g++.old-deja/g++.other/syntax1.C (main): Likewise.
      	* g++.old-deja/g++.pt/repo3.C (main): Likewise.
      	* g++.old-deja/g++.robertl/eb27.C (main): Likewise.
      	* g++.old-deja/g++.robertl/eb83.C (main): Likewise.
      	* gcc.dg/pr44545.c: Likewise.
      	* obj-c++.dg/comp-types-8.mm: Likewise.
      	* obj-c++.dg/demangle-3.mm: Likewise.
      	* obj-c++.dg/super-class-1.mm: Likewise.
      
      From-SVN: r254440
      Martin Liska committed
    • rs6000: Implement insn_cost for mfcr, mfcrf · c3e150d2
      This gives mfcrf a cost of three integer insns, just like we do for sync
      and load-with-reservation already.
      
      
      	* config/rs6000/rs6000.c (rs6000_insn_cost): Handle TYPE_MFCR and
      	TYPE_MFCRF.
      
      From-SVN: r254439
      Segher Boessenkool committed
    • Fix all tests that fail with -sanitize=return. · 23dbc169
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	* c-c++-common/dfp/call-by-value.c (foo32): Return a default
      	value of change return type to void.
      	(foo64): Likewise.
      	(foo128): Likewise.
      	* g++.dg/bprob/g++-bprob-1.C: Likewise.
      	* g++.dg/cpp0x/lambda/lambda-template.C (f): Likewise.
      	* g++.dg/cpp0x/range-for6.C (foo): Likewise.
      	* g++.dg/cpp0x/udlit-template.C: Likewise.
      	* g++.dg/cpp1z/eval-order3.C (struct A): Likewise.
      	(operator>>): Likewise.
      	* g++.dg/expr/cond12.C (struct X): Likewise.
      	(X::operator=): Likewise.
      	* g++.dg/gcov/gcov-1.C: Likewise.
      	* g++.dg/gcov/gcov-threads-1.C (ContentionNoDeadlock_thread): Likewise.
      	* g++.dg/ipa/devirt-21.C: Likewise.
      	* g++.dg/ipa/devirt-23.C: Likewise.
      	* g++.dg/ipa/devirt-34.C (t): Likewise.
      	* g++.dg/missing-return.C: New test. Likewise.
      	* g++.dg/opt/20050511-1.C (bar): Likewise.
      	* g++.dg/opt/const3.C (A::foo1): Likewise.
      	(A::foo2): Likewise.
      	* g++.dg/opt/pr23299.C (E::c): Likewise.
      	* g++.dg/other/copy2.C (A::operator=): Likewise.
      	* g++.dg/overload/addr1.C: Likewise.
      	* g++.dg/pr48484.C: Likewise.
      	* g++.dg/tls/thread_local3.C (thread_main): Likewise.
      	* g++.dg/tls/thread_local3g.C (thread_main): Likewise.
      	* g++.dg/tls/thread_local5.C (thread_main): Likewise.
      	* g++.dg/tls/thread_local5g.C (thread_main): Likewise.
      	* g++.dg/tls/thread_local6.C (thread_main): Likewise.
      	* g++.dg/tls/thread_local6g.C (thread_main): Likewise.
      	* g++.dg/torture/pr34850.C (OctetString::operator^=): Likewise.
      	* g++.dg/tree-prof/pr79259.C (fn2): Likewise.
      	* g++.dg/tree-ssa/pr33604.C (struct Value): Likewise.
      	* g++.dg/tree-ssa/pr81408.C (struct p): Likewise.
      	(av): Likewise.
      	* g++.dg/warn/string1.C (test): Likewise.
      
      From-SVN: r254438
      Martin Liska committed
    • Instrument function exit with __builtin_unreachable in C++ · 1b6fa695
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	PR middle-end/82404
      	* c-opts.c (c_common_post_options): Set -Wreturn-type for C++
      	FE.
      	* c.opt: Set default value of warn_return_type.
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	PR middle-end/82404
      	* constexpr.c (cxx_eval_builtin_function_call): Handle
      	__builtin_unreachable call.
      	(get_function_named_in_call): Declare function earlier.
      	(constexpr_fn_retval): Skip __builtin_unreachable.
      	* cp-gimplify.c (cp_ubsan_maybe_instrument_return): Rename to
      	...
      	(cp_maybe_instrument_return): ... this.
      	(cp_genericize): Call the function unconditionally.
      2017-11-06  Martin Liska  <mliska@suse.cz>
      
      	PR middle-end/82404
      	* options.c (gfc_post_options): Set default value of
      	-Wreturn-type to false.
      
      From-SVN: r254437
      Martin Liska committed
    • Rework vrp_int_const_binop interface · 3232f052
      ...to avoid a warning about uninitialised wide_ints.
      
      2017-11-06  Richard Sandiford  <richard.sandiford@linaro.org>
      
      gcc/
      	* tree-vrp.c (vrp_int_const_binop): Return true on success and
      	return the value by pointer.
      	(extract_range_from_multiplicative_op_1): Update accordingly.
      	Return as soon as an operation fails.
      
      From-SVN: r254436
      Richard Sandiford committed
    • Daily bump. · 469f5da7
      From-SVN: r254435
      GCC Administrator committed
  3. 05 Nov, 2017 1 commit
    • re PR fortran/82471 (Reorder loop for unfavorable index ordering in DO CONCURRENT and FORALL) · d88412fc
      2017-11-05  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/82471
      	* lang.opt (ffrontend-loop-interchange): New option.
      	(Wfrontend-loop-interchange): New option.
      	* options.c (gfc_post_options): Handle ffrontend-loop-interchange.
      	* frontend-passes.c (gfc_run_passes): Run
      	optimize_namespace if flag_frontend_optimize or
      	flag_frontend_loop_interchange are set.
      	(optimize_namespace): Run functions according to flags set;
      	also call index_interchange.
      	(ind_type): New function.
      	(has_var): New function.
      	(index_cost): New function.
      	(loop_comp): New function.
      
      2017-11-05  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/82471
      	* gfortran.dg/loop_interchange_1.f90: New test.
      
      From-SVN: r254430
      Thomas Koenig committed