[PATCH] Fix PR70011 (backlevel test case)

2016-02-29 Thread Bill Schmidt
WER8) and everything works as expected. Is this ok for trunk? Thanks, Bill 2016-02-29 Bill Schmidt PR target/70011 * gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr299925.c: XFAIL when hardware supports efficient unaligned storage access. Index: gcc/t

Re: PPC libgcc IEEE128 soft-fp exception/rounding fixes

2016-02-29 Thread Bill Schmidt
Hi David, Please ignore this request. I had asked Paul to do this, but was confused that it relied on other patches that are not in GCC 5. My fault. Thanks, Bill On Mon, 2016-02-29 at 11:33 -0600, Paul E. Murphy wrote: > Hi David, > > Bill merged this into trunk last week. > > Is it okay to

[PATCH, rs6000] Skip test gfortran.dg/nan_7.f90 for little endian PowerPC

2013-11-27 Thread Bill Schmidt
place than the bit-interpretation as integer(16) expects. So this patch just skips this test for powerpc*le-*-*. Verified for powerpc64{,le}-unknown-linux-gnu. Is this ok for trunk? Thanks, Bill 2013-11-27 Bill Schmidt * gfortran.dg/nan_7.f90: Disable for little endian PowerPC

[PATCH, rs6000] Skip another test case for little endian

2013-12-02 Thread Bill Schmidt
ed on powerpc64le-unknown-linux-gnu. Is this ok for trunk? Thanks, Bill 2013-12-02 Bill Schmidt * gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c: Skip for little endian. Index: gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-slp

Re: [PATCH, rs6000] Skip another test case for little endian

2013-12-02 Thread Bill Schmidt
Good idea, Mike, I'll make that change. Thanks, Bill On Mon, 2013-12-02 at 16:54 -0800, Mike Stump wrote: > On Dec 2, 2013, at 3:32 PM, Bill Schmidt wrote: > > The test case gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c fails if a > > loop isn't vectorized. When compil

