[PATCH] test/rs6000: Add Power9 and up as vect_len target

2020-08-30 Thread Kewen.Lin via Gcc-patches
Hi, Power9 supports vector with length in bytes load/store, this patch is to teach check_effective_target_vect_len_load_store to take it and its laters as effective vector with length targets. Also supplement the documents for has_arch_pwr*. Bootstrapped/regtested on powerpc64le-linux-gnu P8. I

Re: [PATCH] RISC-V/libgcc: Use `-fasynchronous-unwind-tables' for LIB2_DIVMOD_FUNCS

2020-08-30 Thread Kito Cheng via Gcc-patches
Hi Maciej: LGTM, thanks for your patch! On Sat, Aug 29, 2020 at 9:19 PM Maciej W. Rozycki via Gcc-patches wrote: > > Use `-fasynchronous-unwind-tables' rather than `-fexceptions > -fnon-call-exceptions' in LIB2_DIVMOD_FUNCS compilation flags so as to > provide unwind tables for the affected func

[PATCH] Adjust testcase

2020-08-30 Thread Hongtao Liu via Gcc-patches
Hi: This patch is to adjust testcases which failed the regression test when gcc is built with -march=skylake-avx512. Also add runtime check for AVX512 tests. gcc/testsuite/ChangeLog: PR target/96246 PR target/96855 PR target/96856 PR target/96857 * g++.t

PING [PATCH 1/4] unroll: Add middle-end unroll factor estimation

2020-08-30 Thread Kewen.Lin via Gcc-patches
Hi, I'd like to gentle ping this since IVOPTs part is already to land. https://gcc.gnu.org/pipermail/gcc-patches/2020-May/546698.html BR, Kewen on 2020/5/28 下午8:19, Kewen.Lin via Gcc-patches wrote: > > gcc/ChangeLog > > 2020-MM-DD Kewen Lin > > * cfgloop.h (struct loop): New field e

Re: [PATCH v2] testsuite: Update some vect cases for partial vectors

2020-08-30 Thread Kewen.Lin via Gcc-patches
Hi Richard, > >> +# Return true if loops using partial vectors are supported but only for >> loops >> +# whose need to iterate can be removed, that is, value of >> +# param_vect_partial_vector_usage is set to 1. > > For these comments, I think it would be good to use the sourcebuild.texi > word

[PATCH,GCC9]rs6000: Backport fixes for PR92923 and PR93136

2020-08-30 Thread Kewen.Lin via Gcc-patches
Hi, This patch is to backport the fix for PR92923 and its sequent fix for PR93136 to GCC-9 branch. We found the builtin functions needlessly using VIEW_CONVERT_EXPRs on their operands can probably cause remarkable performance issue especailly when they are in the hotspot. One typical case is h

Re: [PATCH] [AVX512]For vector compare to mask register, UNSPEC is needed instead of comparison operator [PR96243]

2020-08-30 Thread Hongtao Liu via Gcc-patches
ping ^2 On Wed, Aug 19, 2020 at 7:37 PM Hongtao Liu wrote: > > ping^1 > > On Tue, Aug 11, 2020 at 5:43 PM Hongtao Liu wrote: > > > > Hi: > > The issue is described in the bugzilla. > > Bootstrap is ok, regression test for i386/x86-64 backend is ok. > > Ok for trunk? > > > > ChangeLog > > gc

[committed] use get_size_range instead of get_range to obtain range of valid sizes

2020-08-30 Thread Martin Sebor via Gcc-patches
The get_size_range() function is more appropriate to call than get_range() in contexts where the range of object sizes is needed because (as also mentioned in the patch for PR 92942 I submitted last Friday) it has the necessary logic to constrain the range to just the values that are valid for ob

[OG10] [committed 0/2]

2020-08-30 Thread Sandra Loosemore
This set of patches addresses some deficiencies in the way the OpenACC kernels loop annotator parses the loop end test in C/C++ "for" loops to ensure the loop bound can safely be hoisted outside of the loop. The Fortran front end does not have these problems because the normal semantics of DO loops

[OG10] [committed 2/2] Relax some restrictions on the loop bound in kernels loop annotation.

2020-08-30 Thread Sandra Loosemore
OpenACC loop semantics require that the loop bound be computable before entering the loop, rather than the C/C++ semantics where the end test is evaluated on every iteration. Formerly the kernels loop annotater permitted only constants and variables not modified in the loop body in the loop bound

