- 03 Apr, 2019 15 commits
-
-
* files.c (search_path_exhausted): Fix typo in comment. From-SVN: r270132
Jonathan Wakely committed -
PR rtl-optimization/81025 * reorg.c (skip_consecutive_labels): Do not skip past a BARRIER. From-SVN: r270129
Jeff Law committed -
2019-04-13 Christophe Lyon <christophe.lyon@linaro.org> PR c/71598 * gcc.dg/torture/pr71598-1.c: Skip if short_enums target. * gcc.dg/torture/pr71598-2.c: Skip if not short_enums target. From-SVN: r270126
Christophe Lyon committed -
re PR rtl-optimization/84101 (-O3 and -ftree-vectorize trying too hard for function returning trivial pair-of-uint64_t-structure) 2019-04-03 Richard Biener <rguenther@suse.de> PR tree-optimization/84101 * tree-vect-stmts.c: Include explow.h for hard_function_value, regs.h for hard_regno_nregs. (cfun_returns): New helper. (vect_model_store_cost): When vectorizing a store to a decl we return and the function ABI returns in a multi-reg location account for the possible spilling that will happen. * gcc.target/i386/pr84101.c: New testcase. From-SVN: r270123
Richard Biener committed -
The vector memory instructions only support short displacements. Reject invalid displacements early to prevent plenty of lay instructions to be generated later which then cannot be merged properly. gcc/ChangeLog: 2019-04-03 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390.c (s390_legitimate_address_p): Reject long displacement addresses for vector mode operands. From-SVN: r270122
Andreas Krebbel committed -
From-SVN: r270121
Jonathan Wakely committed -
When not optimizing for size, we can restore first blink, hence the return instruction will be executed faster. gcc/ xxxx-xx-xx Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (GMASK_LEN): Define. (arc_restore_callee_saves): Restore first blink when !optimize_size. From-SVN: r270120
Claudiu Zissulescu committed -
This patch add the missing documentation bits for -mbranch-protection in both extend.texi and invoke.texi. *** gcc/ChangeLog *** 2019-04-03 Sudakshina Das <sudi.das@arm.com> * doc/extend.texi: Add deprecated comment on sign-return-address function attribute and add mbranch-protection. * doc/invoke.texi: Add bti to the options for mbranch-protection. From-SVN: r270119
Sudakshina Das committed -
simple test such as below was failing. | void main(int argc, char *argv[]) | { | size_t total_time = 115424; // expected 115.424 | double secs = (double)total_time/(double)1000; | printf("%s %d %lf\n", "secs", total_time, secs); // prints 113.504 | printf("%d\n", (size_t)secs); | } The printf eventually called into glibc stdlib/divrem.c:__mpn_divrem() which uses the __arc__ specific inline asm macros from longlong.h which were causing miscompilation. include/ 2019-03-28 Vineet Gupta <vgupta@synopsys.com> PR 89877 * longlong.h [__arc__] (add_ssaaaa): Add cc clobber (sub_ddmmss): Likewise. Signed-off-by: Claudiu Zissulescu <claziss@gmail.com> From-SVN: r270118
Vineet Gupta committed -
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 1 commit
-
-
From-SVN: r270069
Joseph Myers committed
-