Re: [PATCH] Fix PR71815 (SLSR misses PHI opportunities)

2017-06-20 Thread Bill Schmidt
On Jun 20, 2017, at 6:23 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Fri, Jun 16, 2017 at 6:10 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> Hi, >> >> PR71815 identifies a situation where SLSR misses opportunities for >>

Re: [PATCH] Fix PR71815 (SLSR misses PHI opportunities)

2017-06-23 Thread Bill Schmidt
! Bill [gcc] 2016-06-23 Bill Schmidt <wschm...@linux.vnet.ibm.com> * gimple-ssa-strength-reduction.c (uses_consumed_by_stmt): New function. (find_basis_for_candidate): Call uses_consumed_by_stmt rather than has_single_use. (slsr_process_phi): Li

Re: [PATCH] Fix PR71815 (SLSR misses PHI opportunities)

2017-06-26 Thread Bill Schmidt
> On Jun 26, 2017, at 2:22 PM, H.J. Lu wrote: > > This may have caused: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81216 > > -- > H.J. > Nope. Reverting my patch does not solve the problem, which appears to begin with r249643. Bill

[PATCH, rs6000, committed] Fix gcc.target/powerpc/p8-vec-xl-xst.c target selector

2017-05-22 Thread Bill Schmidt
Hi, The subject test requires little endian, but the target selector doesn't specify this. This patch fixes that. Tested on BE/LE P8 systems, committed as obvious. Thanks, Bill 2017-05-22 Bill Schmidt <wschm...@linux.vnet.ibm.com> * gcc.target/powerpc/p8-vec-xl-xst.c: Fix

Re: [PATCH, rs6000] Fold vector shifts in GIMPLE

2017-06-01 Thread Bill Schmidt
> On Jun 1, 2017, at 2:48 AM, Richard Biener wrote: > > On Wed, May 31, 2017 at 10:01 PM, Will Schmidt > wrote: >> Hi, >> >> Add support for early expansion of vector shifts. Including >> vec_sl (shift left), vec_sr (shift right),

Re: [PATCH, rs6000] Fold vector shifts in GIMPLE

2017-06-07 Thread Bill Schmidt
> On Jun 6, 2017, at 11:37 AM, Will Schmidt <will_schm...@vnet.ibm.com> wrote: > > On Thu, 2017-06-01 at 10:15 -0500, Bill Schmidt wrote: >>> On Jun 1, 2017, at 2:48 AM, Richard Biener <richard.guent...@gmail.com> >>> wrote: >>> >>> On W

[PATCH] Fix PR71815 (SLSR misses PHI opportunities)

2017-06-16 Thread Bill Schmidt
. I've also tested this with SPEC cpu2006 and the patch is performance neutral on a POWER8 box (as expected). Is this ok for trunk? Thanks, Bill [gcc] 2016-06-16 Bill Schmidt <wschm...@linux.vnet.ibm.com> * gimple-ssa-strength-reduction.c (uses_consumed_by_stmt): New fu

[PATCH, rs6000] Fix vec_xl and vec_xst intrinsics for P8

2017-05-04 Thread Bill Schmidt
for trunk? Thanks, Bill [gcc] 2017-05-04 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/rs6000.c: Define POWER8 built-ins for vec_xl and vec_xst with short and char pointer arguments. [gcc/testsuite] 2017-05-04 Bill Schmidt <wschm...@linux.vne

Re: [PATCH, rs6000] Avoid vectorizing versioned copy loops with vectorization factor 2

2017-05-04 Thread Bill Schmidt
...only without the typo in the ChangeLog below... > On May 3, 2017, at 2:43 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > Hi, > > We recently became aware of some poor code generation as a result of > unprofitable (for POWER) loop vectorization. When

Re: [PATCH, rs6000] [v2] Folding of vector loads in GIMPLE

2017-09-15 Thread Bill Schmidt
On Sep 15, 2017, at 4:13 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Thu, Sep 14, 2017 at 4:38 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> On Sep 14, 2017, at 5:15 AM, Richard Biener <richard.guent...@gmail.com> >> wrote: &g

Re: [PATCH, rs6000] [v2] Folding of vector loads in GIMPLE

2017-09-13 Thread Bill Schmidt
On Sep 13, 2017, at 7:23 AM, Richard Biener wrote: > > On Tue, Sep 12, 2017 at 11:08 PM, Will Schmidt > wrote: >> Hi, >> >> [PATCH, rs6000] [v2] Folding of vector loads in GIMPLE >> >> Folding of vector loads in GIMPLE. >> >> Add code to

Re: [PATCH, rs6000] [v2] Folding of vector loads in GIMPLE

2017-09-14 Thread Bill Schmidt
On Sep 14, 2017, at 5:15 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Wed, Sep 13, 2017 at 10:14 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> On Sep 13, 2017, at 10:40 AM, Bill Schmidt <wschm...@linux.vnet.ibm.com> >> wrot

