]>
git.ipfire.org Git - thirdparty/gcc.git/log
redi [Mon, 1 Aug 2016 14:13:06 +0000 (14:13 +0000)]
Remove ignored "xfail" from dg-do compile directives
* testsuite/23_containers/unordered_map/requirements/53339.cc: Remove
ignored "xfail" from { dg-do compile { xfail selector } } directive.
* testsuite/23_containers/unordered_multimap/requirements/53339.cc:
Likewise.
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++11.cc: Likewise.
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++98.cc: Likewise.
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238954
138bc75d -0d04-0410-961f-
82ee72b054a4
marxin [Mon, 1 Aug 2016 13:31:24 +0000 (13:31 +0000)]
Change dump expectation in PR71857
PR tree-optimization/71857
* gcc.dg/tree-ssa/ivopt_mult_4.c: Change expectation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238953
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:45:47 +0000 (12:45 +0000)]
Fix __gnu_cxx::hash_set test to pass in C++98 mode
* testsuite/backward/hash_set/check_construct_destroy.cc: Account
for different construct/destroy counts in C++98 mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238952
138bc75d -0d04-0410-961f-
82ee72b054a4
schwab [Mon, 1 Aug 2016 12:45:32 +0000 (12:45 +0000)]
* include/cpplib.h: Fix comment typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238951
138bc75d -0d04-0410-961f-
82ee72b054a4
gjl [Mon, 1 Aug 2016 12:36:11 +0000 (12:36 +0000)]
PR target/72767
* config/avr/avr.md (length) [branch]: Correct insn length
attribute for forward branches.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238948
138bc75d -0d04-0410-961f-
82ee72b054a4
gjl [Mon, 1 Aug 2016 12:23:17 +0000 (12:23 +0000)]
* doc/extend.texi (AVR Built-in Functions): Document
__builtin_avr_nops.
* config/avr/builtins.def (NOPS): New.
* config/avr/avr.c (avr_expand_nops): New static function.
(avr_expand_builtin): Use it to handle AVR_BUILTIN_NOPS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238947
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:18:23 +0000 (12:18 +0000)]
Remove "-x c" from dg-options in libstdc++ C++ test
* testsuite/17_intro/freestanding.cc: Remove "-x c" from dg-options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238946
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:18:18 +0000 (12:18 +0000)]
Limit std::tuple tests to run for C++11 and later
* testsuite/20_util/tuple/cons/66338.cc: Limit test to C++11 and
later.
* testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238945
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:18:13 +0000 (12:18 +0000)]
Make libstdc++ debug mode test valid for C++98
* testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
C++98-compatible initialization for array.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238944
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:18:08 +0000 (12:18 +0000)]
Remove unused headers and variables from libstdc++ tests
* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: Remove
unused header and variable from compile-only test.
* testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: Likewise.
* testsuite/28_regex/basic_regex/assign/char/cstring.cc: Likewise.
* testsuite/28_regex/basic_regex/ctors/string_wchar_t.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238943
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:17:59 +0000 (12:17 +0000)]
Remove duplicate dg-options directive in string_view test
* testsuite/experimental/string_view/operations/rfind/char/2.cc:
Remove duplicate dg-options directive.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238942
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:17:54 +0000 (12:17 +0000)]
Use -std=gnu++98 instead of -std=gnu++03 in test
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
808590.cc: Use -std=gnu++98 instead of -std=gnu++03.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238941
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:17:49 +0000 (12:17 +0000)]
Remove linker options from compile-only tests
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Remove
linker options from compile-only tests.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238940
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Aug 2016 12:17:43 +0000 (12:17 +0000)]
Run std::ios_base enum tests for C++11 and up
* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
supported for C++11 and later.
* testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
* testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238939
138bc75d -0d04-0410-961f-
82ee72b054a4
ktkachov [Mon, 1 Aug 2016 10:20:03 +0000 (10:20 +0000)]
[AArch64] Allow multiple-of-8 immediate offsets for TImode LDP/STP
* config/aarch64/aarch64.c (aarch64_classify_address): Use DImode when
performing aarch64_offset_7bit_signed_scaled_p check for TImode LDP/STP
addresses.
* gcc.target/aarch64/ldp_stp_unaligned_1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238938
138bc75d -0d04-0410-961f-
82ee72b054a4
rearnsha [Mon, 1 Aug 2016 10:17:08 +0000 (10:17 +0000)]
2016-08-01 Virendra Pathak <virendra.pathak@broadcom.com>
* config/aarch64/aarch64.c (vulcan_tunings): Update
vulcan L1 cache_line_size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238937
138bc75d -0d04-0410-961f-
82ee72b054a4
jbeulich [Mon, 1 Aug 2016 09:39:52 +0000 (09:39 +0000)]
extend shift count warnings to vector types
gcc/c/
2016-08-01 Jan Beulich <jbeulich@suse.com>
* c-fold.c (c_fully_fold_internal): Also emit shift count
warnings for vector types.
* c-typeck.c (build_binary_op): Likewise.
gcc/testsuite/
2016-08-01 Jan Beulich <jbeulich@suse.com>
* gcc.dg/vshift-6.c, gcc.dg/vshift-7.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238936
138bc75d -0d04-0410-961f-
82ee72b054a4
uros [Mon, 1 Aug 2016 07:35:22 +0000 (07:35 +0000)]
* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238934
138bc75d -0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 1 Aug 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238933
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 19:37:14 +0000 (19:37 +0000)]
Change std::conditional test to compile-only
* testsuite/20_util/conditional/requirements/typedefs.cc: Change to
compile-only test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238930
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 19:30:16 +0000 (19:30 +0000)]
Ensure std::atomic test is compiled with optimization
* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
Ensure test is compiled with optimization.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238929
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 19:21:59 +0000 (19:21 +0000)]
Fix DR 438 std::list test to pass in C++98 mode
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Adjust dg-prune-output pattern for error in C++98 mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238928
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 18:54:31 +0000 (18:54 +0000)]
Enable std::regex test for C++11 or later
* testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Only
run for C++11 or later.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238927
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 18:46:30 +0000 (18:46 +0000)]
Fix non-portable std::regex test and test more cases
* testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: Fix
test to not rely on GNU extension (escaped normal characters in POSIX
BRE). Enable tests for other strings which are now supported.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238926
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 18:12:28 +0000 (18:12 +0000)]
Allow std::pair test to run in C++11 mode too
* testsuite/20_util/pair/astuple/get_neg.cc: Use effective-target
c++11 instead of setting -std=gnu++14.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238925
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 17:08:52 +0000 (17:08 +0000)]
libstdc++/72745 add static assertion for invalid tuple access
PR libstdc++/72745
* include/std/array (get): Use positive message for static assertions.
* include/std/functional (_Safe_tuple_element_t): Fix indentation.
* include/std/tuple (tuple_element<I, tuple<>>): Add partial
specialization for invalid indices, with static assertion.
* testsuite/20_util/tuple/element_access/get_neg.cc: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238924
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 16:51:08 +0000 (16:51 +0000)]
Move dg-error directives to relevant lines
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Move
dg-error to relevant line.
* testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
requirements/non_uint_neg.cc: Likewise.
* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
Likewise. Also test for std::atomic_address.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238923
138bc75d -0d04-0410-961f-
82ee72b054a4
wschmidt [Sun, 31 Jul 2016 15:15:28 +0000 (15:15 +0000)]
Oops, ChangeLog didn't commit
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238922
138bc75d -0d04-0410-961f-
82ee72b054a4
ville [Sun, 31 Jul 2016 14:52:53 +0000 (14:52 +0000)]
Add missing variable traits, fix testsuite failures.
* include/bits/uses_allocator.h (uses_allocator_v): New.
* include/std/functional (is_bind_expression_v, is_placeholder_v):
Likewise.
* testsuite/20_util/bind/is_placeholder_v.cc: Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
* testsuite/20_util/duration/literals/range.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
* testsuite/20_util/uses_allocator/requirements/uses_allocator_v.cc:
New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238921
138bc75d -0d04-0410-961f-
82ee72b054a4
wschmidt [Sun, 31 Jul 2016 14:27:32 +0000 (14:27 +0000)]
2016-07-31 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.target/powerpc/divkc3-1.c: Require POWER8 hardware.
* gcc.target/powerpc/mulkc3-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238919
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 13:06:38 +0000 (13:06 +0000)]
Check __STRICT_ANSI__ for 128-bit arithmetic types
* testsuite/18_support/numeric_limits/40856.cc [__STRICT_ANSI__]: Do
not test 128-bit types.
* testsuite/20_util/is_floating_point/value.cc: Likewise.
* testsuite/20_util/is_integral/value.cc: Likewise.
* testsuite/20_util/is_signed/value.cc: Likewise.
* testsuite/20_util/is_unsigned/value.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238918
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 13:03:46 +0000 (13:03 +0000)]
Fix file extension of libstdc++ test
* testsuite/26_numerics/headers/cstdlib/54686.c: Rename to 54686.cc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238917
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Sun, 31 Jul 2016 13:02:17 +0000 (13:02 +0000)]
Make check_effective_target_c++ work for libstdc++
* lib/target-supports.exp (check_effective_target_c): Fix indentation.
(check_effective_target_c++): Likewise. Also match for libstdc++.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238916
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Sun, 31 Jul 2016 01:51:37 +0000 (01:51 +0000)]
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/41922
* target-memory.c (expr_to_char): Pass in locus and use it in error
messages.
(gfc_merge_initializers): Ditto.
* target-memory.h: Update prototype for gfc_merge_initializers ().
* trans-common.c (get_init_field): Use the correct locus.
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/41922
* gfortran.dg/equiv_constraint_5.f90: Adjust the error message.
* gfortran.dg/equiv_constraint_7.f90: Ditto.
* gfortran.dg/pr41922.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238915
138bc75d -0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 31 Jul 2016 00:16:16 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238914
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Sat, 30 Jul 2016 23:01:06 +0000 (23:01 +0000)]
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/68566
* check.c (gfc_check_reshape): Check for constant expression.
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/68566
* gfortran.dg/pr68566.f90: new test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238911
138bc75d -0d04-0410-961f-
82ee72b054a4
msebor [Sat, 30 Jul 2016 22:36:56 +0000 (22:36 +0000)]
PR c++/60760 - arithmetic on null pointers should not be allowed in constant
PR c++/71091 - constexpr reference bound to a null pointer dereference
gcc/cp/ChangeLog:
PR c++/60760
PR c++/71091
* constexpr.c (cxx_eval_binary_expression): Reject invalid expressions
involving null pointers.
(cxx_eval_component_reference): Reject null pointer dereferences.
(cxx_eval_indirect_ref): Reject indirecting through null pointers.
(cxx_eval_constant_expression): Reject invalid expressions involving
null pointers.
gcc/testsuite/ChangeLog:
PR c++/60760
PR c++/71091
* g++.dg/cpp0x/constexpr-cast.C: New test.
* g++.dg/cpp0x/constexpr-nullptr-2.C: New test.
* g++.dg/cpp1y/constexpr-sfinae.C: Correct.
* g++.dg/ubsan/pr63956.C: Correct.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238909
138bc75d -0d04-0410-961f-
82ee72b054a4
meissner [Sat, 30 Jul 2016 22:31:16 +0000 (22:31 +0000)]
[gcc]
2016-07-30 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000-protos.h (rs6000_adjust_vec_address): New
function that takes a vector memory address, a hard register, an
element number and a temporary base register, and recreates an
address that points to the appropriate element within the vector.
* config/rs6000/rs6000.c (rs6000_adjust_vec_address): Likewise.
(rs6000_split_vec_extract_var): Add support for the target of a
vec_extract with variable element number being a scalar memory
location.
(rtx_is_swappable_p): VLSO insns (UNSPEC_VSX_VSLOW) are not
swappable.
* config/rs6000/vsx.md (vsx_extract_<mode>_load): Replace
vsx_extract_<mode>_load insn with a new insn that optimizes
storing either element to a memory location, using scratch
registers to pick apart the vector and reconstruct the address.
(vsx_extract_<P:mode>_<VSX_D:mode>_load): Likewise.
(vsx_extract_<mode>_store): Rework alternatives to more correctly
support Altivec registers. Add support for ISA 3.0 Altivec d-form
store instruction.
(vsx_extract_<mode>_var): Add support for extracting a variable
element number from memory.
[gcc/testsuite]
2016-07-30 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/vec-extract-2.c: New tests for vec_extract of
vector double or vector long where the vector is in memory.
* gcc.target/powerpc/vec-extract-3.c: Likewise.
* gcc.target/powerpc/vec-extract-4.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238908
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Sat, 30 Jul 2016 20:05:10 +0000 (20:05 +0000)]
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/69867
* decl.c (build_struct): Ensure that pointers point to something.
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/69867
* gfortran.dg/pr69867.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238907
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Sat, 30 Jul 2016 19:24:49 +0000 (19:24 +0000)]
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/69962
* decl.c (gfc_set_constant_character_len): if expr is not
constant issue an error instead of an ICE.
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/69962
* gfortran.dg/pr69962.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238906
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Sat, 30 Jul 2016 18:18:49 +0000 (18:18 +0000)]
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/70006
* io.c (gfc_resolve_dt): Use correct locus.
* resolve.c (resolve_branch): Ditto.
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/70006
* gfortran.dg/pr70006.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238905
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Sat, 30 Jul 2016 16:19:14 +0000 (16:19 +0000)]
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71730
* decl.c (char_len_param_value): Check return value of
gfc_reduce_init_expr().
2016-07-30 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71730
* gfortran.dg/pr71730.f90: New test.
* gfortran.dg/bounds_check_strlen_2.f90: Fix invalid code.
* gfortran.dg/array_constructor_27.f03: Update dg-error message.
* gfortran.dg/array_constructor_26.f03: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238904
138bc75d -0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 30 Jul 2016 00:16:14 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238902
138bc75d -0d04-0410-961f-
82ee72b054a4
wschmidt [Fri, 29 Jul 2016 20:15:54 +0000 (20:15 +0000)]
2016-07-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/_divkc3.c: Add copyright/license boilerplate.
* config/rs6000/_mulkc3.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238894
138bc75d -0d04-0410-961f-
82ee72b054a4
ville [Fri, 29 Jul 2016 19:01:39 +0000 (19:01 +0000)]
Implement C++17 variable templates for type traits.
* include/std/chrono (treat_as_floating_point_v): New.
* include/std/ratio (ratio_equal_v, ratio_not_equal_v)
(ratio_less_v, ratio_less_equal_v, ratio_greater_v)
(ratio_greater_equal_v): Likewise.
* include/std/system_error (is_error_code_enum_v)
(is_error_condition_enum_v): Likewise.
* include/std/tuple (tuple_size_v): Likewise.
* type_traits (conjunction_v, disjunction_v, negation_v)
(is_void_v, is_null_pointer_v, is_integral_v, is_floating_point_v)
(is_array_v, is_pointer_v, is_lvalue_reference_v)
(is_rvalue_reference_v, is_member_object_pointer_v)
(is_member_function_pointer_v, is_enum_v, is_union_v)
(is_class_v, is_function_v, is_reference_v, is_arithmetic_v)
(is_fundamental_v, is_object_v, is_scalar_v, is_compound_v)
(is_member_pointer_v, is_const_v, is_volatile_v, is_trivial_v)
(is_trivially_copyable_v, is_standard_layout_v)
(is_pod_v, is_literal_type_v, is_empty_v, is_polymorphic_v)
(is_abstract_v, is_final_v, is_signed_v, is_unsigned_v)
(is_constructible_v, is_default_constructible_v)
(is_copy_constructible_v, is_move_constructible_v)
(is_assignable_v, is_copy_assignable_v, is_move_assignable_v)
(is_destructible_v, is_trivially_constructible_v)
(is_trivially_default_constructible_v)
(is_trivially_copy_constructible_v, is_trivially_move_constructible_v)
(is_trivially_assignable_v, is_trivially_copy_assignable_v)
(is_trivially_move_assignable_v, is_trivially_destructible_v)
(is_nothrow_constructible_v, is_nothrow_default_constructible_v)
(is_nothrow_copy_constructible_v, is_nothrow_move_constructible_v)
(is_nothrow_assignable_v, is_nothrow_copy_assignable_v)
(is_nothrow_move_assignable_v, is_nothrow_destructible_v)
(has_virtual_destructor_v, alignment_of_v, rank_v, extent_v)
(is_same_v, is_base_of_v, is_convertible_v): Likewise.
* testsuite/19_diagnostics/error_code/is_error_code_v.cc: Likewise.
* testsuite/20_util/duration/requirements/treat_as_floating_point_v.cc:
Likewise.
* testsuite/20_util/ratio/requirements/ratio_equal_v.cc: Likewise.
* testsuite/20_util/tuple/tuple_size_v.cc: Likewise.
* testsuite/20_util/variable_templates_for_traits.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238892
138bc75d -0d04-0410-961f-
82ee72b054a4
wschmidt [Fri, 29 Jul 2016 18:29:01 +0000 (18:29 +0000)]
2016-07-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* g++.dg/pr70098.C: Remove XFAIL for powerpc64_no_dm.
* gcc.target/powerpc/pr71763.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238891
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 17:39:39 +0000 (17:39 +0000)]
PR c/71926
* c-common.c (c_common_truthvalue_conversion): Use LOCATION for the
parentheses warning.
* semantics.c (maybe_convert_cond): Use the location of COND for the
parentheses warning.
* g++.dg/warn/Wparentheses-30.C: New test.
* gcc.dg/Wparentheses-14.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238886
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 17:36:46 +0000 (17:36 +0000)]
PR c/71573
* c-decl.c (implicitly_declare): Return decl early not only for
error_mark_nodes, but for anything that is not a FUNCTION_DECL.
* gcc.dg/noncompile/pr71573.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238885
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 17:34:55 +0000 (17:34 +0000)]
PR c/71853
* c-parser.c (c_parser_switch_statement): Initialize ce.original_type
to error node for invalid code.
* gcc.dg/noncompile/pr71853.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238884
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 17:32:27 +0000 (17:32 +0000)]
PR c/71742
* c-decl.c (finish_struct): Rephrase an error message.
* gcc.dg/940510-1.c: Adjust dg-error.
* gcc.dg/c99-flex-array-1.c: Likewise.
* gcc.dg/c99-flex-array-typedef-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238883
138bc75d -0d04-0410-961f-
82ee72b054a4
aldyh [Fri, 29 Jul 2016 16:40:55 +0000 (16:40 +0000)]
include/
* libiberty.h (MAX_ALLOCA_SIZE): New macro.
libiberty/
* make-relative-prefix.c (make_relative_prefix_1): Fall back to
malloc if alloca argument is greater than MAX_ALLOCA_SIZE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238880
138bc75d -0d04-0410-961f-
82ee72b054a4
gjl [Fri, 29 Jul 2016 16:09:39 +0000 (16:09 +0000)]
* config/avr/avr.c (avr_out_compare): Use const0_rtx instead of 0
when testing for compares against constants of the form 0xabab.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238879
138bc75d -0d04-0410-961f-
82ee72b054a4
uros [Fri, 29 Jul 2016 16:07:09 +0000 (16:07 +0000)]
* gcc.dg/pr59833.c: Use dg-add-options ieee.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238878
138bc75d -0d04-0410-961f-
82ee72b054a4
amker [Fri, 29 Jul 2016 15:48:25 +0000 (15:48 +0000)]
PR tree-optimization/57558
* tree-vect-loop-manip.c (vect_create_cond_for_niters_checks): New
function.
(vect_loop_versioning): Support versioning with niter assumptions.
* tree-vect-loop.c (tree-ssa-loop.h): Include header file.
(vect_get_loop_niters): New parameter. Reimplement to support
assumptions in loop niter info.
(vect_analyze_loop_form_1, vect_analyze_loop_form): Ditto.
(new_loop_vec_info): Init LOOP_VINFO_NITERS_ASSUMPTIONS.
(vect_estimate_min_profitable_iters): Use LOOP_REQUIRES_VERSIONING.
Support loop versioning for niters.
* tree-vectorizer.c (tree-ssa-loop-niter.h): Include header file.
(vect_free_loop_info_assumptions): New function.
(vectorize_loops): Free loop niter info for loops with flag
LOOP_F_ASSUMPTIONS set if vectorization failed.
* tree-vectorizer.h (struct _loop_vec_info): New field
num_iters_assumptions.
(LOOP_VINFO_NITERS_ASSUMPTIONS): New macro.
(LOOP_REQUIRES_VERSIONING_FOR_NITERS): New macro.
(LOOP_REQUIRES_VERSIONING): New macro.
(vect_free_loop_info_assumptions): New decl.
gcc/testsuite
PR tree-optimization/57558
* gcc.dg/vect/pr57558-1.c: New test.
* gcc.dg/vect/pr57558-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238877
138bc75d -0d04-0410-961f-
82ee72b054a4
amker [Fri, 29 Jul 2016 15:44:00 +0000 (15:44 +0000)]
* cfgloop.h (struct loop): New field constraints.
(LOOP_C_INFINITE, LOOP_C_FINITE): New macros.
(loop_constraint_set, loop_constraint_clr, loop_constraint_set_p): New
functions.
* cfgloop.c (alloc_loop): Initialize new field.
* cfgloopmanip.c (copy_loop_info): Copy constraints.
* tree-ssa-loop-niter.c (number_of_iterations_exit_assumptions):
Adjust niter analysis wrto loop constraints.
* doc/loop.texi (@node Number of iterations): Add description for loop
constraints.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238876
138bc75d -0d04-0410-961f-
82ee72b054a4
prathamesh3492 [Fri, 29 Jul 2016 15:37:23 +0000 (15:37 +0000)]
2016-07-29 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
testsuite/
gcc.dg/pr70920-4.c: Restrict to lp64 targets and make scan-tree-dump
to scan forwprop1 dump pass.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238874
138bc75d -0d04-0410-961f-
82ee72b054a4
jason [Fri, 29 Jul 2016 15:10:58 +0000 (15:10 +0000)]
* decl.c (build_enumerator): Tweak diagnostic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238873
138bc75d -0d04-0410-961f-
82ee72b054a4
gjl [Fri, 29 Jul 2016 14:54:04 +0000 (14:54 +0000)]
* config/avr/avr.md: Fix " in comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238871
138bc75d -0d04-0410-961f-
82ee72b054a4
paolo [Fri, 29 Jul 2016 14:49:03 +0000 (14:49 +0000)]
2016-07-29 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51488
* g++.dg/template/pr51488.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238870
138bc75d -0d04-0410-961f-
82ee72b054a4
jason [Fri, 29 Jul 2016 14:03:26 +0000 (14:03 +0000)]
PR c++/72457 - ICE with list-value-initialized base.
* init.c (expand_aggr_init_1): Only handle value-init of bases.
* constexpr.c (build_data_member_initialization): Handle multiple
initializers for the same field.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238867
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 12:39:25 +0000 (12:39 +0000)]
PR c/7652
* config/i386/i386.c (ix86_expand_args_builtin): Add break.
(ix86_expand_round_builtin): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238864
138bc75d -0d04-0410-961f-
82ee72b054a4
gjl [Fri, 29 Jul 2016 12:34:21 +0000 (12:34 +0000)]
gcc/
PR rtl-optimization/71976
* combine.c (get_last_value): Return 0 if the argument for which
the function is called has a wider mode than the recorded value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238863
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 12:00:43 +0000 (12:00 +0000)]
PR c/71969
* c-decl.c (finish_function): Only set DECL_DISREGARD_INLINE_LIMITS
on GNU extern inline functions.
* gcc.dg/alias-11.c (add_cfi, new_cfi): Change __inline__ to
static __inline__.
* gcc.dg/pr71969-1.c: New test.
* gcc.dg/pr71969-2.c: New test.
* gcc.dg/pr71969-3.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238862
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 11:48:36 +0000 (11:48 +0000)]
PR c/71583
* c-parser.c (c_parser_postfix_expression_after_paren_type): Also
check expr.value.
* gcc.dg/noncompile/pr71583.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238861
138bc75d -0d04-0410-961f-
82ee72b054a4
schwab [Fri, 29 Jul 2016 11:41:05 +0000 (11:41 +0000)]
Update libstdc++ baseline symbols for aarch64, ia64, m68k
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238860
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 11:28:57 +0000 (11:28 +0000)]
PR c/71574
* c-common.c (handle_alloc_align_attribute): Also check FUNCTION_DECL.
* c-c++-common/pr71574.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238859
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 29 Jul 2016 11:16:20 +0000 (11:16 +0000)]
PR c/7652
* config/rs6000/rs6000.c (altivec_expand_ld_builtin): Likewise.
(altivec_expand_st_builtin): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238856
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Fri, 29 Jul 2016 10:55:03 +0000 (10:55 +0000)]
Update libstdc++ docs for library version history
* doc/xml/manual/abi.xml: Document 6.0.22 library version.
* doc/html/manual/abi.html: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238855
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Fri, 29 Jul 2016 10:42:17 +0000 (10:42 +0000)]
New libstdc++ symbol version for new basic_string symbols
* acinclude.m4 (libtool_VERSION): Bump to 6:23:0.
* config/abi/pre/gnu.ver: Add 3.4.23 version for new basic_string
symbols.
* configure: Regenerate.
* testsuite/util/testsuite_abi.cc: Add new symbol version.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238853
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Fri, 29 Jul 2016 10:42:06 +0000 (10:42 +0000)]
Update libstdc++ baseline symbols for x86 and ppc
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
Likewise.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238852
138bc75d -0d04-0410-961f-
82ee72b054a4
gjl [Fri, 29 Jul 2016 09:26:52 +0000 (09:26 +0000)]
* config/avr/avr.md (addqi3) [cc]: Revert glitch in insn attribute
introduced in r238381.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238851
138bc75d -0d04-0410-961f-
82ee72b054a4
gjl [Fri, 29 Jul 2016 09:14:02 +0000 (09:14 +0000)]
* config/avr/lib1funcs.S (__muldi3) [have MUL]: No need to clear
zero_reg as previous call to __umulhisi3 already cleared it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238850
138bc75d -0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 29 Jul 2016 08:04:01 +0000 (08:04 +0000)]
gfortran: Fix allocation of diagnostig string (was too small).
The attached patch fixes an out of bound write to memory allocated
with alloca() on the stack. This rarely ever happened because on
one hand -fbounds-check needs to be enabled, and on the other hand
alloca() used to allocate a few bytes extra most of the time so
most of the time the excess write did no harm.
gcc/fortran/ChangeLog:
* trans-array.c (gfc_conv_array_ref): Fix allocation of diagnostic
message (was too small).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238849
138bc75d -0d04-0410-961f-
82ee72b054a4
kugan [Fri, 29 Jul 2016 00:35:23 +0000 (00:35 +0000)]
gcc/ChangeLog:
2016-07-29 Kugan Vivekanandarajah <kuganv@linaro.org>
PR middle-end/68217
* tree-vrp.c (extract_range_from_binary_expr_1): In case of signed
& sign-bit-CST, generate [-INF, 0] instead of [-INF, INF].
gcc/testsuite/ChangeLog:
2016-07-29 Kugan Vivekanandarajah <kuganv@linaro.org>
PR middle-end/68217
* gcc.dg/pr68217.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238846
138bc75d -0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 29 Jul 2016 00:16:17 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238845
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Thu, 28 Jul 2016 23:12:23 +0000 (23:12 +0000)]
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71067
* decl.c (match_data_constant): On error, set 'result' to NULL.
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71067
* gfortran.dg/pr71067_1.f90: New test.
* gfortran.dg/pr71067_2.f90: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238842
138bc75d -0d04-0410-961f-
82ee72b054a4
jsm28 [Thu, 28 Jul 2016 21:15:06 +0000 (21:15 +0000)]
* sv.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238839
138bc75d -0d04-0410-961f-
82ee72b054a4
meissner [Thu, 28 Jul 2016 21:02:06 +0000 (21:02 +0000)]
[gcc]
2016-07-28 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000-protos.h (rs6000_split_vec_extract_var):
New declaration.
* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
Add support for vec_extract of vector double or vector long having
a variable element number on 64-bit ISA 2.07 systems or newer.
* config/rs6000/rs6000.c (rs6000_expand_vector_extract):
Likewise.
(rs6000_split_vec_extract_var): New function to split a
vec_extract built-in function with variable element number.
(rtx_is_swappable_p): Variable vec_extracts and shifts are not
swappable.
* config/rs6000/vsx.md (UNSPEC_VSX_VSLO): New unspec.
(UNSPEC_VSX_EXTRACT): Likewise.
(vsx_extract_<mode>, VSX_D iterator): Fix constraints to allow
direct move instructions to be generated on 64-bit ISA 2.07
systems and newer, and to take advantage of the ISA 3.0 MFVSRLD
instruction.
(vsx_vslo_<mode>): New insn to do VSLO on V2DFmode and V2DImode
arguments for vec_extract variable element.
(vsx_extract_<mode>_var, VSX_D iterator): New insn to support
vec_extract with variable element on V2DFmode and V2DImode
vectors.
* config/rs6000/rs6000.h (TARGET_VEXTRACTUB): Remove
-mupper-regs-df requirement, since it isn't needed.
(TARGET_DIRECT_MOVE_64BIT): New macro to say whether we can
do direct moves on 64-bit systems, which allows optimization of
vec_extract on 64-bit ISA 2.07 systems and newer.
[gcc/testsuite]
2016-07-28 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/vec-extract-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238838
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Thu, 28 Jul 2016 21:00:45 +0000 (21:00 +0000)]
Fix DR 438 container tests to pass in C++98 mode
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-prune-output pattern for error in C++98 mode.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238837
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Thu, 28 Jul 2016 21:00:39 +0000 (21:00 +0000)]
Fix std::vector test to pass in C++98 mode
* testsuite/23_containers/vector/check_construct_destroy.cc: Account
for different construct/destroy counts in C++98 mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238836
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Thu, 28 Jul 2016 21:00:34 +0000 (21:00 +0000)]
Use dg-additional-options in libstdc++ tests
* testsuite/17_intro/headers/c++2011/stdc++.cc: Change target-specific
dg-options to dg-additional-options so that default options are used.
* testsuite/17_intro/headers/c++2011/stdc++_multiple_inclusion.cc:
Likewise.
* testsuite/17_intro/headers/c++2014/stdc++.cc: Likewise.
* testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
Likewise.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
Use dg-additional-options instead of repeating the common options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238835
138bc75d -0d04-0410-961f-
82ee72b054a4
redi [Thu, 28 Jul 2016 21:00:19 +0000 (21:00 +0000)]
Fix invalid dg-do directives in libstdc++ tests
* testsuite/22_locale/conversions/string/1.cc: Remove unintended
dg-do compile directive.
* testsuite/26_numerics/headers/cmath/fabs_inline.cc: Fix syntax of
dg-do directive.
* testsuite/26_numerics/valarray/const_bracket.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238834
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Thu, 28 Jul 2016 19:04:12 +0000 (19:04 +0000)]
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71799
* resolve.c(gfc_resolve_iterator): Failure of type conversion need
not ICE.
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71799
* gfortran.dg/pr71799.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238830
138bc75d -0d04-0410-961f-
82ee72b054a4
paolo [Thu, 28 Jul 2016 18:43:29 +0000 (18:43 +0000)]
/cp
2016-07-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/71665
* decl.c (build_enumerator): Check the type of the enumerator before
calling cxx_constant_value.
/testsuite
2016-07-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/71665
* g++.dg/cpp0x/pr71665-1.C: New.
* g++.dg/cpp0x/pr71665-2.C: Likewise.
* g++.dg/cpp0x/enum29.C: Adjust dg-error string.
* g++.dg/ext/label10.C: Likewise.
* g++.dg/parse/constant5.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238828
138bc75d -0d04-0410-961f-
82ee72b054a4
kargl [Thu, 28 Jul 2016 17:48:54 +0000 (17:48 +0000)]
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71859
* check.c(numeric_check): Prevent ICE. Issue error for invalid
subroutine as an actual argument when numeric argument is expected.
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/71859
* gfortran.dg/pr71859.f90: New test.
* gfortran.dg/intrinsic_numeric_arg.f: Update error message.
* gfortran.dg/coarray_collectives_1.f90: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238825
138bc75d -0d04-0410-961f-
82ee72b054a4
mpolacek [Thu, 28 Jul 2016 15:46:07 +0000 (15:46 +0000)]
PR c/7652
* jcf-dump.c (print_constant): Add break.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238824
138bc75d -0d04-0410-961f-
82ee72b054a4
ville [Thu, 28 Jul 2016 15:15:26 +0000 (15:15 +0000)]
Implement std::string_view and P0254r2,
Integrating std::string_view and std::string.
* include/Makefile.am: Add string_view and string_view.tcc
to the exported headers.
* include/Makefile.in: Likewise.
* include/bits/basic_string.h: Include <string_view> in C++17 mode.
(__sv_type): New.
(basic_string(__sv_type, const _Alloc&)): Likewise.
(operator=(__sv_type)): Likewise.
(operator __sv_type()): Likewise.
(operator+=(__sv_type)): Likewise.
(append(__sv_type __sv)): Likewise.
(append(__sv_type, size_type, size_type)): Likewise.
(assign(__sv_type)): Likewise.
(assign(__sv_type, size_type, size_type)): Likewise.
(insert(size_type, __sv_type)): Likewise.
(insert(size_type, __sv_type, size_type, size_type)): Likewise.
(replace(size_type, size_type, __sv_type)): Likewise.
(replace(size_type, size_type, __sv_type, size_type, size_type)):
Likewise.
(replace(const_iterator, const_iterator, __sv_type)): Likewise.
(find(__sv_type, size_type)): Likewise.
(rfind(__sv_type, size_type)): Likewise.
(find_first_of(__sv_type, size_type)): Likewise.
(find_last_of(__sv_type, size_type)): Likewise.
(find_first_not_of(__sv_type, size_type)): Likewise.
(find_last_not_of(__sv_type, size_type)): Likewise.
(compare(__sv_type)): Likewise.
(compare(size_type, size_type, __sv_type)): Likewise.
(compare(size_type, size_type, __sv_type, size_type, size_type)):
Likewise.
* include/bits/string_view.tcc: New.
* include/std/string_view: Likewise.
* testsuite/21_strings/basic_string/cons/char/7.cc: Likewise.
* testsuite/21_strings/basic_string/cons/wchar_t/7.cc: Likewise.
* testsuite/21_strings/basic_string/modifiers/append/char/4.cc:
Likewise.
* testsuite/21_strings/basic_string/modifiers/append/wchar_t/4.cc:
Likewise.
* testsuite/21_strings/basic_string/modifiers/assign/char/4.cc:
Likewise.
* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/4.cc:
Likewise.
* testsuite/21_strings/basic_string/modifiers/insert/char/3.cc:
Likewise.
* testsuite/21_strings/basic_string/modifiers/insert/wchar_t/3.cc:
Likewise.
* testsuite/21_strings/basic_string/modifiers/replace/char/7.cc:
Likewise.
* testsuite/21_strings/basic_string/modifiers/replace/wchar_t/7.cc:
Likewise.
* testsuite/21_strings/basic_string/operations/compare/char/2.cc:
Likewise.
* testsuite/21_strings/basic_string/operations/compare/wchar_t/2.cc:
Likewise.
* testsuite/21_strings/basic_string/operations/find/char/5.cc:
Likewise.
* testsuite/21_strings/basic_string/operations/find/wchar_t/5.cc:
Likewise.
* testsuite/21_strings/basic_string/operators/char/5.cc: Likewise.
* testsuite/21_strings/basic_string/operators/wchar_t/5.cc: Likewise.
* testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise.
* testsuite/21_strings/basic_string_view/cons/char/1.cc: Likewise.
* testsuite/21_strings/basic_string_view/cons/char/2.cc: Likewise.
* testsuite/21_strings/basic_string_view/cons/char/3.cc: Likewise.
* testsuite/21_strings/basic_string_view/cons/wchar_t/1.cc: Likewise.
* testsuite/21_strings/basic_string_view/cons/wchar_t/2.cc: Likewise.
* testsuite/21_strings/basic_string_view/cons/wchar_t/3.cc: Likewise.
* testsuite/21_strings/basic_string_view/element_access/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/element_access/char/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
Likewise.
* testsuite/21_strings/basic_string_view/element_access/char/front_back.cc:
Likewise.
* testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/element_access/wchar_t/empty.cc:
Likewise.
* testsuite/21_strings/basic_string_view/element_access/wchar_t/front_back.cc:
Likewise.
* testsuite/21_strings/basic_string_view/include.cc: Likewise.
* testsuite/21_strings/basic_string_view/inserters/char/1.cc: Likewise.
* testsuite/21_strings/basic_string_view/inserters/char/2.cc: Likewise.
* testsuite/21_strings/basic_string_view/inserters/char/3.cc: Likewise.
* testsuite/21_strings/basic_string_view/inserters/pod/10081-out.cc:
Likewise.
* testsuite/21_strings/basic_string_view/inserters/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/inserters/wchar_t/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/inserters/wchar_t/3.cc:
Likewise.
* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/compare/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/compare/char/13650.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/compare/wchar_t/13650.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/copy/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/copy/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/data/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/data/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/char/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/char/3.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/char/4.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/3.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/find/wchar_t/4.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/rfind/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/rfind/char/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/rfind/char/3.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/rfind/wchar_t/3.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/string_conversion/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/substr/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operations/substr/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/operators/char/2.cc: Likewise.
* testsuite/21_strings/basic_string_view/operators/wchar_t/2.cc:
Likewise.
* testsuite/21_strings/basic_string_view/range_access/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/range_access/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc:
Likewise.
* testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
Likewise.
* testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
* testsuite/21_strings/basic_string_view/types/1.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238823
138bc75d -0d04-0410-961f-
82ee72b054a4
pault [Thu, 28 Jul 2016 14:47:02 +0000 (14:47 +0000)]
2016-07-28 Steven G. Kargl <kargl@gcc.gnu.org>
Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/71883
* frontend-passes.c (gfc_run_passes): Bail out if there are any
errors.
* error.c (gfc_internal_error): If there are any errors in the
buffer, exit with EXIT_FAILURE.
2016-07-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/71883
* gfortran.dg/pr71883.f90 : New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238822
138bc75d -0d04-0410-961f-
82ee72b054a4
wilco [Thu, 28 Jul 2016 14:34:41 +0000 (14:34 +0000)]
On AArch64 the UXTB and UXTH instructions are aliases of UBFM,
which does a shift as part of its operation. An AND immediate is a
simpler operation, and might be faster on some implementations, so
it is better to emit this this instead of UBFM.
Benchmarking showed no difference on implementations where UBFM has
the same performance as AND, and minor speedups across several
benchmarks on an implementation where UBFM is slower than AND.
Bootstrapped and tested on aarch64-none-elf.
gcc/
* config/aarch64/aarch64.md
(zero_extend<SHORT:mode><GPI:mode>2_aarch64): Change output
statement and type.
(<optab>qihi2_aarch64): Likewise, and split into two.
(extendqihi2_aarch64): New.
(zero_extendqihi2_aarch64): New.
* config/aarch64/iterators.md (ldrxt): Remove.
* config/aarch64/aarch64.c (aarch64_rtx_costs): Change cost of
uxtb/uxth.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238821
138bc75d -0d04-0410-961f-
82ee72b054a4
wilco [Thu, 28 Jul 2016 14:29:28 +0000 (14:29 +0000)]
This patchset improves zero extend costs and code generation.
When zero extending a 32-bit register, we emit a "mov", but currently
report the cost of the "mov" incorrectly.
In terms of speed, we currently say the cost is that of an extend
operation. But the cost of a "mov" is the cost of 1 instruction, so fix
that.
In terms of size, we currently say that the "mov" takes 0 instructions.
Fix it by changing it to 1.
Bootstrapped and tested on aarch64-none-elf.
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Fix cost of zero extend.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238820
138bc75d -0d04-0410-961f-
82ee72b054a4
wilco [Thu, 28 Jul 2016 14:21:57 +0000 (14:21 +0000)]
This patch improves the readability of the prolog and epilog code by moving
some code into separate functions. There is no difference in generated code.
gcc/
* config/aarch64/aarch64.c (aarch64_pushwb_pair_reg): Rename.
(aarch64_push_reg): New function to push 1 or 2 registers.
(aarch64_pop_reg): New function to pop 1 or 2 registers.
(aarch64_expand_prologue): Use aarch64_push_regs.
(aarch64_expand_epilogue): Use aarch64_pop_regs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238818
138bc75d -0d04-0410-961f-
82ee72b054a4
ienkovich [Thu, 28 Jul 2016 14:19:18 +0000 (14:19 +0000)]
gcc/
2016-07-28 Yuri Rumyantsev <ysrumyan@gmail.com>
PR tree-optimization/71734
* tree-ssa-loop-im.c (ref_indep_loop_p_1): Pass value of safelen
attribute instead of REF_LOOP and use it.
(ref_indep_loop_p_2): Use SAFELEN argument instead of REF_LOOP and
set it for Loops having non-zero safelen attribute.
(ref_indep_loop_p): Pass zero as initial value for safelen.
gcc/testsuite/
2016-07-28 Yuri Rumyantsev <ysrumyan@gmail.com>
PR tree-optimization/71734
* g++.dg/vect/pr70729-nest.cc: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238817
138bc75d -0d04-0410-961f-
82ee72b054a4
ienkovich [Thu, 28 Jul 2016 12:58:37 +0000 (12:58 +0000)]
gcc/
PR middle-end/72657
PR target/72683
* tree-chkp.c (chkp_retbnd_call_by_val): Check for instrumentation
call using chkp_gimple_call_builtin_p.
(chkp_copy_bounds_for_assign): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238816
138bc75d -0d04-0410-961f-
82ee72b054a4
renlin [Thu, 28 Jul 2016 11:21:53 +0000 (11:21 +0000)]
[PATCH] Revert Revert r238497 because of PR 71961.
This patch reverts the change for PR 71902 since it causes 178.gagel
miscompile in spec2000 as reported in PR 71961 which was observed in
x86_64, aarch64, powerpc64.
gcc/fortran/ChangeLog:
2016-07-28 Renlin Li <renlin.li@arm.com>
Revert
2016-07-19 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/71902
* dependency.c (gfc_check_dependency): Use dep_ref. Handle case
if identical is true and two array element references differ.
(gfc_dep_resovler): Move most of the code to dep_ref.
(dep_ref): New function.
* frontend-passes.c (realloc_string_callback): Name temporary
variable "realloc_string".
gcc/testsuite/ChangeLog:
2016-07-28 Renlin Li <renlin.li@arm.com>
Revert
2016-07-19 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/71902
* gfortran.dg/dependency_47.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238815
138bc75d -0d04-0410-961f-
82ee72b054a4
tbsaunde [Thu, 28 Jul 2016 11:01:49 +0000 (11:01 +0000)]
merge adjust_cost and adjust_cost_2 target hooks
gcc/ChangeLog:
2016-07-28 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* config/alpha/alpha.c (alpha_adjust_cost): Adjust.
* config/arm/arm-protos.h (struct tune_params): Likewise.
* config/arm/arm.c (xscale_sched_adjust_cost): Likewise.
(cortex_a9_sched_adjust_cost): Likewise.
(fa726te_sched_adjust_cost): Likewise.
(arm_adjust_cost): Likewise.
* config/bfin/bfin.c (bfin_adjust_cost): Likewise.
* config/c6x/c6x.c (c6x_adjust_cost): Likewise.
* config/epiphany/epiphany.c (epiphany_adjust_cost): Likewise.
* config/i386/i386.c (ix86_adjust_cost): Likewise.
* config/ia64/ia64.c: Likewise.
* config/m68k/m68k.c: Likewise.
* config/mep/mep.c (mep_adjust_cost): Likewise.
* config/microblaze/microblaze.c (microblaze_adjust_cost):
* Likewise.
* config/mips/mips.c (mips_adjust_cost): Likewise.
* config/mn10300/mn10300.c (mn10300_adjust_sched_cost):
* Likewise.
* config/pa/pa.c (pa_adjust_cost): Likewise.
* config/rs6000/rs6000.c (rs6000_adjust_cost): Likewise.
(rs6000_debug_adjust_cost): Likewise.
* config/sh/sh.c (sh_adjust_cost): Likewise.
* config/sparc/sparc.c (supersparc_adjust_cost): Likewise.
(hypersparc_adjust_cost): Likewise.
(sparc_adjust_cost): Likewise.
* config/spu/spu.c (spu_sched_adjust_cost): Likewise.
* config/tilegx/tilegx.c (tilegx_sched_adjust_cost): Likewise.
* config/tilepro/tilepro.c (tilepro_sched_adjust_cost):
* Likewise.
* config/visium/visium.c (visium_adjust_cost): Likewise.
* doc/tm.texi: Regenerate.
* haifa-sched.c (dep_cost_1): Adjust.
* target.def: Merge adjust_cost and adjust_cost_2.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238814
138bc75d -0d04-0410-961f-
82ee72b054a4
tbsaunde [Thu, 28 Jul 2016 11:01:39 +0000 (11:01 +0000)]
haifa-sched.c: make twins a auto_vec<rtx_insn *>
gcc/ChangeLog:
2016-07-28 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* haifa-sched.c (add_to_speculative_block): Make twins a vector.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238813
138bc75d -0d04-0410-961f-
82ee72b054a4
tbsaunde [Thu, 28 Jul 2016 11:01:34 +0000 (11:01 +0000)]
make pattern_regs a vec
gcc/ChangeLog:
2016-07-28 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* store-motion.c (struct st_expr): Make pattern_regs a vector.
(extract_mentioned_regs): Append to a vector instead of
returning a rtx_expr_list.
(st_expr_entry): Adjust.
(free_st_expr_entry): Likewise.
(store_ops_ok): Likewise.
(store_killed_in_insn): Likewise.
(find_moveable_store): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238812
138bc75d -0d04-0410-961f-
82ee72b054a4
marxin [Thu, 28 Jul 2016 08:45:29 +0000 (08:45 +0000)]
Introduce no_profile_instrument_function attribute
PR gcov-profile/68025
* tree-profile.c (tree_profiling): Respect
no_profile_instrument_function attribute.
* doc/extend.texi: Document no_profile_instrument_function
attribute.
PR gcov-profile/68025
* c-common.c (handle_no_profile_instrument_function_attribute):
PR gcov-profile/68025
* gcc.dg/no_profile_instrument_function-attr-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238811
138bc75d -0d04-0410-961f-
82ee72b054a4
marxin [Thu, 28 Jul 2016 08:31:54 +0000 (08:31 +0000)]
Add missing file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238810
138bc75d -0d04-0410-961f-
82ee72b054a4
marxin [Thu, 28 Jul 2016 08:31:36 +0000 (08:31 +0000)]
Add mark_spam.py script
* mark_spam.py: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238809
138bc75d -0d04-0410-961f-
82ee72b054a4