Re: [PING] [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-12-03 Thread Bill Schmidt
t;>>> Thanks, > >>>>> Yufeng > >>>>> > >>>>> On 11/26/13 15:02, Yufeng Zhang wrote: > >>>>>> > >>>>>> On 11/26/13 12:45, Richard Biener wrote: > >>>>>>> > >>>>>

Re: [PING] [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-12-03 Thread Bill Schmidt
.html > >>>>> > >>>>> > >>>>>> > >>>>>> Thanks, > >>>>>> Yufeng > >>>>>> > >>>>>> On 11/26/13 15:02, Yufeng Zhang wrote: > >>>>>>> >

Re: [PING] [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-12-04 Thread Bill Schmidt
On Wed, 2013-12-04 at 11:26 +0100, Richard Biener wrote: > On Tue, Dec 3, 2013 at 11:04 PM, Bill Schmidt > wrote: > > On Tue, 2013-12-03 at 21:35 +0100, Richard Biener wrote: > >> Yufeng Zhang wrote: > >> >On 12/03/13 14:20, Richard Biener wrote: > >>

Re: [PING] [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-12-04 Thread Bill Schmidt
On Wed, 2013-12-04 at 11:30 +0100, Richard Biener wrote: > On Wed, Dec 4, 2013 at 11:26 AM, Richard Biener > wrote: > > On Tue, Dec 3, 2013 at 11:04 PM, Bill Schmidt > > wrote: > >> On Tue, 2013-12-03 at 21:35 +0100, Richard Biener wrote: > >>> Yufeng

Re: [PING] [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-12-04 Thread Bill Schmidt
On Wed, 2013-12-04 at 11:32 +, Yufeng Zhang wrote: > On 12/04/13 10:30, Richard Biener wrote: > > On Wed, Dec 4, 2013 at 11:26 AM, Richard Biener > > wrote: > >> On Tue, Dec 3, 2013 at 11:04 PM, Bill Schmidt > >> wrote: > >>> On Tue, 20

Re: [PING] [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-12-04 Thread Bill Schmidt
On Wed, 2013-12-04 at 07:13 -0600, Bill Schmidt wrote: > On Wed, 2013-12-04 at 11:30 +0100, Richard Biener wrote: > > On Wed, Dec 4, 2013 at 11:26 AM, Richard Biener > > wrote: > > > On Tue, Dec 3, 2013 at 11:04 PM, Bill Schmidt > > > wrote: > > >&g

Re: [PING] [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-12-05 Thread Bill Schmidt
On Thu, 2013-12-05 at 12:02 +, Yufeng Zhang wrote: > On 12/04/13 13:08, Bill Schmidt wrote: > > On Wed, 2013-12-04 at 11:26 +0100, Richard Biener wrote: > >> On Tue, Dec 3, 2013 at 11:04 PM, Bill Schmidt > >> wrote: > >>> On Tue, 2013-12-03 at 21:35 +01

[PATCH,rs6000] Add -maltivec={le,be} options

2014-01-07 Thread Bill Schmidt
rgets, and that they work as designed (and -maltivec and -mno-altivec also still work as designed). Is this ok for trunk? Thanks, Bill 2014-01-08 Bill Schmidt * doc/invoke.texi: Add -maltivec={be,le} options. * config/rs6000/rs6000.opt: Likewise. * config/rs600

Re: [PATCH,rs6000] Add -maltivec={le,be} options

2014-01-07 Thread Bill Schmidt
On Tue, 2014-01-07 at 21:51 +, Joseph S. Myers wrote: > On Tue, 7 Jan 2014, Bill Schmidt wrote: > > > +@item -maltivec=be > > +@opindex maltivec=be > > +Generate Altivec instructions using big-endian element order, > > +regardless of whether the t

Re: [PATCH,rs6000] Add -maltivec={le,be} options

2014-01-07 Thread Bill Schmidt
On Tue, 2014-01-07 at 22:18 +, Joseph S. Myers wrote: > On Tue, 7 Jan 2014, Bill Schmidt wrote: > > > Yes, sorry for not being more clear. This is indeed for interpretation > > of element numbers in Altivec intrinsics such as vec_splat, vec_extract, > > vec_insert, a

[PATCH,rs6000,committed] Remove duplicates from altivec_overloaded_builtins

2014-01-08 Thread Bill Schmidt
This patch removes a couple of redundant entries I noticed in altivec_overloaded_builtins. Identical entries occur nearby. Bootstrapped and tested on powerpc64-unknown-linux-gnu with no regressions, applied as obvious. Thanks, Bill 2014-01-08 Bill Schmidt * config/rs6000/rs6000

Re: [PATCH,rs6000] Add -maltivec={le,be} options

2014-01-08 Thread Bill Schmidt
On Wed, 2014-01-08 at 16:46 -0500, David Edelsohn wrote: > On Tue, Jan 7, 2014 at 6:59 PM, Bill Schmidt > wrote: > > On Tue, 2014-01-07 at 22:18 +, Joseph S. Myers wrote: > >> On Tue, 7 Jan 2014, Bill Schmidt wrote: > >> > >> > Yes, sorry for

Re: [PATCH,rs6000] Add -maltivec={le,be} options

2014-01-09 Thread Bill Schmidt
Thanks for the comments! Here is a second go-round at the patch with improved documentation. I'm happy to change the wording if it can be further improved. Thanks, Bill 2014-01-09 Bill Schmidt * doc/invoke.texi: Add -maltivec={be,le} options, and document default el

[PATCH,rs6000,committed] Fix pasto in rs6000-builtin.def

2014-01-10 Thread Bill Schmidt
I happened to notice an obvious error in one of the builtin tables. Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no regressions. Committed as obvious. Thanks, Bill 2014-01-10 Bill Schmidt * config/rs6000/rs6000-builtin.def: Fix pasto for VPKSDUS. Index: gcc

[PATCH,rs6000] Implement -maltivec=be for vec_insert and vec_extract Altivec intrinsics

2014-01-12 Thread Bill Schmidt
vector types. Bootstrapped and tested with no new regressions on powerpc64{,le}-unknown-linux-gnu. Ok for trunk? Thanks, Bill gcc: 2014-01-12 Bill Schmidt * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Implement -maltivec=be for vec_insert and vec_extract

[PATCH,rs6000] Implement -maltivec=be for vec_mule and vec_mulo Altivec intrinsics

2014-01-13 Thread Bill Schmidt
powerpc64{,le}-unknown-linux-gnu. Ok for trunk? Thanks, Bill gcc: 2014-01-13 Bill Schmidt * config/rs6000/altivec.md (mulv8hi3): Explicitly generate vmulesh and vmulosh rather than call gen_vec_widen_smult_*. (vec_widen_umult_even_v16qi): Test VECTOR_ELT_ORDER_BIG rather

Re: [PATCH] Simplify vector compare-not-select sequence

2015-08-03 Thread Bill Schmidt
On Sun, 2015-08-02 at 12:18 +0200, Andreas Schwab wrote: > Bill Schmidt writes: > > > * gcc.target/powerpc/vec-cmp-sel.c: New test. > > FAIL: gcc.target/powerpc/vec-cmp-sel.c (test for excess errors) > Excess errors: > /daten/gcc/gcc-20150801/gcc/testsuite/gcc.targ

Re: [PATCH] Simplify vector compare-not-select sequence

2015-08-04 Thread Bill Schmidt
Thanks for verifying! Also verified it still works on powerpc64le-unknown-linux-gnu. Committed as obvious. Thanks, Bill 2015-08-04 Bill Schmidt * gcc.target/powerpc/vec-cmp-sel.c: Avoid test failure on machines without VSX an Power8 vector support. Index: gcc/testsuite

Re: [PATCH, rs6000] Use hardware support for vector character multiply

2015-09-15 Thread Bill Schmidt
On Tue, 2015-09-15 at 13:29 -0700, Andrew Pinski wrote: > On Tue, Sep 15, 2015 at 6:58 AM, Richard Biener > wrote: > > On Thu, Sep 3, 2015 at 5:32 PM, Bill Schmidt > > wrote: > >> On Thu, 2015-09-03 at 23:26 +0800, Andrew Pinski wrote: > >>> On Thu

[PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-16 Thread Bill Schmidt
change the _scal_ expansions to select the element number that avoids the shift (that number will differ for BE and LE). Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill [gcc] 2015-09-16 Bill Schmidt * config/rs600

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-16 Thread Bill Schmidt
On Wed, 2015-09-16 at 15:37 +0100, Ramana Radhakrishnan wrote: > On Wed, Sep 16, 2015 at 3:34 PM, David Edelsohn wrote: > > On Wed, Sep 16, 2015 at 10:28 AM, Bill Schmidt > > > > > This is okay. > > > > I don't think that I have seen iterators for UNSPEC

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-16 Thread Bill Schmidt
On Wed, 2015-09-16 at 10:14 -0500, Segher Boessenkool wrote: > On Wed, Sep 16, 2015 at 09:28:09AM -0500, Bill Schmidt wrote: > > I was able to use iterators for the sub-doubleword ...scal_ > > expansions, but that's all. I experimented with trying to use > > code_itera

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-16 Thread Bill Schmidt
On Wed, 2015-09-16 at 16:29 +0100, Alan Lawrence wrote: > On 16/09/15 15:28, Bill Schmidt wrote: > > 2015-09-16 Bill Schmidt > > > > * config/rs6000/altivec.md (UNSPEC_REDUC_SMAX, UNSPEC_REDUC_SMIN, > > UNSPEC_REDUC_UMAX, UNSPEC_REDUC_U

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-16 Thread Bill Schmidt
On Wed, 2015-09-16 at 16:29 +0100, Alan Lawrence wrote: > > I proposed a patch to migrate PPC off the old patterns, but have forgotten to > ping it recently - last at > https://gcc.gnu.org/ml/gcc-patches/2014-12/msg01024.html ... (ping?!) > Hi Alan, Thanks for this patch. I see that you test

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-16 Thread Bill Schmidt
On Wed, 2015-09-16 at 19:16 +0100, Alan Lawrence wrote: > On 16/09/15 17:19, Bill Schmidt wrote: > > On Wed, 2015-09-16 at 16:29 +0100, Alan Lawrence wrote: > >> > >> I proposed a patch to migrate PPC off the old patterns, but have forgotten > >> to > &

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-16 Thread Bill Schmidt
On Wed, 2015-09-16 at 18:03 +0100, Alan Lawrence wrote: > On 16/09/15 17:10, Bill Schmidt wrote: > > > > On Wed, 2015-09-16 at 16:29 +0100, Alan Lawrence wrote: > >> On 16/09/15 15:28, Bill Schmidt wrote: > >>> 2015-09-16 Bill Schmidt > >>

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-17 Thread Bill Schmidt
On Thu, 2015-09-17 at 09:39 +0200, Richard Biener wrote: > On Wed, 16 Sep 2015, Alan Lawrence wrote: > > > On 16/09/15 17:10, Bill Schmidt wrote: > > > > > > On Wed, 2015-09-16 at 16:29 +0100, Alan Lawrence wrote: > > > > On 16/09/15 15:28, Bill Schmidt

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-17 Thread Bill Schmidt
On Thu, 2015-09-17 at 09:18 -0500, Bill Schmidt wrote: > On Thu, 2015-09-17 at 09:39 +0200, Richard Biener wrote: > > On Wed, 16 Sep 2015, Alan Lawrence wrote: > > > > > On 16/09/15 17:10, Bill Schmidt wrote: > > > > > > > > On Wed, 2015-09-16 at 1

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-18 Thread Bill Schmidt
On Fri, 2015-09-18 at 10:38 +0200, Richard Biener wrote: > On Thu, 17 Sep 2015, Segher Boessenkool wrote: > > > On Thu, Sep 17, 2015 at 09:18:42AM -0500, Bill Schmidt wrote: > > > On Thu, 2015-09-17 at 09:39 +0200, Richard Biener wrote: > > > > So just to clarif

Re: [PATCH, rs6000] Add expansions for min/max vector reductions

2015-09-18 Thread Bill Schmidt
On Fri, 2015-09-18 at 15:15 +0200, Richard Biener wrote: > On Fri, 18 Sep 2015, Bill Schmidt wrote: > > > On Fri, 2015-09-18 at 10:38 +0200, Richard Biener wrote: > > > On Thu, 17 Sep 2015, Segher Boessenkool wrote: > > > > > > > On Thu, Sep 17, 20

Re: [PATCH][RS6000] Migrate from reduc_xxx to reduc_xxx_scal optabs

2015-09-18 Thread Bill Schmidt
On Fri, 2015-09-18 at 16:39 +0100, Alan Lawrence wrote: > This is a respin of https://gcc.gnu.org/ml/gcc-patches/2014-12/msg01024.html > after discovering that patch was broken on power64le - thanks to Bill Schmidt > for pointing out that gcc112 is the opposite endianness to gcc110...

Re: [Boolean Vector, patch 1/5] Introduce boolean vector to be used as a vector comparison type

2015-10-28 Thread Bill Schmidt
On Wed, 2015-10-28 at 14:44 +0100, Christophe Lyon wrote: > Hi, > > Since r229128, I see: > FAIL: c-c++-common/torture/vector-compare-1.c -O0 execution test > on arm targets, such as arm-none-eabi. Likewise for powerpc64le-linux-gnu. The test produces: 0 != ((1.00 > 0.00 ? -1 : 0) FA

Re: [Patch, committed] PR67933

2015-10-28 Thread Bill Schmidt
On Tue, 2015-10-27 at 19:07 +0100, Paul Richard Thomas wrote: > Dear All, > > The recent patches on trunk to gfc_trans_allocate have fixed PR67933. > I have added a testcase, which has been committed as revision 229452. This test case fails at runtime on powerpc64le-linux-gnu. From gfortran.log:

Re: [Patch, committed] PR67933

2015-10-29 Thread Bill Schmidt
On Thu, 2015-10-29 at 12:18 +0100, Dominique d'Humières wrote: > > > The recent patches on trunk to gfc_trans_allocate have fixed PR67933. > > > I have added a testcase, which has been committed as revision 229452. > > > > This test case fails at runtime on powerpc64le-linux-gnu. … > This should b

[PATCH, rs6000] Remove redundant logic from rs6000_secondary_reload_direct_move

2015-11-10 Thread Bill Schmidt
c64le-linux-gnu with no regressions. Thanks, Bill 2015-11-10 Bill Schmidt * config/rs6000/rs6000.c (rs6000_secondary_reload_direct_move): Remove redundant code. Index: gcc/config/rs6000/rs6000.c === --- gcc/c

Recent patch craters vector tests on powerpc64le-linux-gnu

2015-11-11 Thread Bill Schmidt
Hi Ilya, The patch committed as r230098 has caused a number of ICEs on powerpc64le-linux-gnu. The gcc/ChangeLog entry for that patch is: 2015-11-10 Ilya Enkovich * expr.c (do_store_flag): Use expand_vec_cmp_expr for mask results. (const_vector_mask_from_tree): New. (c

[PATCH, rs6000] Fix analyze_swaps to handle vperm for large and small code models

2015-12-01 Thread Bill Schmidt
trunk? Thanks, Bill [gcc] 2015-12-01 Bill Schmidt * config/rs6000/rs6000.c (const_load_sequence_p): Handle extra indirection for large and small code models. (adjust_vperm): Likewise. [gcc/testsuite] 2015-12-01 Bill Schmidt * gcc.target/powerpc/swaps-p8

[PATCH] Adjust vect-widen-mult-const-[su]16.c for r226675

2015-12-04 Thread Bill Schmidt
ince this was apparently not detected when his patch went in. This doesn't appear to be a target-specific issue, and most targets support vect_widen_mult_hi_to_si_pattern, so I'm not sure why this wasn't fixed with the original patch. Will this change break on any other targets

Re: [PATCH] Adjust vect-widen-mult-const-[su]16.c for r226675

2015-12-07 Thread Bill Schmidt
Hi Richi, I was afraid this would break X86. Unfortunately, your proposed patch didn't change any output for me. Still seeing 6 and 8 instances of "pattern recognized", unfortunately. Bill On Mon, 2015-12-07 at 11:50 +0100, Richard Biener wrote: > On Fri, Dec 4, 2015 at 8:5

Re: [PATCH] Adjust vect-widen-mult-const-[su]16.c for r226675

2015-12-07 Thread Bill Schmidt
On Mon, 2015-12-07 at 19:17 +0100, Richard Biener wrote: > On December 7, 2015 6:21:36 PM GMT+01:00, Bill Schmidt > wrote: > >Hi Richi, > > > >I was afraid this would break X86. Unfortunately, your proposed patch > >didn't change any output for me. Still seei

Request permission to delete gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr29925.c

2015-12-10 Thread Bill Schmidt
p that was previously deemed unprofitable to vectorize. As a result, the test case no longer has any reason to exist, and I would like to delete it. Ok for trunk? Thanks, Bill [gcc/testsuite] 2015-12-10 Bill Schmidt * gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-19 Thread Bill Schmidt
Sorry I missed this discussion until now, I have been out of the office much of the last week. On 2/16/20 2:10 PM, GT wrote: ‐‐‐ Original Message ‐‐‐ On Friday, February 14, 2020 5:09 PM, Jakub Jelinek ja...@redhat.com wrote: On Fri, Feb 14, 2020 at 10:02:39PM +, GT wrote: Funct

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-19 Thread Bill Schmidt
On 2/19/20 1:10 PM, GT wrote: ‐‐‐ Original Message ‐‐‐ On Wednesday, February 19, 2020 12:33 PM, Bill Schmidt wrote: The reason 'c' was added to the ABI is this mailing list discussion: https://sourceware.org/ml/libc-alpha/2019-11/msg00765.html As long as 'b' sp

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-23 Thread Bill Schmidt
On 2/14/20 4:09 PM, Jakub Jelinek wrote: On Fri, Feb 14, 2020 at 10:02:39PM +, GT wrote: Function rs6000_simd_clone_adjust, even though it's body is empty, cannot simply be removed. I tried it. It resulted in ICE. In my view, leaving it empty is preferable to modifying other files unrelate

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-23 Thread Bill Schmidt
On 2/20/20 1:14 PM, GT wrote: ‐‐‐ Original Message ‐‐‐ On Wednesday, February 19, 2020 12:33 PM, Bill Schmidt wrote: The reason 'c' was added to the ABI is this mailing list discussion: https://sourceware.org/ml/libc-alpha/2019-11/msg00765.html As long as 'b' sp

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-24 Thread Bill Schmidt
On 2/23/20 11:33 AM, Jakub Jelinek wrote: On Sun, Feb 23, 2020 at 10:42:17AM -0600, Bill Schmidt wrote: Have I missed something crucial? I haven't seen anything in the patch that would only enable it for ELFv2, and while powerpc64le-linux probably assumes TARGET_VSX unconditionally (ha

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-24 Thread Bill Schmidt
On 2/23/20 1:12 PM, Segher Boessenkool wrote: On Sun, Feb 23, 2020 at 10:55:53AM -0600, Bill Schmidt wrote: Though I'm usually uncomfortable with kicking the can down the road on these sorts of things, I can probably be convinced in this case. Tulio and I were wondering why the li

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-24 Thread Bill Schmidt
lt;https://github.com/power8-abi-doc/vector-function-abi> Bill Schmidt of IBM Linux Tech. Center has committed to eventually integrating this ABI into the official POWER Architecture specifications. He is a GCC and Toolchain Architect so this should ease concerns over how much to trust an ABI which is not

Re: [RFC PATCH v0] PPC64: Implement POWER Architecure Vector Function ABI.

2020-02-24 Thread Bill Schmidt
On 2/24/20 11:08 AM, Jakub Jelinek wrote: On Mon, Feb 24, 2020 at 11:04:55AM -0600, Bill Schmidt wrote: +  if (clonei->simdlen +  && (clonei->simdlen < 2 +      || clonei->simdlen > 1024 Assuming that clonei->simdlen matches "vector length" in the ABI,

[PATCH] rs6000: Use -mno-pcrel for tests requiring TOC

2020-02-24 Thread Bill Schmidt
These two test cases have assembly code that requires a valid TOC. Make sure that we don't use the PC-relative ABI extensions that violate this requirement. Tested and verified on powerpc64le-unknown-linux-gnu. Is this okay for trunk? Thanks, Bill 2020-02-24 Bill Sc

Re: [PATCH] rs6000: Use -mno-pcrel for tests requiring TOC

2020-02-25 Thread Bill Schmidt
On 2/25/20 4:00 PM, Segher Boessenkool wrote: On Mon, Feb 24, 2020 at 03:20:30PM -0600, Bill Schmidt wrote: These two test cases have assembly code that requires a valid TOC. Make sure that we don't use the PC-relative ABI extensions that violate this requirement. Tested and verifi

Re: GLIBC libmvec status

2020-02-25 Thread Bill Schmidt
On 2/25/20 12:45 PM, Segher Boessenkool wrote: Hi! On Tue, Feb 25, 2020 at 04:53:17PM +, GT wrote: ‐‐‐ Original Message ‐‐‐ On Sunday, February 23, 2020 11:45 AM, Bill Schmidt wrote: As I just wrote on gcc-patches, we should disable libmvec for powerpc64. The vector ABI as

Re: GLIBC libmvec status

2020-02-26 Thread Bill Schmidt
On 2/26/20 2:18 AM, Jakub Jelinek wrote: On Tue, Feb 25, 2020 at 07:43:09PM -0600, Bill Schmidt wrote: The reason that homogeneous aggregates matter (at least somewhat) is that the ABI ^H^H^H^HAPI requires establishing a calling convention and a name- mangling formula that includes the length

Re: GLIBC libmvec status

2020-02-27 Thread Bill Schmidt
On 2/27/20 4:52 AM, Segher Boessenkool wrote: On Tue, Feb 25, 2020 at 07:43:09PM -0600, Bill Schmidt wrote: The reason that homogeneous aggregates matter (at least somewhat) is that the ABI ^H^H^H^HAPI requires establishing a calling convention and a name- mangling formula that includes the

Re: GLIBC libmvec status

2020-02-27 Thread Bill Schmidt
On 2/26/20 8:31 AM, Jakub Jelinek wrote: On Wed, Feb 26, 2020 at 07:55:53AM -0600, Bill Schmidt wrote: The hope is that we can create a vectorized version that returns values in registers rather than the by-ref parameters, and add code to GCC to copy things around correctly following the call

Re: GLIBC libmvec status

2020-02-27 Thread Bill Schmidt
On 2/27/20 8:52 AM, Jakub Jelinek wrote: On Thu, Feb 27, 2020 at 08:47:19AM -0600, Bill Schmidt wrote: But is this actually a good idea? It seems to me this will generate lousy code in the absence of hardware support. Won't we be better off warning and ignoring the directive, leaving the

Re: GLIBC libmvec status

2020-02-27 Thread Bill Schmidt
On 2/27/20 9:30 AM, Jakub Jelinek wrote: On Thu, Feb 27, 2020 at 09:19:25AM -0600, Bill Schmidt wrote: On 2/27/20 8:52 AM, Jakub Jelinek wrote: On Thu, Feb 27, 2020 at 08:47:19AM -0600, Bill Schmidt wrote: But is this actually a good idea? It seems to me this will generate lousy code in

Re: GLIBC libmvec status

2020-02-27 Thread Bill Schmidt
On 2/27/20 12:48 PM, GT wrote: ‐‐‐ Original Message ‐‐‐ On Thursday, February 27, 2020 9:26 AM, Bill Schmidt wrote: Upon reflection, I agree. Bert, we need to make changes to the document to reflect this: (1) "Calling convention" should refer to ELFv1 for powerpc64 and

Re: GLIBC libmvec status

2020-02-27 Thread Bill Schmidt
On 2/27/20 2:21 PM, Bill Schmidt wrote: On 2/27/20 12:48 PM, GT wrote: Done. The updated document is at: https://sourceware.org/glibc/wiki/HomePage?action=AttachFile&do=view&target=powerarchvectfuncabi.html Looks good. Can you please also remove the 'c' ABI from the man

Re: GLIBC libmvec status

2020-03-02 Thread Bill Schmidt
In 2/28/20 10:31 AM, Jakub Jelinek wrote: On Fri, Feb 28, 2020 at 04:23:03PM +, GT wrote: Do we want to change the name and title of the document since Segher doesn't believe it is an ABI. My initial suggestion: "POWER Architecture Specification of Scalar Function to Vector Function Mappin

Re: GLIBC libmvec status

2020-03-02 Thread Bill Schmidt
On 3/2/20 11:10 AM, Tulio Magno Quites Machado Filho wrote: Bill Schmidt writes: One tiny nit on the document: For the "b" value, let's just say "VSX" rather than "VSX as defined in PowerISA v2.07)." We will plan to only change values in case a di

[PATCH] rs6000: Fix -mpower9-vector -mno-altivec ICE (PR87560)

2020-03-02 Thread Bill Schmidt
error is now: f951: Error: '-mno-altivec' turns off '-mpower9-vector' Is this okay for master, and for backport to releases/gcc-9 after the 9.3 release? There's no urgency in getting this in 9.3. Thanks, Bill 2020-03-02 Bill Schmidt * rs6000-cpus.def (OTHER_AL

[PATCH 00/29] rs6000: Auto-generate builtins from descriptions [V2]

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt This is a slight reworking of the patches posted on June 17. I have made a couple of improvements, but the general arrangement of the patches is the same as before. Two major things to call out: - I've introduced a uniform set of parsing error codes to make it easier

[PATCH 01/29] rs6000: Initial create of rs6000-gen-builtins.c

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt Add header commentary explaining the purpose of rs6000-gen-builtins.c, along with an initial set of includes. 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c: New. --- gcc/config/rs6000/rs6000-gen-builtins.c | 141 1 file

[PATCH 10/29] rs6000: Parsing built-in input file, part 1 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (bif_stanza): New enum. (curr_bif_stanza): Likewise. (stanza_entry): New struct. (stanza_map): New initialized filescope variable. (enable_string): Likewise

[PATCH 03/29] rs6000: Add file support and functions for diagnostic support

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (bif_file): New filescope variable. (ovld_file): Likewise. (header_file): Likewise. (init_file): Likewise. (defines_file): Likewise. (pgm_path): Likewise

[PATCH 07/29] rs6000: Add functions for matching types, part 3 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (restriction): New enum. (typeinfo): Add restriction field. (match_const_restriction): Implement. --- gcc/config/rs6000/rs6000-gen-builtins.c | 136 1 file

[PATCH 09/29] rs6000: Main function with stubs for parsing and output

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (rbtree.h): New #include. (num_bifs): Likewise. (num_ovld_stanzas): Likewise. (num_ovlds): Likewise. (exit_codes): Add more enum values. (parse_codes): New enum

[PATCH 02/29] rs6000: Add initial input files

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt This patch adds a tiny subset of the built-in and overload descriptions. 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: New. * config/rs6000/rs6000-overload.def: New. --- gcc/config/rs6000/rs6000-builtin-new.def | 179

[PATCH 08/29] rs6000: Red-black tree implementation for balanced tree search

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rbtree.c: New file. * config/rs6000/rbtree.h: New file. --- gcc/config/rs6000/rbtree.c | 233 + gcc/config/rs6000/rbtree.h | 51 2 files changed, 284 insertions

[PATCH 04/29] rs6000: Add helper functions for parsing

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (MININT): New defined constant. (exit_codes): New enum. (consume_whitespace): New function. (advance_line): Likewise. (safe_inc_pos): Likewise

[PATCH 06/29] rs6000: Add functions for matching types, part 2 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (match_basetype): Implement. --- gcc/config/rs6000/rs6000-gen-builtins.c | 49 + 1 file changed, 49 insertions(+) diff --git a/gcc/config/rs6000/rs6000-gen-builtins.c b

[PATCH 05/29] rs6000: Add functions for matching types, part 1 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (void_status): New enum. (basetype): Likewise. (typeinfo): New struct. (handle_pointer): New function. (match_basetype): New stub function

[PATCH 11/29] rs6000: Parsing built-in input file, part 2 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (parse_args): New function. (parse_prototype): Implement. --- gcc/config/rs6000/rs6000-gen-builtins.c | 143 1 file changed, 143 insertions(+) diff --git a/gcc/config

[PATCH 12/29] rs6000: Parsing built-in input file, part 3 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (parse_bif_attrs): Implement. --- gcc/config/rs6000/rs6000-gen-builtins.c | 86 + 1 file changed, 86 insertions(+) diff --git a/gcc/config/rs6000/rs6000-gen-builtins.c

[PATCH 19/29] rs6000: Write output to the builtins init file, part 3 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (typemap): New struct. (TYPE_MAP_SIZE): New defined constant. (type_map): New filescope variable; initialize. (map_token_to_type_node): New function. (write_type_node

[PATCH 18/29] rs6000: Write output to the builtins init file, part 2 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (write_init_bif_table): Implement. --- gcc/config/rs6000/rs6000-gen-builtins.c | 153 1 file changed, 153 insertions(+) diff --git a/gcc/config/rs6000/rs6000-gen

[PATCH 16/29] rs6000: Write output to the builtins header file

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (write_autogenerated_header): New function. (write_bif_enum): Likewise. (write_ovld_enum): Likewise. (write_decls): Likewise. (write_extern_fntype): Likewise

[PATCH 23/29] rs6000: Add available-everywhere and ancient builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: Add always, power5, and power6 builtins. --- gcc/config/rs6000/rs6000-builtin-new.def | 78 1 file changed, 78 insertions(+) diff --git a/gcc/config/rs6000/rs6000

[PATCH 14/29] rs6000: Build and store function type identifiers

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (complete_vector_type): New function. (complete_base_type): Likewise. (construct_fntype_id): Likewise. (parse_bif_entry): Call construct_fntype_id

[PATCH 22/29] rs6000: Add VSX builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: Add VSX builtins. --- gcc/config/rs6000/rs6000-builtin-new.def | 840 +++ 1 file changed, 840 insertions(+) diff --git a/gcc/config/rs6000/rs6000-builtin-new.def b/gcc/config

[PATCH 15/29] rs6000: Write output to the vector definition include file

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (write_defines_file): Implement. --- gcc/config/rs6000/rs6000-gen-builtins.c | 4 1 file changed, 4 insertions(+) diff --git a/gcc/config/rs6000/rs6000-gen-builtins.c b/gcc/config/rs6000

[PATCH 24/29] rs6000: Add Power7 builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: Add power7 and power7-64 builtins. --- gcc/config/rs6000/rs6000-builtin-new.def | 39 1 file changed, 39 insertions(+) diff --git a/gcc/config/rs6000/rs6000-builtin

[PATCH 17/29] rs6000: Write output to the builtins init file, part 1 of 3

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (write_fntype): New function. (write_fntype_init): New stub function. (write_init_bif_table): Likewise. (write_init_ovld_table): New function. (write_init_file

[PATCH 13/29] rs6000: Parsing of overload input file

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-gen-builtins.c (ovld_stanza): New struct. (MAXOVLDSTANZAS): New defined constant. (ovld_stanzas): New filescope variable. (curr_ovld_stanza): Likewise. (MAXOVLDS): New defined constant

[PATCH 20/29] rs6000: Incorporate new builtins code into the build machinery

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config.gcc (powerpc*-*-*): Add rs6000-builtins.o to extra_objs. * config/rs6000/t-rs6000 (rs6000-gen-builtins.o): New target. (rbtree.o): Likewise. (rs6000-gen-builtins): Likewise. (rs6000-builtins.c

[PATCH 21/29] rs6000: Add remaining AltiVec builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: Add remaining AltiVec builtins. --- gcc/config/rs6000/rs6000-builtin-new.def | 843 +++ 1 file changed, 843 insertions(+) diff --git a/gcc/config/rs6000/rs6000-builtin

[PATCH 26/29] rs6000: Add Power9 builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: Add power9, power9-vector, and power9-64 builtins. --- gcc/config/rs6000/rs6000-builtin-new.def | 354 +++ 1 file changed, 354 insertions(+) diff --git a/gcc/config/rs6000

[PATCH 25/29] rs6000: Add Power8 vector builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: Add power8-vector builtins. --- gcc/config/rs6000/rs6000-builtin-new.def | 417 +++ 1 file changed, 417 insertions(+) diff --git a/gcc/config/rs6000/rs6000-builtin-new.def

[PATCH 27/29] rs6000: Add remaining builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin-new.def: Add ieee128-hw, dfp, crypto, and htm builtins. --- gcc/config/rs6000/rs6000-builtin-new.def | 217 +++ 1 file changed, 217 insertions(+) diff --git a/gcc/config/rs6000

[PATCH 29/29] rs6000: Call rs6000_autoinit_builtins from rs6000_builtins

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-call.c (rs6000-builtins.h): New #include. (rs6000_init_builtins): Call rs6000_autoinit_builtins. --- gcc/config/rs6000/rs6000-call.c | 4 1 file changed, 4 insertions(+) diff --git a/gcc/config/rs6000

[PATCH 28/29] rs6000: Add comments to help with transition

2020-07-27 Thread Bill Schmidt
From: Bill Schmidt 2020-07-26 Bill Schmidt * config/rs6000/rs6000-builtin.def: Add comments. * config/rs6000/rs6000-call.c: Likewise. --- gcc/config/rs6000/rs6000-builtin.def | 15 +++ gcc/config/rs6000/rs6000-call.c | 166 +++ 2 files changed

Re: [PATCH, rs6000] Update powerpc vector load builtins with PURE attribute

2019-09-26 Thread Bill Schmidt
On 9/26/19 12:00 PM, Segher Boessenkool wrote: Hi Will, On Thu, Sep 26, 2019 at 10:40:29AM -0500, will schmidt wrote: Update our (rs6000) vector load built-ins with the PURE attribute. These were previously given the MEM attribute, which meant that redundant loads surrounding the built-in call

[PATCH] rs6000: Fix PR91275

2019-09-30 Thread Bill Schmidt
rapped and tested on powerpc64le-unknown-linux-gnu. Is this okay for trunk, and for backport to all active branches after an appropriate waiting period? Thanks, Bill [gcc] 2019-09-30 Bill Schmidt * config/rs6000/rs6000-p8swap.c (rtx_is_swappable_p): Don't swap vpmsumd.

[PATCH] rs6000: Fix PR92093

2019-10-15 Thread Bill Schmidt
P8 BE, but clearly not. Tested on powerpc64-unknown-linux-gnu, committed as obvious. Will backport soon. Thanks, Bill 2019-10-15 Bill Schmidt PR target/92093 * gcc.target/powerpc/pr91275.c: Fix type and endian issues. Index: gcc/testsuite/gcc.target/powerpc/pr91275.c

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