- 03 Apr, 2019 6 commits
-
-
The __glibcxx_assert macro should be used to check preconditions that users must meet, not to check postconditions that the implementation must meet. We have tests to verify std::variant meets its postconditions, users shouldn't pay for those checks at runtime. PR libstdc++/85184 * include/std/variant (_Copy_assign_base, _Move_assign_base, variant): Remove assertions. (variant::emplace<_Tp>): Remove result of emplace<N> directly. From-SVN: r270117
Jonathan Wakely committed -
These hash specializations should have been added when the pmr::string and related typedefs were added. * include/std/string (__hash_string_base): New class template defining operator() for hashing strings. (hash<pmr::string>, hash<pmr::u8string>, hash<pmr::u16string>) (hash<pmr::u32string>, hash<pmr::wstring>): Define for C++17. * testsuite/21_strings/basic_string/hash/hash.cc: New test. * testsuite/21_strings/basic_string/hash/hash_char8_t.cc: New test. From-SVN: r270116
Jonathan Wakely committed -
re PR fortran/89375 (fortran/expr.c:4723:5: warning: logical ‘or’ of equal expressions [-Wlogical-op]) 2019-04-03 Dominique d'Humieres <dominiq@gcc.gnu.org> PR fortran/89375 * expr.c (comp_pointer): Remove redundant condition. From-SVN: r270115
Dominique d'Humieres committed -
2019-04-03 Richard Biener <rguenther@suse.de> PR lto/89896 * lto-wrapper.c (run_gcc): Avoid implicit rules making the all target phony. From-SVN: r270112
Richard Biener committed -
A mem-initializer is not a type, and we don't want to turn autos within it into packs. * pt.c (make_pack_expansion): Change type_pack_expansion_p to false. From-SVN: r270111
Jason Merrill committed -
From-SVN: r270110
GCC Administrator committed
-
- 02 Apr, 2019 24 commits
-
-
From-SVN: r270105
Jeff Law committed -
PR target/89902 PR target/89903 * config/i386/i386.c (dimode_scalar_to_vector_candidate_p): Return false for variable DImode shifts. (dimode_scalar_chain::compute_convert_gain): Do not handle register count operand in variable DImode shifts. (dimode_scalar_chain::make_vector_copies): Remove support to copy count argument of a variable shift instruction to a vector register. (dimode_scalar_chain::convert_reg): Remove support to convert count argument of a variable shift instruction. testsuite/ChangeLog: PR target/89902 PR target/89903 * gcc.target/i386/pr70799-4.c: Remove. * gcc.target/i386/pr70799-5.c: Remove. * gcc.target/i386/pr89902.c: New test. * gcc.target/i386/pr89903.c: Ditto. From-SVN: r270102
Uros Bizjak committed -
2019-04-02 Andrey Belevantsev <abel@ispras.ru> PR rtl-optimization/84206 * sel-sched-ir.h (get_all_loop_exits): Avoid the outer loop when iterating over loop headers. * gcc.dg/pr84206.c: New test. From-SVN: r270096
Andrey Belevantsev committed -
2019-04-02 Andrey Belevantsev <abel@ispras.ru> PR rtl-optimization/85876 * sel-sched.c (code_motion_path_driver): Avoid unwinding first_insn beyond the original fence. * gcc.dg/pr85876.c: New test. From-SVN: r270095
Andrey Belevantsev committed -
gcc/ChangeLog: 2019-04-02 Ulrich Weigand <uweigand@de.ibm.com> * config.gcc: Mark spu* targets as deprecated/obsolete. From-SVN: r270092
Ulrich Weigand committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390-builtin-types.def: New builtin function type definitions. Remove unused types. * config/s390/s390-builtins.def (s390_vcdgb, s390_vcdlgb) (s390_vcgdb, s390_vclgdb): Remove low-level builtin definitions. (s390_vec_float, s390_vec_signed, s390_vec_unsigned): New overloaded builtins. (s390_vcefb, s390_vcdgb, s390_vcelfb, s390_vcdlgb, s390_vcfeb) (s390_vcgdb, s390_vclfeb, s390_vclgdb): New low-level builtins. * config/s390/vecintrin.h (vec_float): New builtin macro definition. (vec_double, vec_signed, vec_unsigned): Define to use the new overloaded builtins. * config/s390/vx-builtins.md ("vec_double_s64", "vec_double_u64"): Remove expanders. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/zvector/vec-double-compile.c: New test. * gcc.target/s390/zvector/vec-float-compile.c: New test. * gcc.target/s390/zvector/vec-signed-compile.c: New test. * gcc.target/s390/zvector/vec-unsigned-compile.c: New test. From-SVN: r270091
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390-builtin-types.def: New builtin function type definitions. * config/s390/s390-builtins.def (s390_vec_search_string_cc) (s390_vec_search_string_until_zero_cc): New overloaded builtins. (s390_vstrsb, s390_vstrsh, s390_vstrsf, s390_vstrszb) (s390_vstrszh, s390_vstrszf): New low-level builtins. * config/s390/s390.md (UNSPEC_VEC_VSTRS, UNSPEC_VEC_VSTRSCC): New constant definitions. * config/s390/vecintrin.h (vec_search_string_cc) (vec_search_string_until_zero_cc): New builtin name definitions. * config/s390/vx-builtins.md ("vstrs<mode>", "vstrsz<mode>"): New expanders. ("vec_vstrs<mode>"): New insn definition. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/zvector/vec-search-string-cc-1.c: New test. * gcc.target/s390/zvector/vec-search-string-cc-compile.c: New test. * gcc.target/s390/zvector/vec-search-string-until-zero-cc-1.c: New test. * gcc.target/s390/zvector/vec-search-string-until-zero-cc-compile.c: New test. From-SVN: r270090
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390-builtin-types.def: Add new builtin function types. * config/s390/s390-builtins.def (s390_vec_sldb, s390_vec_srdb): New overloaded builtins. (s390_vec_sldb, s390_vec_srdb): New low-level builtins. and s390_vsrd. * config/s390/s390.md (UNSPEC_VEC_SLDB): Rename to ... (UNSPEC_VEC_SLDBYTE): ... this. (UNSPEC_VEC_SLDBIT, UNSPEC_VEC_SRDBIT): New constant definitions. * config/s390/vecintrin.h (vec_sldb, vec_srdb): New builtin name definitions. * config/s390/vx-builtins.md ("vec_sld<mode>", "vec_sldw<mode>"): Rename UNSPEC_VEC_SLDB to UNSPEC_VEC_SLDBYTE. ("vec_sldb<mode>", "vec_srdb<mode>"): New insn definitions. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/zvector/vec-shift-left-double-by-bit-1.c: New test. * gcc.target/s390/zvector/vec-shift-right-double-by-bit-1.c: New test. From-SVN: r270089
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> ("*vec_splats_bswap_vec<mode>", "*vec_splats_bswap_elem<mode>"): New insn definition. * config/s390/vx-builtins.md (V_HW_HSD): Move to ... * config/s390/vector.md (V_HW_HSD): ... here. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/zvector/replicate-bswap-1.c: New test. * gcc.target/s390/zvector/replicate-bswap-2.c: New test. From-SVN: r270088
Andreas Krebbel committed -
PR testsuite/89916 * gcc.dg/pr86928.c: Do not attempt to add -m32. From-SVN: r270087
Alexander Monakov committed -
2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/vecintrin.h: Map vec_vster low-level builtins to vec_vler. * config/s390/vx-builtins.md ("*vec_insert_and_zero_bswap<mode>") ("*vec_set_bswap_elem<mode>", "*vec_set_bswap_vec<mode>") ("*vec_extract_bswap_vec<mode>", "*vec_extract_bswap_elem<mode>"): New insn definitions. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/zvector/bswap-and-replicate-1.c: New test. * gcc.target/s390/zvector/get-element-bswap-1.c: New test. * gcc.target/s390/zvector/get-element-bswap-2.c: New test. * gcc.target/s390/zvector/get-element-bswap-3.c: New test. * gcc.target/s390/zvector/get-element-bswap-4.c: New test. * gcc.target/s390/zvector/set-element-bswap-1.c: New test. * gcc.target/s390/zvector/set-element-bswap-2.c: New test. * gcc.target/s390/zvector/set-element-bswap-3.c: New test. From-SVN: r270086
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390-builtin-types.def: Add new builtin function type. * config/s390/s390-builtins.def: Add overloaded builtin s390_vec_reve and low-level builtins for s390_vler and s390_vster. * config/s390/s390.md (UNSPEC_VEC_ELTSWAP): New constant definition. * config/s390/vecintrin.h (vec_reve): New builtin name definition. * config/s390/vx-builtins.md (V_HW_HSD): New mode iterator. ("eltswap<mode>"): New expander. ("*eltswapv16qi", "*eltswap<mode>", "*eltswap<mode>_emu"): New insn definitions. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/zvector/vec-reve-load-byte-z14.c: New test. * gcc.target/s390/zvector/vec-reve-load-byte.c: New test. * gcc.target/s390/zvector/vec-reve-load-halfword-z14.c: New test. * gcc.target/s390/zvector/vec-reve-load-halfword.c: New test. * gcc.target/s390/zvector/vec-reve-store-byte-z14.c: New test. * gcc.target/s390/zvector/vec-reve-store-byte.c: New test. From-SVN: r270085
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390-builtin-types.def: Add new builtin function types. * config/s390/s390-builtins.def: Add overloaded builtin s390_vec_revb. Add low-level builtins for vlbr and vstbr instructions. * config/s390/vecintrin.h (vec_revb): New builtin name definition. * config/s390/vector.md (VT_HW_HSDT): New mode iterator. ("bswap<mode>"): New expander. ("*bswap<mode>", "*bswap<mode>_emu"): New insn definitions. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/zvector/vec-revb-load-double-z14.c: New test. * gcc.target/s390/zvector/vec-revb-load-double.c: New test. * gcc.target/s390/zvector/vec-revb-store-double-z14.c: New test. * gcc.target/s390/zvector/vec-revb-store-double.c: New test. From-SVN: r270084
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390-builtins.def (B_VXE2): New builtin flag definition. * config/s390/s390-c.c (s390_cpu_cpp_builtins_internal): Increment vector builtin version number in __VEC__. From-SVN: r270083
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390.md (VX_CONV_BFP, VX_CONV_INT): New mode iterators. (SFSI): New mode attribute. ("*fixuns_truncdfdi2_vx", "*fix_truncdfdi2_bfp_z13") ("*floatunsdidf2_z13", ): Add support for 32 bit conversions and rename to ... ("*fixuns_trunc<VX_CONV_BFP:mode><VX_CONV_INT:mode>2_z13") ("*fix_trunc<VX_CONV_BFP:mode><VX_CONV_INT:mode>2_bfp_z13") ("*floatuns<VX_CONV_INT:mode><VX_CONV_BFP:mode>2_z13"): ... these. ("floatsi<mode>2"): Add wcefb instruction. From-SVN: r270082
Andreas Krebbel committed -
gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390.md ("xde"): Extend mode attribute to vector types. * config/s390/vector.md (VX_VEC_CONV_BFP, VX_VEC_CONV_INT): New mode iterators. ("floatv2div2df2", "floatunsv2div2df2", "fix_truncv2dfv2di2") ("fixuns_truncv2dfv2di2"): Enhance with mode iterator to also support 32 bit fp-int conversions. Rename to ... ("float<VX_VEC_CONV_INT:mode><VX_VEC_CONV_BFP:mode>2") ("floatuns<VX_VEC_CONV_INT:mode><VX_VEC_CONV_BFP:mode>2") ("fix_trunc<VX_VEC_CONV_BFP:mode><VX_VEC_CONV_INT:mode>2") ("fixuns_trunc<VX_VEC_CONV_BFP:mode><VX_VEC_CONV_INT:mode>2"): ... to these. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/arch13/fp-signedint-convert-1.c: New test. * gcc.target/s390/arch13/fp-unsignedint-convert-1.c: New test. From-SVN: r270081
Andreas Krebbel committed -
Compared to the load on condition instructions we already have the new select instruction allows to have a THEN and and ELSE source operand - but only for register to register loads. gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390.c (s390_rtx_costs): Do not add extra costs for if-then-else constructs if we can use the select instruction. * config/s390/s390.md ("*mov<mode>cc"): Add the new instructions. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/arch13/sel-1.c: New test. From-SVN: r270080
Andreas Krebbel committed -
variant. The new arch13 popcount instruction counts bits in the entire 64 bit register instead of just in 8 bit portions. gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390.md ("*popcountdi_arch13_cc") ("*popcountdi_arch13_cconly", "*popcountdi_arch13"): New insn definition. ("*popcount<mode>", "popcountdi2", "popcountsi2", "popcounthi2"): Append _z196 to make it ... ("*popcount<mode>_z196", "popcountdi2_z196", "popcountsi2_z196") ("popcounthi2_z196"): ... this. ("popcountdi2_z196"): Remove TARGET_64BIT from the insn condition. ("popcountdi2", "popcountsi2", "popcounthi2"): New expanders. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/arch13/popcount-1.c: New test. From-SVN: r270079
Andreas Krebbel committed -
Make use of the new bit operation instructions when generating code for the arch13 level. gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390.c (s390_canonicalize_comparison): Convert certain compares for arch13 in order to make use of the condition code result produced by the new instructions. (s390_rtx_costs): Adjust the costs for nnrk, nngrk, nork, nogrk, nxrk, and nxgrk instruction patterns. * config/s390/s390.md (ANDOR, bitops_name, inv_bitops_name) (inv_no): Add new code iterator together with some attributes. ("*andc_split_<mode>"): Disable splitter for arch13. ("*<ANDOR:bitops_name>c<GPR:mode>_cc") ("*<ANDOR:bitops_name>c<GPR:mode>_cconly") ("*<ANDOR:bitops_name>c<GPR:mode>") ("*n<ANDOR:inv_bitops_name><GPR:mode>_cc") ("*n<ANDOR:inv_bitops_name><mode>_cconly") ("*n<ANDOR:inv_bitops_name><mode>", "*nxor<GPR:mode>_cc") ("*nxor<mode>_cconly", "*nxor<mode>"): New insn definitions. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/arch13/bitops-1.c: New test. * gcc.target/s390/arch13/bitops-2.c: New test. * gcc.target/s390/md/andc-splitter-1.c: Add -march=z14 build option and adjust line numbers. * gcc.target/s390/md/andc-splitter-2.c: Likewise. From-SVN: r270078
Andreas Krebbel committed -
This patch enables the command line options and provides the proper macros for checking. gcc/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * common/config/s390/s390-common.c (processor_flags_table): New entry for arch13. * config.gcc: Support arch13 with the --with-arch= configure flag. * config/s390/driver-native.c (s390_host_detect_local_cpu): * config/s390/s390-opts.h (enum processor_type): Add PROCESSOR_ARCH13. * config/s390/s390.c (s390_get_sched_attrmask) (s390_get_unit_mask): Add PROCESSOR_ARCH13. * config/s390/s390.h (enum processor_flags): Add PF_VXE2 and PF_ARCH13. * config/s390/s390.md (TARGET_CPU_ARCH13, TARGET_CPU_ARCH13_P) (TARGET_CPU_VXE2, TARGET_CPU_VXE2_P, TARGET_ARCH13) (TARGET_ARCH13_P, TARGET_VXE2, TARGET_VXE2_P): New macro definitions. * config/s390/s390.opt: Support arch13 as processor type in command line options. gcc/testsuite/ChangeLog: 2019-04-02 Andreas Krebbel <krebbel@linux.ibm.com> * gcc.target/s390/s390.exp: Run tests in arch13 subdir. * lib/target-supports.exp (check_effective_target_s390_vxe2): New runtime check for the vxe2 hardware feature on IBM Z. From-SVN: r270077
Andreas Krebbel committed -
2019-04-02 Martin Liska <mliska@suse.cz> PR translation/89912 * params.def (PARAM_GRAPHITE_MAX_ARRAYS_PER_SCOP): Fix param description of graphite-max-arrays-per-scop. From-SVN: r270076
Martin Liska committed -
* config/sparc/linux64.h (ASAN_REJECT_SPEC): New macro. (ASAN_CC1_SPEC): Use it in 64-bit mode. * config/sparc/sol2.h (ASAN_REJECT_SPEC): Remove superfluous colon. From-SVN: r270075
Eric Botcazou committed -
gcc/po/ChangeLog: 2019-04-02 Iain Buclaw <ibuclaw@gdcproject.org> PR d/89823 * EXCLUDES: Update list of d/dmd sources. * gcc.pot: Regenerated. From-SVN: r270074
Iain Buclaw committed -
From-SVN: r270072
GCC Administrator committed
-
- 01 Apr, 2019 10 commits
-
-
From-SVN: r270069
Joseph Myers committed -
DR 1321 clarified that two dependent names are equivalent if the names are the same, even if the result of name lookup is different. We need to implement that in hashing like we already do in comparison and mangling. * pt.c (iterative_hash_template_arg) [CALL_EXPR]: Use dependent_name. From-SVN: r270068
Jason Merrill committed -
check_avx2_available should check avx2_available, instead of avx_available. Otherwise, check_avx2_available may use result from check_avx_available. PR testsuite/89907 * lib/target-supports.exp (check_avx2_available): Replace avx_available with avx2_available. From-SVN: r270066
H.J. Lu committed -
2019-04-01 Andrey Belevantsev <abel@ispras.ru> PR rtl-optimization/85412 * sel-sched.c (sel_sched_region): Assign reset_sched_cycles_p before sel_sched_region_1, not after. * gcc.dg/pr85412.c: New test. From-SVN: r270065
Andrey Belevantsev committed -
re PR c++/62207 (ICE: tree check: expected tree that contains 'decl minimal' structure, have 'overload' in tsubst_copy, at cp/pt.c) /cp 2019-04-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/62207 * pt.c (tsubst_copy): Deal with lookup_name not returing a variable. /testsuite 2019-04-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/62207 * g++.dg/template/crash130.C: New. * g++.dg/template/crash131.C: Likewise. From-SVN: r270064
Paolo Carlini committed -
gcc/c-family/ChangeLog: PR c/89685 * c-attribs.c (handle_copy_attribute): Handle references and non-constant expressions. gcc/testsuite/ChangeLog: PR c/89685 * gcc.dg/attr-copy-8.c: New test. * g++.dg/ext/attr-copy-2.C: New test. From-SVN: r270062
Martin Sebor committed -
2019-04-01 Andrey Belevantsev <abel@ispras.ru> PR rtl-optimization/86928 * sel-sched-ir.c (sel_redirect_edge_and_branch_force): Invoke compute_live if necessary. (sel_redirect_edge_and_branch): Likewise. * gcc.dg/pr86928.c: New test. From-SVN: r270061
Andrey Belevantsev committed -
2019-04-01 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/89865 * ira-costs.c (process_bb_node_for_hard_reg_moves): Skip hard register if it is a part of small class. From-SVN: r270060
Vladimir Makarov committed -
2019-04-01 Andrey Belevantsev <abel@ispras.ru> PR rtl-optimization/87273 * sel-sched-ir.c (merge_fences): Remove assert. * gcc.dg/pr87273.c: New test. From-SVN: r270059
Andrey Belevantsev committed -
PR d/88462 libphobos: Fix abort in pthread_mutex_init on Solaris. Merges upstream druntime d57fa1ff. Reviewed-on: https://github.com/dlang/druntime/pull/2534 From-SVN: r270057
Iain Buclaw committed
-