1. 23 Jan, 2017 14 commits
    • [multiple changes] · 13230c68
      2017-01-23  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* checks.adb: Minor fix in comment.
      
      2017-01-23  Philippe Gil  <gil@adacore.com>
      
      	* g-debpoo.adb (Do_Report) remove freed chunks from chunks
      	count in Sort = Memory_Usage or Allocations_Count
      
      2017-01-23  Justin Squirek  <squirek@adacore.com>
      
      	* sem_ch3.adb: Code cleanup.
      
      2017-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_prag.adb (Analyze_Refined_Depends_In_Decl_Part): Move all global
      	variables to the local variable section. Update the profile
      	of various nested routine that previously had visibility
      	of those globals. One the matching phase has completed,
      	remove certain classes of clauses which are considered noise.
      	(Check_Dependency_Clause): Properly detect a match between two
      	'Result attributes. Update the various post-match cases to use
      	Is_Already_Matched as this routine now automatically recognizes
      	a previously matched 'Result attribute.
      	(Is_Already_Matched): New routine.
      	(Remove_Extra_Clauses): New routine.
      	(Report_Extra_Clauses): Remove the detection of ... => null
      	clauses as this is now done in Remove_Extra_Clauses.
      
      From-SVN: r244782
      Arnaud Charlet committed
    • Fix typo. · 0d1e3cc9
      From-SVN: r244781
      Arnaud Charlet committed
    • [multiple changes] · 6adb6030
      2017-01-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_aggr.adb (Resolve_Array_Aggregate): In ASIS mode do not
      	report on spurious overlaps between values involving a subtype
      	with a static predicate, because the expansion of such a subtype
      	into individual ranges in inhibited in ASIS mode.
      
      2017-01-23  Justin Squirek  <squirek@adacore.com>
      
      	* sem_ch3.adb (Analyze_Declarations): Add detection
      	of an edge case and delay freezing if it is present.
      
      From-SVN: r244780
      Arnaud Charlet committed
    • [testsuite] Fix FAIL: gcc.dg/lto/pr69188 on bare-metal targets · d8ae8d16
      	PR lto/69188
      	* gcc.dg/lto/pr69188_0.c: Require profiling support for testcase.
      
      From-SVN: r244779
      Kyrylo Tkachov committed
    • sem_ch3.adb, [...]: Minor reformatting. · f991bd8e
      2017-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch3.adb, exp_spark.adb, exp_attr.adb, sem_ch9.adb, sem_prag.adb,
      	sem_util.adb, sem_warn.adb, exp_ch3.adb: Minor reformatting.
      
      2017-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* freeze.adb (Freeze_Subprogram): Ensure that all anonymous
      	access-to-subprogram types inherit the convention of the
      	associated subprogram.	(Set_Profile_Convention): New routine.
      	* sem_ch6.adb (Check_Conformance): Do not compare the conventions
      	of the two entities directly, use Conventions_Match to account
      	for anonymous access-to-subprogram and subprogram types.
      	(Conventions_Match): New routine.
      
      From-SVN: r244778
      Hristian Kirtchev committed
    • exp_spark.adb (Expand_SPARK_Attribute_Reference): For attributes which return Universal_Integer... · d553a695
      2017-01-23  Claire Dross  <dross@adacore.com>
      
      	* exp_spark.adb (Expand_SPARK_Attribute_Reference): For attributes
      	which return Universal_Integer, force the overflow check flag for
      	Length and Range_Length for types as big as Long_Long_Integer.
      
      From-SVN: r244777
      Claire Dross committed
    • [multiple changes] · 6d67bea9
      2017-01-23  Claire Dross  <dross@adacore.com>
      
      	* exp_spark.adb (Expand_SPARK_Attribute_Reference):  For
      	attributes which return Universal_Integer, introduce a conversion
      	to the expected type with the appropriate check flags set.
      	* sem_res.adb (Resolve_Range): The higher bound can be in Typ's
      	base type if the range is null. It may still be invalid if it
      	is higher than the lower bound. This is checked later in the
      	context in which the range appears.
      
      2017-01-23  Pierre-Marie de Rodat  <derodat@adacore.com>
      
      	* scos.ads: Introduce a constant to represent ignored
      	dependencies in SCO_Unit_Table_Entry.
      
      From-SVN: r244776
      Arnaud Charlet committed
    • [multiple changes] · 64a4f612
      2017-01-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch9.adb (Expand_N_Protected_Type_Declaration): Remove extra
      	spaces from error messages.
      
      2017-01-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch3.adb (Check_Large_Modular_Array): New procedure,
      	subsidiary to Expand_N_Object_ Declaration, to compute a guard on
      	an object declaration for an array type with a modular index type
      	with the size of Long_Long_Integer. Special processing is needed
      	in this case to compute reliably the size of the object, and
      	eventually  to raise Storage_Error, when wrap-around arithmetic
      	might compute a meangingless size for the object.
      
      2017-01-23  Justin Squirek  <squirek@adacore.com>
      
      	* a-wtenau.adb, par-endh.adb, sem_prag.adb,
      	sem_type.adb: Code cleanups.
      
      From-SVN: r244775
      Arnaud Charlet committed
    • sem_res.adb (Resolve_Call): In the part of the code where it is deciding whether… · be4e989c
      sem_res.adb (Resolve_Call): In the part of the code where it is deciding whether to turn the call into an...
      
      2017-01-23  Bob Duff  <duff@adacore.com>
      
      	* sem_res.adb (Resolve_Call): In the part of the code where
      	it is deciding whether to turn the call into an indexed
      	component, avoid doing so if the call is to an instance of
      	Unchecked_Conversion. Otherwise, the compiler turns it into an
      	indexed component, and resolution of that turns it back into a
      	function call, and so on, resulting in infinite recursion.
      	* sem_util.adb (Needs_One_Actual): If the first formal has a
      	default, then return False.
      
      From-SVN: r244774
      Bob Duff committed
    • re PR lto/79061 ([LTO][ASAN] LTO plus ASAN fails with "AddressSanitizer:… · e3d53f96
      re PR lto/79061 ([LTO][ASAN] LTO plus ASAN fails with "AddressSanitizer: initialization-order-fiasco")
      
      Revert fix for PR lto/79061 due to this regresses compile-time by 100%
      on some fortran cases.
      
      From-SVN: r244773
      Maxim Ostapenko committed
    • [ARM,AArch64][testsuite] Fix format string in AdvSIMD tests. · 54d7c70c
      2017-01-23  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h (CHECK_POLY): New.
      	(CHECK_RESULTS_NAMED_NO_FP16): Call CHECK_POLY instead of CHECK
      	for poly*_t types.
      	* gcc.target/aarch64/advsimd-intrinsics/vcnt.c (FNNAME): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vcombine.c (void
      	exec_vcombine): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vcreate.c (FNNAME): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vget_high.c (void exec_vget_high): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vget_low.c (void exec_vget_low): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vldX.c (void exec_vldX): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c (void exec_vldX_dup): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vldX_lane.c (void exec_vldX_lane): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vmul.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vmvn.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vqtbX.c (void exec_vqtbX): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p128.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vrev.c (void exec_vrev): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vsXi_n.inc: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vshuffle.inc: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vsli_n.c (void vsli_extra): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vsri_n.c (void vsri_extra): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vstX_lane.c (void exec_vstX_lane): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vtbX.c (void exec_vtbX): Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/p64_p128.c (int main):
      	Likewise.
      	(TEST_VGET_LANE): Cast to uint to avoid warning.
      	* gcc.target/aarch64/advsimd-intrinsics/unary_sat_op.inc (void
      	FNNAME): Fix PRIx format for int16_t, int32_t, uint16_t, uint32_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vfms_vfma_n.c (void
      	exec_vfma_vfms_n): Fix PRIx format for float64_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vmovn.c (void exec_vmovn):
      	Fix PRIx format for int8_t, int16_t, uint8_t, uint16_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c (void
      	exec_vmul_lane): Fix PRIx format for int16_t, uint16_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vmul_n.c: Likewise.
      	* gcc.target/aarch64/advsimd-intrinsics/vmull.c (void exec_vmull):
      	Fix PRIx format for int16_t, int64_t, uint16_t, uint64_t. Call
      	CHECK_POLY instead of CHECK for poly64_t types.
      	* gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c (void
      	exec_vmull_lane): Fix PRIx format for int64_t, uint64_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vpXXX.inc:
      	Fix PRIx format for int8_t, int16_t, uint8_t, uint16_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vqabs.c (void
      	vqabs_extra): Fix PRIx format for int16_t, int32_t, uint16_t,
      	uint32_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vqdmull.c: Fix PRIx format
      	for int32_t, int64_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vqneg.c (void
      	vqneg_extra): Fix PRIx format for int16_t, int32_t.
      	* gcc.target/aarch64/advsimd-intrinsics/vreinterpret_p64.c
      	(TEST_VREINTERPRET_TO_POLY): New. (main): Call
      	TEST_VREINTERPRET_TO_POLY instead of TEST_VREINTERPRET where
      	needed.
      
      From-SVN: r244772
      Christophe Lyon committed
    • patch_tester.sh (TESTLOGS): Remove $TARGET/libjava/testsuite/libjava.sum. · f9e37186
      	* patch_tester.sh (TESTLOGS): Remove
      	$TARGET/libjava/testsuite/libjava.sum.
      
      From-SVN: r244771
      Gerald Pfeifer committed
    • * doc/xml/manual/debug.xml: code.google.com uses https now. · cd308313
      From-SVN: r244770
      Gerald Pfeifer committed
    • Daily bump. · 8fcd76ca
      From-SVN: r244769
      GCC Administrator committed
  2. 22 Jan, 2017 9 commits
  3. 21 Jan, 2017 13 commits
    • extend.texi (Thread-Local): Change www.akkadia.org reference to https. · e51290d7
      	* doc/extend.texi (Thread-Local): Change www.akkadia.org reference
      	to https.
      	* doc/invoke.texi (Code Gen Options): Ditto.
      
      From-SVN: r244751
      Gerald Pfeifer committed
    • gfc-internals.texi (Symbol Versioning): Change references to www.akkadia.org to https. · d294599a
      	* gfc-internals.texi (Symbol Versioning): Change references
      	to www.akkadia.org to https.
      
      From-SVN: r244750
      Gerald Pfeifer committed
    • re PR lto/78407 (LTO breaks separate overriding of symbol aliases) · a6a70dca
      	PR lto/78407
      	* cfg.c (update_bb_profile_for_threading): Fix updating of probablity.
      
      From-SVN: r244749
      Jan Hubicka committed
    • Make poisoned hashes SFINAE away the call operator of the hash. · 509912a6
      * include/bits/functional_hash.h
      (__poison_hash::__enable_hash_call): New.
      * include/std/optional (__optional_hash_call_base): New.
      (hash<optional<_Tp>>): Derive from the new base,
      move the hash function into that base.
      * include/std/variant (__variant_hash_call_base_impl): New.
      (__variant_hash_call_base): Likewise.
      (hash<variant<_Types...>>): Derive from the new base,
      move the hash function into that base.
      * testsuite/20_util/optional/hash.cc: Add tests for is_callable.
      * testsuite/20_util/variant/hash.cc: Likewise.
      
      From-SVN: r244748
      Ville Voutilainen committed
    • re PR testsuite/79169 (g++.dg/warn/Wduplicated-branches1.C fails on powerpc… · c31d5fce
      re PR testsuite/79169 (g++.dg/warn/Wduplicated-branches1.C fails on powerpc since its introduction in r244705)
      
      	PR testsuite/79169
      	* g++.dg/warn/Wduplicated-branches1.C: Use signed char.
      
      From-SVN: r244747
      Marek Polacek committed
    • * gcc.dg/tree-ssa/pr77445-2.c: Adjust template. · 25cb56c3
      From-SVN: r244746
      Jan Hubicka committed
    • sem_eval.adb (Compile_Time_Compare): Reinstate the expr+literal (etc) optimizations when... · 22564ca9
      	* sem_eval.adb (Compile_Time_Compare): Reinstate the expr+literal (etc)
      	optimizations when the type is modular and the offsets are equal.
      
      From-SVN: r244745
      Eric Botcazou committed
    • gfortran.h (gfc_extract_int): Change return type to bool. · 51f03c6b
      	* gfortran.h (gfc_extract_int): Change return type to bool.  Add
      	int argument with = 0.
      	* decl.c (gfc_match_kind_spec): Adjust gfc_extract_int caller, pass
      	1 as new last argument to it, don't emit gfc_error.
      	(match_char_kind): Likewise.
      	(gfc_match_decl_type_spec): Use gfc_get_string ("%s", x) instead of
      	gfc_get_string (x).
      	(gfc_match_derived_decl, match_binding_attributes): Likewise.
      	(gfc_match_structure_decl): Don't sprintf back to name, call
      	get_struct_decl directly with gfc_dt_upper_string (name) result.
      	* trans-stmt.c (gfc_trans_allocate): Use gfc_get_string ("%s", x)
      	instead of gfc_get_string (x).
      	* module.c (gfc_dt_lower_string, gfc_dt_upper_string,
      	gfc_match_use, gfc_match_submodule, find_true_name, mio_pool_string,
      	mio_symtree_ref, mio_expr, mio_omp_udr_expr, load_generic_interfaces,
      	load_omp_udrs, load_needed, read_module, dump_module,
      	create_intrinsic_function, import_iso_c_binding_module,
      	create_int_parameter, create_int_parameter_array, create_derived_type,
      	use_iso_fortran_env_module): Likewise.
      	* error.c (gfc_diagnostic_starter, gfc_diagnostic_start_span): Use
      	pp_verbatim (context->printer, "%s", x) instead of
      	pp_verbatim (context->printer, x).
      	* match.c (gfc_match_small_int): Adjust gfc_extract_int caller, pass
      	1 as new last argument to it, don't emit gfc_error.
      	(gfc_match_small_int_expr): Likewise.
      	* iresolve.c (gfc_get_string): Optimize format "%s" case.
      	(resolve_bound): Use gfc_get_string ("%s", x) instead of
      	gfc_get_string (x).
      	(resolve_transformational): Formatting fix.
      	(gfc_resolve_char_achar): Change name argument to bool is_achar,
      	use a single format string and if is_achar add "a" before "char".
      	(gfc_resolve_achar, gfc_resolve_char): Adjust callers.
      	* expr.c (gfc_extract_int): Change return type to bool, return true
      	if some error occurred.  Add REPORT_ERROR argument, if non-zero
      	call either gfc_error or gfc_error_now depending on its sign.
      	* arith.c (arith_power): Adjust gfc_extract_int caller.
      	* symbol.c (gfc_add_component): Use gfc_get_string ("%s", x) instead
      	of gfc_get_string (x).
      	(gfc_new_symtree, gfc_delete_symtree, gfc_get_uop, gfc_new_symbol,
      	gfc_get_gsymbol, generate_isocbinding_symbol): Likewise.
      	* openmp.c (gfc_match_omp_clauses): Adjust gfc_extract_int caller, pass
      	-1 as new last argument to it, don't emit gfc_error_now.
      	(gfc_match_omp_declare_reduction): Use gfc_get_string ("%s", x)
      	instead of gfc_get_string (x).
      	* check.c (kind_check): Adjust gfc_extract_int caller.
      	* intrinsic.c (add_sym, find_sym, make_alias): Use
      	gfc_get_string ("%s", x) instead of gfc_get_string (x).
      	* simplify.c (get_kind, gfc_simplify_btest, gfc_simplify_maskr,
      	gfc_simplify_maskl, gfc_simplify_poppar, gfc_simplify_repeat,
      	gfc_simplify_selected_int_kind, gfc_simplify_selected_real_kind):
      	Adjust gfc_extract_int callers.
      	* trans-decl.c (gfc_find_module): Use gfc_get_string ("%s", x)
      	instead of gfc_get_string (x).
      	* matchexp.c (expression_syntax): Add const.
      	* primary.c (match_kind_param, match_hollerith_constant,
      	match_string_constant): Adjust gfc_extract_int callers.
      	(match_keyword_arg): Use gfc_get_string ("%s", x) instead of
      	gfc_get_string (x).
      	* frontend-passes.c (optimize_minmaxloc): Likewise.
      
      From-SVN: r244744
      Jakub Jelinek committed
    • re PR other/79046 (g++ -print-file-name=plugin uses full version number in path) · 73aa401e
      	PR other/79046
      libatomic/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      libffi/
      	* configure.ac: Add GCC_BASE_VER.
      	* include/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* configure: Regenerated.
      	* testsuite/Makefile.in: Regenerated.
      	* include/Makefile.in: Regenerated.
      	* Makefile.in: Regenerated.
      	* man/Makefile.in: Regenerated.
      libgomp/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      libitm/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      libmpx/
      	* mpxrt/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* mpxwrap/Makefile.am (gcc_version): Likewise.
      	* mpxrt/Makefile.in: Regenerated.
      	* mpxwrap/Makefile.in: Regenerated.
      liboffloadmic/
      	* plugin/configure.ac: Add GCC_BASE_VER.
      	* plugin/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* plugin/configure: Regenerated.
      	* plugin/aclocal.m4: Regenerated.
      	* plugin/Makefile.in: Regenerated.
      libsanitizer/
      	* interception/Makefile.am (gcc_version): Use @get_gcc_base_ver@
      	instead of cat to get version from BASE-VER file.
      	* asan/Makefile.am (gcc_version): Likewise.
      	* ubsan/Makefile.am (gcc_version): Likewise.
      	* sanitizer_common/Makefile.am (gcc_version): Likewise.
      	* lsan/Makefile.am (gcc_version): Likewise.
      	* tsan/Makefile.am (gcc_version): Likewise.
      	* interception/Makefile.in: Regenerated.
      	* asan/Makefile.in: Regenerated.
      	* ubsan/Makefile.in: Regenerated.
      	* sanitizer_common/Makefile.in: Regenerated.
      	* lsan/Makefile.in: Regenerated.
      	* tsan/Makefile.in: Regenerated.
      libvtv/
      	* testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
      	of cat to get version from BASE-VER file.
      	* testsuite/Makefile.in: Regenerated.
      
      From-SVN: r244742
      Jakub Jelinek committed
    • re PR rtl-optimization/79125 (ICE in rtl_verify_bb_insns, at cfgrtl.c:2661… · ea9f867b
      re PR rtl-optimization/79125 (ICE in rtl_verify_bb_insns, at cfgrtl.c:2661 (error: flow control insn inside a basic block))
      
      2017-01-21  Bernd Schmidt  <bschmidt@redhat.com>
      
      	rtl-optimization/79125
      	* cprop.c (local_cprop_pass): Handle cases where we make an
      	unconditional trap.
      
      	PR rtl-optimization/79125
      	* gcc.dg/torture/pr79125.c: New test.
      
      From-SVN: r244741
      Bernd Schmidt committed
    • rs6000: Small varargs for BE SVR4 (PR61729, PR77850) · 80b40b87
      The varargs code for SVR4 puts all (integer) arguments in 4-byte slots.
      When it then reads an item from there as something not a multiple of 4
      bytes, it needs to adjust the address if big endian.  We didn't yet do
      that.
      
      This fixes the g++.dg/abi/scoped1.C, gcc.dg/compat/scalar-by-value-4,
      and gcc.dg/compat/scalar-return-4 testcases.
      
      
      	PR target/61729
      	PR target/77850
      	* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust address to
      	read from, for big endian.
      
      From-SVN: r244740
      Segher Boessenkool committed
    • Daily bump. · 5e007570
      From-SVN: r244739
      GCC Administrator committed
  4. 20 Jan, 2017 4 commits