Re: [PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-19 Thread Bill Schmidt
On 9/19/17 12:38 PM, Bill Schmidt wrote: > Hi, > > https://gcc.gnu.org/PR82255 identifies a problem in the vector cost model > where a vectorized load is treated as having the cost of a strided load > in a case where we will not actually generate a strided load. This is >

Re: [PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-19 Thread Bill Schmidt
On Sep 19, 2017, at 4:21 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > On Sep 19, 2017, at 3:58 PM, Richard Sandiford <richard.sandif...@linaro.org> > wrote: >> >> Bill Schmidt <wschm...@linux.vnet.ibm.com> w

Re: [PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-19 Thread Bill Schmidt
On Sep 19, 2017, at 3:58 PM, Richard Sandiford <richard.sandif...@linaro.org> wrote: > > Bill Schmidt <wschm...@linux.vnet.ibm.com> writes: >> Index: gcc/tree-vect-stmts.c >> === >> --- gcc/t

Re: [PATCH,rs6000] Replace swap of a loaded vector constant with load of a swapped vector constant

2017-09-19 Thread Bill Schmidt
Hi Kelvin, This is in quite good shape. In addition to Segher's comments, I have a few questions/requests below. > On Sep 15, 2017, at 4:04 PM, Kelvin Nilsen > wrote: > > @@ -385,6 +396,25 @@ const_load_sequence_p (swap_web_entry *insn_entry, >

Re: [PATCH, rs6000] folding of vector stores in GIMPLE

2017-09-22 Thread Bill Schmidt
On Sep 22, 2017, at 5:27 AM, Richard Biener wrote: > > On Thu, Sep 21, 2017 at 10:56 PM, Will Schmidt > wrote: >> Hi, >> >> Folding of vector stores in GIMPLE. >> >> - Add code to handle gimple folding for the vec_st (vector store)

Re: [PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-21 Thread Bill Schmidt
On Sep 21, 2017, at 2:37 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Wed, Sep 20, 2017 at 9:17 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> On Sep 20, 2017, at 2:14 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> >> wrot

Re: [PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-20 Thread Bill Schmidt
On Sep 20, 2017, at 3:49 AM, Richard Sandiford <richard.sandif...@linaro.org> wrote: > > Bill Schmidt <wschm...@linux.vnet.ibm.com> writes: >> On Sep 19, 2017, at 4:21 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> >> wrote: >>> On Sep 19, 2017, at 3

Re: [PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-20 Thread Bill Schmidt
On Sep 20, 2017, at 3:49 AM, Richard Sandiford wrote: > > But I think this shows up another problem. In the vectorised loop, > we have 1 copy of the load and 4 copies of the ABS (after unpacking). > But vect_analyze_slp_cost_1 is being called with ncopies_for_cost

Re: [PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-20 Thread Bill Schmidt
On Sep 20, 2017, at 2:14 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > On Sep 20, 2017, at 3:49 AM, Richard Sandiford <richard.sandif...@linaro.org> > wrote: >> >> But I think this shows up another problem. In the vectorised loop, >>

Re: [PATCH, rs6000] [v2] Folding of vector loads in GIMPLE

2017-09-13 Thread Bill Schmidt
On Sep 13, 2017, at 10:40 AM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > On Sep 13, 2017, at 7:23 AM, Richard Biener <richard.guent...@gmail.com> > wrote: >> >> On Tue, Sep 12, 2017 at 11:08 PM, Will Schmidt >> <will_schm...@vnet.ibm.com>

[PATCH] Fix PR82255 (vectorizer cost model overcounts some vector load costs)

2017-09-19 Thread Bill Schmidt
. Is this ok for trunk? Thanks! Bill [gcc] 2017-09-19 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR tree-optimization/82255 * tree-vect-stmts.c (vect_model_load_cost): Don't count vec_construct cost when a true strided load isn't present. [gcc/testsuite] 2017

[PATCH] Fix PR81987 (SLSR dominance issue)

2017-08-30 Thread Bill Schmidt
for the increment associated with this initialization to effectively infinite. Bootstrapped and tested on powerpc64le-linux-gnu with no regressions. Is this okay for trunk, and backport to all supported releases after a period of burn-in? Thanks, Bill [gcc] 2017-08-30 Bill Schmidt <ws

[PATCH v2, rs6000] Fix PR81833

2017-08-29 Thread Bill Schmidt
more on these. Thanks! Bill [gcc] 2017-08-29 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR target/81833 * config/rs6000/altivec.md (altivec_vsum2sws): Convert from a define_insn to a define_expand. (altivec_vsum2sws_direct): New defin

Re: [PATCH] Fix powerpc ICE with __builtin_vec_ld on an array (PR target/82112, take 2)

2017-09-12 Thread Bill Schmidt
> On Sep 12, 2017, at 10:00 AM, Segher Boessenkool > wrote: > > Hi Jakub, > > On Tue, Sep 12, 2017 at 04:25:48PM +0200, Jakub Jelinek wrote: >> On Thu, Sep 07, 2017 at 10:40:30AM +0200, Jakub Jelinek wrote: >>> The C and C++ FE handle resolve_overloaded_builtin

Re: [PATCH, rs6000] [v2] Folding of vector loads in GIMPLE

2017-09-12 Thread Bill Schmidt
> On Sep 12, 2017, at 4:08 PM, Will Schmidt wrote: > > Hi, > > [PATCH, rs6000] [v2] Folding of vector loads in GIMPLE > > Folding of vector loads in GIMPLE. > > Add code to handle gimple folding for the vec_ld builtins. > Remove the now obsoleted folding code for

Re: [PATCH, rs6000] Folding of vector loads in GIMPLE

2017-09-12 Thread Bill Schmidt
> On Sep 12, 2017, at 9:41 AM, Will Schmidt wrote: > > Hi > > [PATCH, rs6000] Folding of vector loads in GIMPLE > > Folding of vector loads in GIMPLE. > > - Add code to handle gimple folding for the vec_ld builtins. > - Remove the now obsoleted folding code for

Re: [PATCH v2,rs6000] Replace swap of a loaded vector constant with load of a swapped vector constant

2017-09-26 Thread Bill Schmidt
On Sep 26, 2017, at 5:57 AM, Segher Boessenkool wrote: > >> +/* { dg-final { scan-assembler-not "swap" } } */ > > So what is this really testing for? xxswapd? But a) we never generate > that, and b) you could use a better regex? Agreed, this looks like an

[PATCH] Fix PR82337 (SLSR and abnormal PHIs)

2017-09-27 Thread Bill Schmidt
a short wait. Thanks, Bill 2017-09-26 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR tree-optimization/82337 * gimple-ssa-strength-reduction.c (find_phi_def): Don't record a phi definition if the PHI result appears in an abnormal PHI. (find_basis_for_bas

[PATCH, rs6000] Fix PR81504 (vec_ld / vec_st bug)

2017-08-24 Thread Bill Schmidt
okay for trunk and 7? Thanks, Bill 2017-08-24 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR target/81504 * config/rs6000/rs6000-p8swap.c (find_alignment_op): Add reference parameter and_insn and return it. (recombine_lvx_pattern): Insert a copy

[PATCH][PING^2] Fix PR81503 (SLSR invalid fold)

2017-08-27 Thread Bill Schmidt
Ping. Thanks! Bill > On Aug 14, 2017, at 9:32 AM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > Hi, > > I'd like to ping this patch, please. > > Thanks! > Bill > >> On Aug 3, 2017, at 2:34 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wr

Re: [PATCH] Fix PR81503 (SLSR invalid fold)

2017-08-28 Thread Bill Schmidt
On Aug 28, 2017, at 7:37 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Thu, Aug 3, 2017 at 9:34 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> Hi, >> >> Here's v2 of the patch with Jakub's suggestions incorporated. Bootstrapped

Re: [PATCH] Fix PR81503 (SLSR invalid fold)

2017-08-28 Thread Bill Schmidt
> On Aug 28, 2017, at 12:57 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> > wrote: > > On Aug 28, 2017, at 7:37 AM, Richard Biener <richard.guent...@gmail.com> > wrote: >> >> On Thu, Aug 3, 2017 at 9:34 PM, Bill Schmidt >> <wschm...@linux

[PATCH v3] Fix PR81503 (SLSR invalid fold)

2017-08-28 Thread Bill Schmidt
le with early returns. Here's the result. Bootstrapped and tested on powerpc64le-linux-gnu with no regressions. Is this ok for trunk, and eventually for backport to gcc 5, 6, and 7? (I can omit the control flow cleanups for the older releases if desired.) Thanks, Bill [gcc] 2017-08-03

Re: [PATCH] Fix PR81503 (SLSR invalid fold)

2017-08-28 Thread Bill Schmidt
On Aug 28, 2017, at 1:40 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > >> >> On Aug 28, 2017, at 12:57 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> >> wrote: >> >> On Aug 28, 2017, at 7:37 AM, Richard Biener <richard.guent...@gmail.c

[PATCH, rs6000] Fix PR81833 (incorrect code gen for vec_msum)

2017-08-28 Thread Bill Schmidt
succeeds, is this ok for trunk, and for eventual backport to all supported releases? Thanks, Bill [gcc] 2017-08-28 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR target/81833 * config/rs6000/altivec.md (altivec_vsum2sws): Convert from a define_insn to a define_

Re: [PATCH, rs6000] Fix PR81833 (incorrect code gen for vec_msum)

2017-08-28 Thread Bill Schmidt
On Aug 28, 2017, at 3:56 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > Hi, > > PR81833 identifies a problem with the little-endian vector multiply-sum > instructions. The original implementation is quite poor (and I am allowed > to say that, since it was

Re: [PATCH v3] Fix PR81503 (SLSR invalid fold)

2017-08-29 Thread Bill Schmidt
> On Aug 29, 2017, at 4:24 AM, Richard Biener <richard.guent...@gmail.com> > wrote: > > On Mon, Aug 28, 2017 at 10:16 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >>> On Aug 28, 2017, at 7:37 AM, Richard Biener <richard.guent...@gmail.com>

[PATCH, rs6000] Process deferred rescans between mini-passes

2017-10-04 Thread Bill Schmidt
that is not done. This patch fixes that. Bootstrapped and tested on powerpc64le-linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill 2017-10-04 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/rs6000-p8swap.c (rs6000_analyze_swaps): Process deferred rescans

Re: [PATCH, rs6000] Repair vec_xl, vec_xst, vec_xl_be, vec_xst_be built-in functions

2017-11-14 Thread Bill Schmidt
Hi, I had a pasto in the function prototype for vec_xst_be. Fixed patch is below. Thanks, Bill On 11/14/17 8:11 AM, Bill Schmidt wrote: > Please hold review on this until I investigate something that Carl brought > up. Thanks, > and sorry for the noise! > > -- Bill >> O

[PATCH] Slight cost adjustment in SLSR

2017-12-14 Thread Bill Schmidt
. Is this okay for trunk? Thanks, Bill 2017-12-14 Bill Schmidt <wschm...@linux.vnet.ibm.com> * gimple-ssa-strength-reduction.c (analyze_increments): Distinguish replacement costs for constant strides from those for unknown strides. Index: gcc/gimple-ssa-st

[PATCH, rs6000] Don't optimize swaps when a swap has mixed use

2017-12-19 Thread Bill Schmidt
that is both fed by a permuting load and feeds into a permuting store. Bootstrapped and tested on powerpc64le-unknown-linux-gnu for POWER8 with no regressions. Carl has verified this fixes the related problems in his test cases under development. Is this okay for trunk? Thanks, Bill 2017-12-19 Bill

[PATCH, rs6000] Repair vec_xl, vec_xst, vec_xl_be, vec_xst_be built-in functions

2017-11-13 Thread Bill Schmidt
on powerpc64le-linux-gnu (POWER8 and POWER9) with no regressions. Is this okay for trunk? Thanks, Bill [gcc] 2017-11-13 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/altivec.h (vec_xst_be): New #define. * config/rs6000/altivec.md (altivec_vperm__direct):

Re: [PATCH, rs6000] Repair vec_xl, vec_xst, vec_xl_be, vec_xst_be built-in functions

2017-11-14 Thread Bill Schmidt
Please hold review on this until I investigate something that Carl brought up. Thanks, and sorry for the noise! -- Bill > On Nov 13, 2017, at 10:30 AM, Bill Schmidt <wschm...@linux.vnet.ibm.com> > wrote: > > Hi, > > Some previous patches to add support for ve

[PATCH, rs6000] Add support for usadv16qi and usadv8hi standard patterns

2017-11-05 Thread Bill Schmidt
only be used for the sum-across; the accumulation with previous iteration results requires a separate add. Bootstrapped and tested on powerpc64le-linux-gnu for POWER8 and POWER9 subtargets with no regressions. Is this ok for trunk? Thanks, Bill [gcc] 2017-11-05 Bill Schmidt <ws

Re: [PATCH, rs6000] Add support for usadv16qi and usadv8hi standard patterns

2017-11-06 Thread Bill Schmidt
On Nov 6, 2017, at 4:17 AM, Segher Boessenkool wrote: > > Hi Bill, > > No quotes around the {} block please (twice). Whoops. I know better; copied from a bad example and missed it. > > Other than that, looks fine to me, please commit. Thanks, > Thanks for the

Re: [PATCH, rs6000] (v2) Gimple folding of splat_uX

2017-12-08 Thread Bill Schmidt
On Dec 8, 2017, at 11:08 AM, Will Schmidt wrote: > > > Hi, > Add support for gimple folding of splat_u{8,16,32}. > Testcase coverage is primarily handled by existing tests > testsuite/gcc.target/powerpc/fold-vec-splat_*.c > > One new test added to verify we continue

[PATCH, rs6000] Fix PR83332 (missing vcond patterns)

2017-12-11 Thread Bill Schmidt
does. That's sufficient to cause the failing test to pass. Bootstrapped and tested on powerpc64le-linux-gnu with no regressions. Is this okay for trunk? Thanks, Bill 2017-12-11 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR target/83332 * config/rs6000/vec

Re: [PATCH, rs6000] Fix PR83332 (missing vcond patterns)

2017-12-12 Thread Bill Schmidt
> On Dec 12, 2017, at 2:02 AM, Richard Biener <richard.guent...@gmail.com> > wrote: > > On Mon, Dec 11, 2017 at 10:55 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> Hi, >> >> A new test case introduced for PR81303 failed on pow

Re: [PATCH, rs6000] gimple folding of vec_msum()

2017-12-01 Thread Bill Schmidt
Hi Will, > On Dec 1, 2017, at 3:43 PM, Will Schmidt wrote: > > On Fri, 2017-12-01 at 18:46 +0100, Richard Biener wrote: >> On December 1, 2017 6:22:21 PM GMT+01:00, Will Schmidt >> wrote: >>> Hi, >>> Add support for folding of vec_msum in

[wwwdocs] Update location of Power ELFv2 ABI Specification

2017-12-08 Thread Bill Schmidt
Hi, I noticed the location of the Power ELFv2 ABI document was out of date, so I committed the following change. Thanks, Bill Index: htdocs/readings.html === RCS file: /cvs/gcc/wwwdocs/htdocs/readings.html,v retrieving revision

Re: [PATCH, rs6000] Fix incorrect mode usage for vec_select

2017-10-20 Thread Bill Schmidt
On Oct 20, 2017, at 4:47 PM, Jakub Jelinek <ja...@redhat.com> wrote: > > On Fri, Oct 20, 2017 at 04:41:04PM -0500, Bill Schmidt wrote: >> As this was rediscovered with PR81294, I've gone ahead with the backport for >> 6. >> It does not apply to 5, as

Re: [PATCH, rs6000] Fix incorrect mode usage for vec_select

2017-10-20 Thread Bill Schmidt
> On Mar 9, 2017, at 2:31 PM, Segher Boessenkool <seg...@kernel.crashing.org> > wrote: > > On Wed, Mar 08, 2017 at 09:47:32AM -0600, Bill Schmidt wrote: >> As noted by Jakub in >> https://gcc.gnu.org/ml/gcc-patches/2017-03/msg00183.html, >> the PowerPC

Re: [PATCH] Fix PR85712 (SLSR cleanup of alternative interpretations)

2018-05-23 Thread Bill Schmidt
On May 23, 2018, at 4:32 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Tue, May 22, 2018 at 11:37 PM Bill Schmidt <wschm...@linux.ibm.com> > wrote: > >> Hi, > >> PR85712 shows where an existing test case fails in the SLSR pass becau

[PATCH] Fix PR85712 (SLSR cleanup of alternative interpretations)

2018-05-22 Thread Bill Schmidt
to all supported branches after some burn-in time? Thanks, Bill 2018-05-22 Bill Schmidt <wschm...@linux.ibm.com> * gimple-ssa-strength-reduction.c (struct slsr_cand_d): Add first_interp field. (alloc_cand_and_find_basis): Initialize first_interp

[PATCH, committed] Additional fix related to PR85712

2018-05-25 Thread Bill Schmidt
. On GCC 6, this fixes the problem that occurs there on one test case. Committed to trunk; will backport next week if all remains well. Thanks, Bill 2018-05-25 Bill Schmidt <wschm...@linux.ibm.com> PR tree-optimization/85712 * gimple-ssa-strength-reduction.c (replace_one_can

Re: [PATCH, rs6000 8/9] [v2] Enable gimple folding for vec_xl, vec_xst

2018-06-12 Thread Bill Schmidt
On 6/12/18 11:56 AM, Will Schmidt wrote: > Hi, > Gimple folding for unaligned vector loads and stores. > Regtest completed across variety of systems, P6,P7,P8,P9. > > [v2] Added the type for the MEM_REF, per feedback. > Testcases for gimple-folding of the same are currently in-tree > as

Re: [PATCH, rs6000 8/9] enable gimple folding for vec_xl, vec_xst

2018-06-01 Thread Bill Schmidt
On Jun 1, 2018, at 10:11 AM, Will Schmidt wrote: > > On Fri, 2018-06-01 at 08:53 +0200, Richard Biener wrote: >> On Thu, May 31, 2018 at 9:59 PM Will Schmidt >> wrote: >>> >>> Hi, >>> Add support for gimple folding for unaligned vector loads and stores. >>> testcases posted separately in

Re: [PATCH,rs6000] Fix vec_permxor builtin support, fix test cases for vec_permxor and vec_insert4b

2018-06-05 Thread Bill Schmidt
Hi Carl, That looks like a typo in the ABI document to me. The return type should match the argument types like it does for the other variants. Sorry -- I'll open a bug against the ABI doc. Thanks! Good catch, Segher. -- Bill Bill Schmidt, Ph.D. STSM, GCC Architect for Linux on Power IBM

Re: [PATCH,rs6000] Fix vec_permxor builtin support, fix test cases for vec_permxor and vec_insert4b

2018-06-05 Thread Bill Schmidt
> On Jun 5, 2018, at 5:04 PM, Carl Love wrote: > > On Tue, 2018-06-05 at 16:45 -0500, Bill Schmidt wrote: >> Hi Carl, >> >> That looks like a typo in the ABI document to me. The return type >> should match the >> argument types like it does for the

Re: [PATCH, rs6000 8/9] enable gimple folding for vec_xl, vec_xst

2018-06-01 Thread Bill Schmidt
On Jun 1, 2018, at 10:35 AM, Richard Biener wrote: > > On June 1, 2018 5:15:58 PM GMT+02:00, Bill Schmidt > wrote: >> On Jun 1, 2018, at 10:11 AM, Will Schmidt >> wrote: >>> >>> On Fri, 2018-06-01 at 08:53 +0200, Richard Biener wrote: >>&g

Re: [PATCH, rs6000] Change word selector to prefered location for vec_insert builtin

2018-06-25 Thread Bill Schmidt
> On Jun 22, 2018, at 7:56 PM, Segher Boessenkool > wrote: > > Hi Carl, > > On Fri, Jun 22, 2018 at 07:32:47AM -0700, Carl Love wrote: >> The following patch changes the word selected when extracting the word >> from the second vector to insert into the first vector by the >> vec_insert()

Re: [PATCH,rs6000] Fix implementation of vec_unpackh, vec_unpackl builtins

2018-06-29 Thread Bill Schmidt
On Jun 29, 2018, at 9:38 AM, Carl Love wrote: > > GCC Maintainers: > > The vec_unpackh, vec_unpackl builtins with vector float arguments > unpack the high or low half of a floating point vector and convert the > elements to a vector of doubles. The current implementation of the > builtin for

Re: [PATCH] Punt on possibly throwing assignments in SLSR (PR tree-optimization/83605)

2018-01-04 Thread Bill Schmidt
Hi Jakub, Okay by me. Thanks for fixing this! Sorry I missed this bug on the list. Feel free to CC me on any SLSR bugs. -- Bill > On Jan 4, 2018, at 3:23 PM, Jakub Jelinek wrote: > > Hi! > > While the testcase could be perhaps handled with some extra effort (the > issue

Re: [PATCH 1/3] [builtins] Generic support for __builtin_load_no_speculate()

2018-01-09 Thread Bill Schmidt
On Jan 9, 2018, at 4:21 AM, Richard Earnshaw (lists) <richard.earns...@arm.com> wrote: > > On 08/01/18 16:01, Bill Schmidt wrote: >> On Jan 8, 2018, at 8:06 AM, Richard Earnshaw (lists) >> <richard.earns...@arm.com> wrote: >>> >>> On 08/

Re: [PATCH 1/3] [builtins] Generic support for __builtin_load_no_speculate()

2018-01-07 Thread Bill Schmidt
Hi Richard, Unfortunately, I don't see any way that this will be useful for the ppc targets. We don't have a way to force resolution of a condition prior to continuing speculation, so this will just introduce another comparison that we would speculate past. For our mitigation we will have to

Re: [PATCH 1/3] [builtins] Generic support for __builtin_load_no_speculate()

2018-01-08 Thread Bill Schmidt
On Jan 8, 2018, at 1:40 PM, Jeff Law <l...@redhat.com> wrote: > > On 01/08/2018 07:19 AM, Bill Schmidt wrote: >> >>> On Jan 7, 2018, at 10:47 PM, Jeff Law <l...@redhat.com> wrote: >>> >>> On 01/07/2018 07:20 PM, Bill Schmidt wrote: >>>

Re: [PATCH, rs6000] Fix PR83677 (incorrect generation of xxpermr)

2018-01-08 Thread Bill Schmidt
Thanks for the review! Committed with suggested changes as r256358.

Re: [PATCH, rs6000] Add __builtin_speculation_barrier

2018-01-11 Thread Bill Schmidt
On Jan 11, 2018, at 11:16 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On January 11, 2018 6:14:34 PM GMT+01:00, Segher Boessenkool > <seg...@kernel.crashing.org> wrote: >> On Thu, Jan 11, 2018 at 10:25:25AM -0600, Bill Schmidt wrote: >>> This p

[PATCH, rs6000] Add __builtin_speculation_barrier

2018-01-11 Thread Bill Schmidt
for trunk? Thanks, Bill [gcc] 2018-01-11 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/rs6000-builtin.def (BU_P7_MISC_X): New #define. (SPEC_BARRIER): New instantiation of BU_P7_MISC_X. * config/rs6000/rs6000.c (rs6000_expand_

Re: [PATCH 1/3] [builtins] Generic support for __builtin_load_no_speculate()

2018-01-08 Thread Bill Schmidt
> On Jan 7, 2018, at 10:47 PM, Jeff Law <l...@redhat.com> wrote: > > On 01/07/2018 07:20 PM, Bill Schmidt wrote: >> Hi Richard, >> >> Unfortunately, I don't see any way that this will be useful for the ppc >> targets. We don't >> have a

Re: [PATCH 1/3] [builtins] Generic support for __builtin_load_no_speculate()

2018-01-08 Thread Bill Schmidt
On Jan 8, 2018, at 8:06 AM, Richard Earnshaw (lists) <richard.earns...@arm.com> wrote: > > On 08/01/18 02:20, Bill Schmidt wrote: >> Hi Richard, >> >> Unfortunately, I don't see any way that this will be useful for the ppc >> targets. We don't >> hav

Re: [PATCH 1/3] [builtins] Generic support for __builtin_load_no_speculate()

2018-01-08 Thread Bill Schmidt
On Jan 8, 2018, at 9:23 AM, Richard Earnshaw (lists) <richard.earns...@arm.com> wrote: > > On 08/01/18 14:19, Bill Schmidt wrote: >> >>> On Jan 7, 2018, at 10:47 PM, Jeff Law <l...@redhat.com> wrote: >>> >>> On 01/07/2018 07:20 PM, Bill Schmi

Re: [PATCH, rs6000] Executable tests for -msafe-indirect-jumps

2018-01-15 Thread Bill Schmidt
On Jan 15, 2018, at 11:05 AM, Segher Boessenkool <seg...@kernel.crashing.org> wrote: > > Hi! > > On Sun, Jan 14, 2018 at 11:34:06AM -0600, Bill Schmidt wrote: >> It was pointed out off-list that I should add some executable tests for >> the new -msafe-indirect-jum

Re: [PATCH v2, rs6000] Add -msafe-indirect-jumps option and implement safe bctr / bctrl

2018-01-15 Thread Bill Schmidt
Hi Segher, Thanks for the quick review! > On Jan 15, 2018, at 10:38 AM, Segher Boessenkool <seg...@kernel.crashing.org> > wrote: > > Hi! > > On Sat, Jan 13, 2018 at 10:53:57PM -0600, Bill Schmidt wrote: >> This patch adds a new option for the compiler to produce

[PATCH v3, rs6000] Add -mspeculate-indirect-jumps option and implement non-speculating bctr / bctrl

2018-01-15 Thread Bill Schmidt
. Is this okay for trunk? Thanks, Bill [gcc] 2018-01-15 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/rs6000.c (rs6000_opt_vars): Add entry for -mspeculate-indirect-jumps. * config/rs6000/rs6000.md (*call_indirect_elfv2): Disable for -mno-spe

Re: [PATCH v2, rs6000] Add -msafe-indirect-jumps option and implement safe bctr / bctrl

2018-01-15 Thread Bill Schmidt
On Jan 15, 2018, at 3:46 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Sun, Jan 14, 2018 at 5:53 AM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> Hi, >> >> [This patch supercedes and extends >> https://gcc

Re: [PATCH v3, rs6000] Add -mspeculate-indirect-jumps option and implement non-speculating bctr / bctrl

2018-01-16 Thread Bill Schmidt
On Jan 16, 2018, at 6:13 AM, Segher Boessenkool wrote: > > Hi! > > On Tue, Jan 16, 2018 at 09:29:13AM +0100, Richard Biener wrote: >> Did you consider simply removing the tablejump/casesi support so >> expansion always >> expands to a balanced tree? At least if we

Re: [PATCH v3, rs6000] Use $ instead of . for PC, use "crset 2" instead of "crset eq"

2018-01-20 Thread Bill Schmidt
On Jan 19, 2018, at 10:48 PM, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: > > Hi, > > Here's another version of this patch incorporating the late-breaking news > that the AIX assembler doesn't comprehend the "eq" symbol. Same as > https://gcc.gnu.org/ml

Re: [PATCH v3, rs6000] Use $ instead of . for PC, use "crset 2" instead of "crset eq"

2018-01-20 Thread Bill Schmidt
On Jan 20, 2018, at 7:12 AM, Segher Boessenkool <seg...@kernel.crashing.org> wrote: > > Hi Bill, > > On Fri, Jan 19, 2018 at 10:48:18PM -0600, Bill Schmidt wrote: >> Here's another version of this patch incorporating the late-breaking news >> that the AIX assemb

Re: [PATCH, rs6000] Use $ instead of . for PC

2018-01-19 Thread Bill Schmidt
> On Jan 19, 2018, at 3:09 PM, Jakub Jelinek <ja...@redhat.com> wrote: > > On Fri, Jan 19, 2018 at 02:58:07PM -0600, Bill Schmidt wrote: >> --- gcc/testsuite/gcc.target/powerpc/safe-indirect-jump-2.c (revision >> 256894) >> +++ gcc/testsuite/gcc.target/powerpc

Re: [PATCH v2, rs6000] Implement 32- and 64-bit BE handling for -mno-speculate-indirect-jumps

2018-01-19 Thread Bill Schmidt
will only get picked up on a respin anyway. So I should have the fix in place before that happens. Bill > > Thanks, David > > On Tue, Jan 16, 2018 at 9:08 PM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> Hi, >> >> This patch supercedes and ext

Re: [PATCH, rs6000] Use $ instead of . for PC

2018-01-19 Thread Bill Schmidt
I see that David already proposed this same patch in PR83946. Sorry, I've gotten behind on my email. Two changes I need: The scan-assembly should have \$ rather than $ in it, and I should add PR83946 to the ChangeLog. Sorry for the noise. -- Bill Bill Schmidt, Ph.D. STSM, GCC Architect

[PATCH, rs6000] Use $ instead of . for PC

2018-01-19 Thread Bill Schmidt
universally accepted alternative. So change the code and the test cases to use $ instead of . for this purpose. Regstrap is in progress on powerpc64-linux-gnu and powerpc64le-linux-gnu. Assuming no issues are found, is this okay for trunk and backport to 7? Thanks, Bill [gcc] 2018-01-19

[PATCH, rs6000] Skip safe-indirect-jump-8.c for AIX

2018-01-21 Thread Bill Schmidt
and possible backport to 7 after a quick AIX sniff test? Thanks, Bill 2018-01-21 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR target/83946 * gcc.target/powerpc/safe-indirect-jump-8.c: Skip for AIX. Index: gcc/testsuite/gcc.target/powerpc/safe-indirect-ju

Re: [PATCH, rs6000] Use $ instead of . for PC

2018-01-19 Thread Bill Schmidt
> On Jan 19, 2018, at 3:58 PM, Segher Boessenkool <seg...@kernel.crashing.org> > wrote: > > On Fri, Jan 19, 2018 at 10:20:23PM +0100, Andreas Schwab wrote: >> On Jan 19 2018, Bill Schmidt <wschm...@linux.vnet.ibm.com> wrote: >> >>>> On Jan 19, 2

[PATCH v2, rs6000] Implement 32- and 64-bit BE handling for -mno-speculate-indirect-jumps

2018-01-16 Thread Bill Schmidt
call coverage. Bootstrapped and tested on powerpc64-linux-gnu and powerpc64le-linux-gnu with no regressions. Is this okay for trunk? Thanks, Bill [gcc] 2018-01-16 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/rs6000.md (*call_indirect_nonlocal_sysv): Ge

[PATCH, rs6000] Executable tests for -msafe-indirect-jumps

2018-01-14 Thread Bill Schmidt
patch is approved? Thanks, Bill 2018-01-14 Bill Schmidt <wschm...@linux.vnet.ibm.com> * gcc.target/powerpc/safe-indirect-jump-4.c: New file. * gcc.target/powerpc/safe-indirect-jump-5.c: New file. * gcc.target/powerpc/safe-indirect-jump-6.c: New file. Inde

Re: PR84033, powerpc64le -moptimize-swaps bad code with vec_vbpermq

2018-01-25 Thread Bill Schmidt
On Jan 25, 2018, at 4:09 AM, Alan Modra wrote: > > vbpermq produces its output in bits 48..63 of the target vector reg, > so the output cannot be lane swapped. Bootstrapped and regression > tested powerpc64le-linux. OK to apply mainline, and backport to the > branches? I

[PATCH, rs6000] Add -msafe-indirect-jumps option and implement safe bctrl

2018-01-12 Thread Bill Schmidt
for trunk? Thanks, Bill [gcc] 2018-01-12 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/rs6000.c (rs6000_opt_vars): Add entry for safe-indirect-jumps. * config/rs6000/rs6000.md (*call_indirect_elfv2): Restrict to case where -msafe-indirect-jumps

Re: [PATCH 1/3] [builtins] Generic support for __builtin_load_no_speculate()

2018-01-12 Thread Bill Schmidt
Hi Richard and Jeff, Sorry I missed this earlier today, it somehow ended up in my spam folder... > On Jan 12, 2018, at 10:08 AM, Richard Earnshaw (lists) > <richard.earns...@arm.com> wrote: > > On 10/01/18 23:26, Jeff Law wrote: >> On 01/08/2018 09:01 AM, Bill Schmidt w

[PATCH] Fix PR81038

2018-02-02 Thread Bill Schmidt
Verified on powerpc64le-unknown-linux-gnu. Is this okay for trunk? Thanks, Bill 2018-02-02 Bill Schmidt <wschm...@linux.vnet.ibm.com> * g++.dg/vect/slp-pr56812.cc: Convert from DOS newline characters to utf-8-unix. Change to scan "optimized" dump for indicat

[PATCH, rs6000] Deprecate -mno-speculate-indirect-jumps

2018-02-05 Thread Bill Schmidt
it completely in GCC 9. Bootstrapped and tested on powerpc64le-linux-gnu with no regressions. Is this okay for trunk? At least one distribution partner has also requested that we backport this to the GCC 7 branch for 7.4. Is that okay as well? Thanks, Bill [gcc] 2018-02-05 Bill Schmidt <ws

Re: [PATCH, rs6000] Deprecate -mno-speculate-indirect-jumps

2018-02-06 Thread Bill Schmidt
On Feb 6, 2018, at 10:33 AM, Segher Boessenkool <seg...@kernel.crashing.org> wrote: > > Hi Bill, > > On Mon, Feb 05, 2018 at 12:28:34PM -0600, Bill Schmidt wrote: >> It's been determined that we won't recommend use of the recently added >> undocumented option

Re: [PATCH, rs6000] PR84220 fix altivec_vec_sld and vec_sldw intrinsic definitions

2018-02-14 Thread Bill Schmidt
> On Feb 13, 2018, at 5:28 PM, Will Schmidt wrote: > > On Thu, 2018-02-08 at 17:48 -0600, Segher Boessenkool wrote: >> Hi! >> >> On Wed, Feb 07, 2018 at 09:14:59AM -0600, Will Schmidt wrote: >>> Our VEC_SLD definitions were mistakenly allowing the third argument to

Re: [PATCH] Fix PR81038

2018-02-08 Thread Bill Schmidt
> On Feb 8, 2018, at 4:52 AM, Richard Biener <richard.guent...@gmail.com> wrote: > > On Sat, Feb 3, 2018 at 12:30 AM, Bill Schmidt > <wschm...@linux.vnet.ibm.com> wrote: >> Hi, >> >> The test g++.dg/vect/slp-pr56812.cc is somewhat fragile and is c

Re: [PATCH, rs6000] Don't optimize swaps when a swap has mixed use

2018-01-02 Thread Bill Schmidt
Segher was kind enough to give me an offline review on his vacation. I made some small changes and committed the following. Thanks! Bill 2018-01-02 Bill Schmidt <wschm...@linux.vnet.ibm.com> * config/rs6000/rs6000-p8swap.c (swap_feeds_both_load_and_store): New fu

[PATCH, rs6000] Fix PR83677 (incorrect generation of xxpermr)

2018-01-04 Thread Bill Schmidt
-linux-gnu with no regressions. Is this okay for trunk and shortly for backport to GCC 7? I will check on 6, but I'm pretty certain this was introduced in 7, as 6 has only minimal POWER9 support. Thanks, Bill [gcc] 2018-01-04 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR target

Re: [PATCH 11/11] rs6000 - add speculation_barrier pattern

2018-07-31 Thread Bill Schmidt
Hi Richard, I can't ack the patch, but I am happy with it. Thank you for this work! -- Bill Bill Schmidt, Ph.D. STSM, GCC Architect for Linux on Power IBM Linux Technology Center wschm...@linux.vnet.ibm.com > On Jul 27, 2018, at 4:37 AM, Richard Earnshaw > wrote: > > > Thi

<    2   3   4   5   6   7   8   9   10   11   >