[OG10] [committed 1/2] Clean up loop variable extraction in OpenACC kernels loop annotation.

2020-08-30 Thread Sandra Loosemore
The code for identifying annotatable loops in OpenACC kernels regions previously looked for the loop variable as the left-hand side of the comparison in the loop end test. However, front end optimizations sometimes switch the sense of the comparison, making this method unreliable. In particular,

[r10-8433 Regression] FAIL: gcc.dg/vect/slp-46.c scan-tree-dump-times vect "vectorizing stmts using SLP" 2 on Linux/x86_64 (-m64 -march=cascadelake)

2020-08-30 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, 7d535ca86a548b76384f3687e1d46677cb652bdb is the first bad commit commit 7d535ca86a548b76384f3687e1d46677cb652bdb Author: Richard Biener Date: Mon Jul 6 16:26:50 2020 +0200 tree-optimization/96075 - fix bogus misalignment calculation caused FAIL: gcc.dg/vect/slp-46.c -flt

[r10-8599 Regression] FAIL: gcc.target/i386/pr92865-1.c scan-assembler-times vmovdq[au]8[\t ] 6 on Linux/x86_64 (-m64 -march=cascadelake)

2020-08-30 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, f098bc87dcae5646d11a351cfb55d0e1124c7f60 is the first bad commit commit f098bc87dcae5646d11a351cfb55d0e1124c7f60 Author: liuhongt Date: Mon Jul 20 10:13:58 2020 +0800 Using UNSPEC for vector compare to mask register. caused FAIL: gcc.target/i386/pr92865-1.c scan-assemble

[r10-8599 Regression] FAIL: gcc.target/i386/vectorize8.c (test for excess errors) on Linux/x86_64 (-m64 -march=cascadelake)

2020-08-30 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, f098bc87dcae5646d11a351cfb55d0e1124c7f60 is the first bad commit commit f098bc87dcae5646d11a351cfb55d0e1124c7f60 Author: liuhongt Date: Mon Jul 20 10:13:58 2020 +0800 Using UNSPEC for vector compare to mask register. caused FAIL: gcc.target/i386/vectorize8.c (internal co

Re: [PATCH 3/n] ipa: Simplify interface of ipa_call_context::estimate_size_and_time

2020-08-30 Thread Martin Jambor
Hi, On Sat, Aug 29 2020, Jan Hubicka wrote: >> Hi, >> >> On Sat, Aug 29 2020, Jan Hubicka wrote: >> >> Hi, >> >> >> >> this patch changes ipa_call_context::estimate_size_and_time to store >> >> its results into member fields of the ipa_call_context class instead >> >> into pointers it receives a

Re: [PATCH] x86: Fix up ssse3_pshufbv8qi splitter

2020-08-30 Thread Uros Bizjak via Gcc-patches
On Sun, Aug 30, 2020 at 11:21 AM Jakub Jelinek wrote: > > Hi! > > The constant pool size optimization I was testing resulted in various ICEs > in gcc.target/i386/ testsuite, the problem is that the ssse3_pshufbv8qi > splitter emits invalid RTL, in V4SImode 0xf7f7f7f7 CONST_INTs shouldn't > appear,

Re: [PATCH] [AVX512] [PR87767] Optimize memory broadcast for constant vector under AVX512

2020-08-30 Thread Jakub Jelinek via Gcc-patches
On Fri, Aug 28, 2020 at 06:25:46PM +0200, Jakub Jelinek via Gcc-patches wrote: > You're right, thanks for spotting it, I've missed native_encode_rtx will do > quick_push rather than safe_push. > > Updated patch below, it shouldn't be needed in the second loop, because > the first loop should alrea

[PATCH] x86: Fix up ssse3_pshufbv8qi splitter

2020-08-30 Thread Jakub Jelinek via Gcc-patches
Hi! The constant pool size optimization I was testing resulted in various ICEs in gcc.target/i386/ testsuite, the problem is that the ssse3_pshufbv8qi splitter emits invalid RTL, in V4SImode 0xf7f7f7f7 CONST_INTs shouldn't appear, instead they should have been -0x8080809 (0xf7f7f7f7 sign extended