Re: [PATCH, rs6000] Generate LE code for vec_lvsl and vec_lvsr that is compatible with BE code

2014-09-30 Thread Bill Schmidt
On Tue, 2014-09-30 at 09:50 -0500, Segher Boessenkool wrote: > On Mon, Sep 29, 2014 at 05:26:14PM -0500, Bill Schmidt wrote: > > The method used in this patch is to perform a byte-reversal of the > > result of the lvsl/lvsr. This is accomplished by loading the vector > > char

Re: [PATCH, rs6000] Generate LE code for vec_lvsl and vec_lvsr that is compatible with BE code

2014-09-30 Thread Bill Schmidt
On Tue, 2014-09-30 at 11:04 -0500, Segher Boessenkool wrote: > On Tue, Sep 30, 2014 at 10:24:23AM -0500, Bill Schmidt wrote: > > On Tue, 2014-09-30 at 09:50 -0500, Segher Boessenkool wrote: > > > On Mon, Sep 29, 2014 at 05:26:14PM -0500, Bill Schmidt wrote: > > > > Th

Re: [PATCH, rs6000] Generate LE code for vec_lvsl and vec_lvsr that is compatible with BE code

2014-10-02 Thread Bill Schmidt
Hi, Here's a revised version of the patch that addresses Segher's comments. Bootstrapped and tested on powerpc64le-unknown-linux-gnu. Ok for trunk? Thanks, Bill [gcc] 2014-10-02 Bill Schmidt * altivec.md (altivec_lvsl): New define_expand. (altivec_lvsl_direc

[PATCH, PowerPC] rs6000_expand_vector_init selects wrong field for splat in LE mode

2013-07-22 Thread Bill Schmidt
-unknown-linux-gnu with no new regressions. Ok for trunk? Patch by Anton Blanchard. Thanks, Bill 2013-07-22 Bill Schmidt for Anton Blanchard * config/rs6000/rs6000.c (rs6000_expand_vector_init): Fix endianness when selecting field to splat. Index: gcc/config

[PATCH, PowerPC] altivec_expand_vec_perm_const reverses pack pattern arguments in little endian mode

2013-07-22 Thread Bill Schmidt
fixes a failure in the testsuite when run little-endian (gcc.dg/vect/no-scevccp-outer-18.c). Bootstrapped and tested big-endian on powerpc64-unknown-linux-gnu with no new regressions. Ok for trunk? Patch by Anton Blanchard. Thanks, Bill 2013-07-22 Bill Schmidt Anton Blanchard

Re: [PATCH, PowerPC] altivec_expand_vec_perm_const reverses pack pattern arguments in little endian mode

2013-07-22 Thread Bill Schmidt
On Mon, 2013-07-22 at 19:49 -0400, David Edelsohn wrote: > On Mon, Jul 22, 2013 at 7:05 PM, Bill Schmidt > wrote: > > This patch is another fix for vector handling in little endian mode. > > The first two operands for a pack pattern are two vector registers that > > fo

Re: [PATCH, PowerPC] altivec_expand_vec_perm_const reverses pack pattern arguments in little endian mode

2013-07-22 Thread Bill Schmidt
On Mon, 2013-07-22 at 19:56 -0500, Bill Schmidt wrote: > > On Mon, 2013-07-22 at 19:49 -0400, David Edelsohn wrote: > > On Mon, Jul 22, 2013 at 7:05 PM, Bill Schmidt > > wrote: > > > This patch is another fix for vector handling in little endian mode. > > &g

Re: [PATCH, PowerPC] altivec_expand_vec_perm_const reverses pack pattern arguments in little endian mode

2013-07-22 Thread Bill Schmidt
On Mon, 2013-07-22 at 19:49 -0400, David Edelsohn wrote: > On Mon, Jul 22, 2013 at 7:05 PM, Bill Schmidt > wrote: > > This patch is another fix for vector handling in little endian mode. > > The first two operands for a pack pattern are two vector registers that > > fo

[PATCH, PowerPC] altivec_expand_vec_perm_const selects wrong field for splat in LE mode

2013-07-23 Thread Bill Schmidt
. Bootstrapped and tested on powerpc64-unknown-linux-gnu with no new regressions. Ok for trunk? Thanks, Bill 2013-07-23 Bill Schmidt Anton Blanchard * config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Correct selection of field for vector splat in little endian

Re: [PATCH, PowerPC] altivec_expand_vec_perm_const reverses pack pattern arguments in little endian mode

2013-07-23 Thread Bill Schmidt
On Tue, 2013-07-23 at 14:02 -0400, David Edelsohn wrote: > On Mon, Jul 22, 2013 at 9:09 PM, Bill Schmidt > wrote: > > > OK, currently testing the following. OK if it passes? > > > > Index:

[PATCH, PowerPC] Fix unaligned Altivec load/stores in LE mode

2013-07-23 Thread Bill Schmidt
no new regressions. Is this ok for trunk? Patch by Anton Blanchard. Thanks, Bill 2013-07-23 Bill Schmidt Anton Blanchard * vector.md (vec_realign_load_): Reorder input operands to vperm for little endian. * rs6000.c (rs6000_expand_builtin): Use lvsr

[PATCH, PowerPC] Fix vector pack insns for little endian

2013-07-24 Thread Bill Schmidt
-unknown-linux-gnu with no new regressions. Ok for trunk? Thanks, Bill 2013-07-24 Bill Schmidt Anton Blanchard * config/rs6000/altivec.md (altivec_vpkpx): Handle little endian. (altivec_vpksss): Likewise. (altivec_vpksus): Likewise. (altivec_vpkuus

[PATCH] Fix PR57993 (ICE in slsr)

2013-07-27 Thread Bill Schmidt
need to keep the candidate table up to date with respect to such replacements. Bootstrapped and tested on powerpc64-linux-gnu with no new regressions. Ok for trunk? Thanks, Bill gcc: 2013-07-27 Bill Schmidt * gimple-ssa-strength-reduction.c (replace_mult_candidate): Record

[PATCH, committed] Update SLSR candidate table for update_stmt replacements

2013-08-03 Thread Bill Schmidt
-unknown-linux-gnu with no regressions; committed as obvious. Thanks, Bill gcc: 2013-08-03 Bill Schmidt * gimple-ssa-strength-reduction.c (replace_mult_candidate): Update candidate table when replacing a candidate statement. (replace_rhs_if_not_dup): Likewise

[PATCH, PowerPC] Fix PR57949 (ABI alignment issue)

2013-08-14 Thread Bill Schmidt
s. Ok for trunk? Thanks, Bill gcc: 2013-08-14 Bill Schmidt PR target/57949 * doc/invoke.texi: Add documentation of mcompat-align-parm option. * config/rs6000/rs6000.opt: Add mcompat-align-parm option. * config/rs6000/rs6000.c (rs6000_function_arg_boun

[PATCH] Fix PR56605

2013-03-13 Thread Bill Schmidt
: 2013-03-13 Bill Schmidt Steven Bosscher PR rtl-optimization/56605 * loop-iv.c (implies_p): Handle equal RTXs and subregs. gcc/testsuite: 2013-03-13 Bill Schmidt wschm...@linux.vnet.ibm.com> PR rtl-optimization/56605 * gcc.target/powe

Re: [PATCH] Fix PR56605

2013-03-20 Thread Bill Schmidt
Eric, thanks -- fixed in trunk. Looks like I've missed the window for 4.8.0. Is this OK for backport once 4.8 opens up again? (Copying Richi/Jakub as well.) Thanks, Bill On Mon, 2013-03-18 at 17:31 +0100, Eric Botcazou wrote: > > 2013-03-13 Bill Schmidt > >

Re: [PATCH] Fix PR56605

2013-03-20 Thread Bill Schmidt
On Wed, 2013-03-20 at 14:50 +0100, Jakub Jelinek wrote: > On Wed, Mar 20, 2013 at 08:45:16AM -0500, Bill Schmidt wrote: > > Eric, thanks -- fixed in trunk. Looks like I've missed the window for > > 4.8.0. Is this OK for backport once 4.8 opens up again? (Copying >

[PATCH, PowerPC] Fix PR 56843

2013-04-05 Thread Bill Schmidt
on powerpc64-unknown-linux-gnu with no new regressions. Ok for trunk? Thanks, Bill gcc: 2013-04-05 Bill Schmidt PR target/56843 * config/rs6000/rs6000.c (rs6000_emit_swdiv_high_precision): Remove. (rs6000_emit_swdiv_low_precision): Remove. (rs6000_emit_swdiv

Re: [PATCH] Fix SLSR wrong-code (PR tree-optimization/56962)

2013-04-15 Thread Bill Schmidt
FWIW, I agree with Jakub's fix. Thanks! Bill On Mon, 2013-04-15 at 16:28 +0200, Jakub Jelinek wrote: > Hi! > > record_increment failed to verify that initializer is usable, which it is > only if cand_stmt is an addition (CAND_ADD can be e.g. even on a cast of > addition to some type of the same

Re: [PATCH] Fix PR60930

2014-04-25 Thread Bill Schmidt
On Fri, 2014-04-25 at 10:59 +0200, Richard Biener wrote: > On Fri, 25 Apr 2014, Jakub Jelinek wrote: > > > On Thu, Apr 24, 2014 at 09:20:50PM -0600, Jeff Law wrote: > > > > PR tree-optimization/60930 > > > > * gcc.dg/torture/pr60930.c: New test. > > > Doesn't the test depend on long long being at

[PATCH PING] Simplify a VEC_SELECT fed by its own inverse

2014-04-29 Thread Bill Schmidt
Hi, I'd like to ping this patch: http://gcc.gnu.org/ml/gcc-patches/2014-04/msg01319.html Thanks! Bill -- Bill Schmidt, Ph.D. IBM Advance Toolchain for PowerLinux IBM Linux Technology Center wschm...@linux.vnet.ibm.com wschm...@us.ibm.com

[PATCH PING^2] Simplify a VEC_SELECT fed by its own inverse

2014-05-19 Thread Bill Schmidt
Hi, I'd like to once again ping this patch from 2014-04-22: http://gcc.gnu.org/ml/gcc-patches/2014-04/msg01319.html Thanks! Bill

Re: -fuse-caller-save - Collect register usage information

2014-05-28 Thread Bill Schmidt
Tom, the final version of this patch that you committed breaks bootstrap on powerpc64le-linux-gnu. The problem is that all uses of the variable i are guarded by #ifdef STACK_REGS, but the declaration of i is unconditional. We get an unused variable warning that becomes an error during stage 3. T

[PATCH,rs6000] Add tests for vec_insert and vec_extract implemented with VSX instructions

2014-01-21 Thread Bill Schmidt
options. This patch adds those tests, which pass for powerpc64{,le}-unknown-linux-gnu without further changes to GCC. Ok for trunk? Thanks, Bill 2014-01-21 Bill Schmidt * gcc.dg/vmx/insert-vsx-be-order.c: New. * gcc.dg/vmx/extract-vsx.c: New. * gcc.dg/vmx/extract-vsx-be

[PATCH, rs6000] Avoid optimization problem for VEC_PERM_EXPR

2014-01-23 Thread Bill Schmidt
regressions. Is this ok for trunk? I will also plan to backport this to ibm/gcc-4_8-branch after burn-in. Thanks, Bill 2014-01-23 Bill Schmidt * config/rs6000/rs6000.c (rs6000_expand_vec_perm_const_1): Remove correction for little endian... * config/rs6000/vsx.md

[PATCH, rs6000] Implement -maltivec=be for vec_mergeh and vec_mergel Altivec builtins

2014-01-23 Thread Bill Schmidt
ere are also variants for -maltivec and -maltivec=be. Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no regressions. Ok for trunk? Thanks, Bill gcc: 2014-01-23 Bill Schmidt * config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Use CODE_FOR

Re: [PATCH, rs6000] Avoid optimization problem for VEC_PERM_EXPR

2014-01-23 Thread Bill Schmidt
On Thu, 2014-01-23 at 19:42 -0500, David Edelsohn wrote: > On Thu, Jan 23, 2014 at 6:43 PM, Bill Schmidt > wrote: > > Hi, > > > > While testing another patch, I hit a regression at -O2 for two of the > > vector shuffle tests. This patch fixes the problem. >

Re: [PATCH, rs6000] Implement -maltivec=be for vec_mergeh and vec_mergel Altivec builtins

2014-01-28 Thread Bill Schmidt
18:08 -0600, Bill Schmidt wrote: > Hi, > > This patch continues the series of changes to the Altivec builtins to > accommodate big-endian element order when targeting a little endian > machine. Here the focus is on the vector merge-high and merge-low > operations. > > The pr

[PATCH, rs6000] Implement -maltivec=be for vec_splat builtins

2014-01-29 Thread Bill Schmidt
for VMX and VSX. Two existing test cases require adjustment because of the change in the default semantics of vec_splat for little endian. Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no regressions. Ok for trunk? Thanks, Bill gcc: 2014-01-29 Bill Schmidt

[PATCH, rs6000] Clean up mergeh/mergel patterns to avoid missed optimizations

2014-01-30 Thread Bill Schmidt
ux-gnu with no regressions. Ok for trunk? Thanks, Bill 2014-01-30 Bill Schmidt * config/rs6000/vsx.md (vsx_mergel_): Remove "use" specifications; add DONE. (vsx_mergeh_): Likewise. * config/rs6000/altivec.md (altivec_vmrghb): Likewise. (a

[PATCH, rs6000] Handle -maltivec=be on little endian for vec_sums

2014-01-30 Thread Bill Schmidt
BE, LE, and LE with -maltivec=be. Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill gcc: 2014-01-30 Bill Schmidt * config/rs6000/altivec.md (UNSPEC_VSUMSWS_DIRECT): New unspec. (altivec_vsumsws): Add

Re: [PATCH, rs6000] Handle -maltivec=be on little endian for vec_sums

2014-01-30 Thread Bill Schmidt
On Thu, 2014-01-30 at 20:42 -0600, Bill Schmidt wrote: > Hi, > > This patch adds logic for -maltivec=be with a little endian target when > generating code for the vec_sums builtin. This implements the vsumsws > instruction, which adds the four elements in the first input vect

[PATCH, rs6000] Support -maltivec=be in LE mode for vec_perm builtin

2014-01-31 Thread Bill Schmidt
regressions. Is this ok for trunk? Thanks, Bill gcc: 2014-01-31 Bill Schmidt * config/rs6000/rs6000.c (altivec_expand_vec_perm_le): Generalize for vector types other than V16QImode. * config/rs6000/altivec.md (altivec_vperm_): Change to a define_expand, and

[PATCH, rs6000] Implement -maltivec=be for vec_pack, vec_unpackh, vec_unpackl Altivec builtins

2014-02-04 Thread Bill Schmidt
ed to test these builtins for all applicable vector types, with and without -maltivec=be. Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill gcc: 2014-02-04 Bill Schmidt * altivec.md (UNSPEC_VPACK_UNS_UNS_MOD_DI

[PATCH, rs6000] Handle -maltivec=be for vec_sum2s builtin (last -maltivec=be patch)

2014-02-04 Thread Bill Schmidt
for trunk? Thanks, Bill gcc: 2014-02-04 Bill Schmidt * config/rs6000/altivec.md (altivec_vsum2sws): Adjust code generation for -maltivec=be. (altivec_vsumsws): Simplify redundant test. gcc/testsuite: 2014-02-04 Bill Schmidt * gcc.dg/vmx/sum2s.c: New.

[PATCH, rs6000] Fix powerpc64le-linux bootstrap failure with -mcpu=power8

2014-02-16 Thread Bill Schmidt
x-gnu configured both with -mcpu=power7 and with -mcpu=power8 with no regressions. The Power8 LE bootstrap now completes cleanly. Is this ok for trunk? Thanks, Bill 2014-02-16 Bill Schmidt * config/rs6000/vsx.md (vsx_xxpermdi_): Handle little endian targets. Index: gcc/config/r

[PATCH, rs6000] Provide little-endian support for vmrgew and vmrgow

2014-02-16 Thread Bill Schmidt
ing tests now run to completion. Is this ok for trunk? Thanks, Bill 2014-02-16 Bill Schmidt * config/rs6000/altivec.md (p8_vmrgew): Handle little endian targets. (p8_vmrgow): Likewise. Index: gcc/conf

[PATCH, rs6000, committed] Most significant bit of zero is not one.

2014-02-19 Thread Bill Schmidt
d and tested for powerpc64le-unknown-linux-gnu with no regressions. Committed as obvious. Thanks, Bill 2014-02-19 Bill Schmidt * config/rs6000/rs6000.c (vspltis_constant): Fix most significant bit of zero. Index: gcc/config/rs6000/rs6

[PATCH, rs6000] vec_sums must define all result vector elements

2014-02-21 Thread Bill Schmidt
this patch as well. Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no regressions. Bootstrap and regression test on powerpc64-unknown-linux-gnu is in progress. If no big-endian regressions are found, is this ok for trunk? Thanks, Bill gcc: 2014-02-21 Bill Schmidt

[PATCH,rs6000] Add -maltivec=be support for vec_lde and vec_ste

2014-02-22 Thread Bill Schmidt
sions. Is this ok for trunk? Thanks, Bill gcc: 2014-02-22 Bill Schmidt * config/rs6000/altivec.md (altivec_lvex): Replace define_insn with define_expand and new define_insn *altivec_lvex_internal. (altivec_stvex): Replace define_insn with define_expand

[PATCH,rs6000,committed] Loosen assert in rs6000_emit_le_vsx_move

2014-02-23 Thread Bill Schmidt
xes a failure in the test suite. Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no regressions. Committed as obvious. Thanks, Bill 2014-02-23 Bill Schmidt * config/rs6000/rs6000.c (rs6000_emit_le_vsx_move): Relax assert to permit subregs. Index: gcc/config/r

[PATCH, rs6000] Canonicalize split for ordered and unordered vector compares

2014-02-24 Thread Bill Schmidt
d and tested on powerpc64{,le}-unknown-linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill 2014-02-24 Bill Schmidt * config/rs6000/vector.md (*vector_ordered): Change split to use canonical form for nor3. (*vector_unordered): Likewise. Index: gcc/config/r

Re: [PATCH, rs6000] Canonicalize split for ordered and unordered vector compares

2014-02-24 Thread Bill Schmidt
Whoops, just noticed the obvious error in the patch. Must have crossed my eyes and seen a "not" that wasn't there. Will re-fix shortly. Bill On Mon, 2014-02-24 at 18:41 -0600, Bill Schmidt wrote: > Hi, > > The patterns *vector_ordered and *vector_unordered perform a &g

[PATCH, rs6000] Canonicalize split for unordered vector compares

2014-02-24 Thread Bill Schmidt
64{,le}-unknown-linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill 2014-02-24 Bill Schmidt * config/rs6000/vector.md (*vector_unordered): Change split to use canonical form for nor3. Index: gcc/config/r

[PATCH, rs6000] Don't use vec_all_eq for vector double in Altivec tests

2014-02-24 Thread Bill Schmidt
. Thanks, Bill gcc/testsuite: 2014-02-24 Bill Schmidt * gcc.dg/vmx/ld-vsx.c: Don't use vec_all_eq. * gcc.dg/vmx/ld-vsx-be-order.c: Likewise. * gcc.dg/vmx/ldl-vsx.c: Likewise. * gcc.dg/vmx/ldl-vsx-be-order.c: Likewise. * gcc.dg/vmx/merge-vsx.c: Lik

Re: [PATCH, rs6000] Canonicalize split for unordered vector compares

2014-02-25 Thread Bill Schmidt
the split to use the canonical form. > > > > Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no > > regressions. Is this ok for trunk? > > > > Thanks, > > Bill > > > > > > 2014-02-24 Bill Schmidt > > > >

Re: [PATCH, rs6000] Canonicalize split for unordered vector compares

2014-02-25 Thread Bill Schmidt
On Tue, 2014-02-25 at 11:23 -0500, David Edelsohn wrote: > On Tue, Feb 25, 2014 at 10:15 AM, Bill Schmidt > wrote: > > Hi David, > > > > Thanks. I have this upstream for mainline now. This problem appears to > > have been introduced in GCC 4.6. Is it ok to ba

[PATCH, rs6000] Restrict reload use of FLOAT_REGS

2014-02-28 Thread Bill Schmidt
nux-gnu (--with-cpu=power8) and powerpc64-unknown-linux-gnu (--with-cpu=power7) with no regressions. Is this ok for trunk? Thanks, Bill 2014-02-28 Bill Schmidt * config/rs6000/rs6000.c (rs6000_preferred_reload_class): Disallow PLUS rtx's from reloading into a superset

[PATCH, rs6000] Document reserved use of "wc" constraint

2014-02-28 Thread Bill Schmidt
k? Thanks, Bill 2014-02-28 Bill Schmidt * config/rs6000/constraints.md: Document reserved use of "wc". Index: gcc/config/rs6000/constraints.md === --- gcc/config/rs6000/constraints.md(revision 208237) +

Re: [PATCH, rs6000] Restrict reload use of FLOAT_REGS

2014-03-03 Thread Bill Schmidt
Ulrich Weigand wrote: > David Edelsohn wrote: > > On Fri, Feb 28, 2014 at 7:11 PM, Bill Schmidt > > wrote: > > > * config/rs6000/rs6000.c (rs6000_preferred_reload_class): Disallow > > > PLUS rtx's from reloading into a superset of FLOAT_REGS; relax

[PATCH, libsanitizer] Disable for PowerPC little endian for now

2014-03-03 Thread Bill Schmidt
ed on powerpc64le-unknown-linux-gnu, verifying that libsanitizer is not built. Also bootstrapped and tested on powerpc64-unknown-linux-gnu, verifying that libsanitizer is built normally. Is this ok for trunk? Thanks, Bill 2014-03-03 Bill Schmidt * configure.tgt: Unsupported for little e

[PATCH, rs6000, committed] Change "vector long" to "vector long long" in recently added tests

2014-03-04 Thread Bill Schmidt
all environments (except for a handful that are failing on AIX for another reason). Committed as obvious (in retrospect :). Thanks, Bill 2014-03-04 Bill Schmidt * gcc.dg/vmx/extract-vsx.c: Replace "vector long" with "vector long long" throughout.

[PATCH, rs6000, committed] Fix unspec typo

2014-07-20 Thread Bill Schmidt
Hi, UNSPEC_VSLDOI was misspelled. It bothered me. I fixed it. Regstrapped on powerpc64le-unknown-linux-gnu, committed as obvious. Thanks, Bill 2014-07-20 Bill Schmidt * config/rs6000/altivec.md (unspec enum): Fix typo in UNSPEC_VSLDOI. (altivec_vsldoi_

Re: [4.8, PATCH 5/26] Backport Power8 and LE support: Test adjustments

2014-03-19 Thread Bill Schmidt
Oops. Please ignore this for now. I'm preparing a patch series and sent this one prematurely. Thanks, Bill On Wed, 2014-03-19 at 10:25 -0500, Bill Schmidt wrote: > Hi, > > This patch (diff-le-tests) backports adjustments to a few tests for > powerpc64le and the ELFv2 ABI. > > Thanks, > Bill

[4.8, PATCH 5/26] Backport Power8 and LE support: Test adjustments

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-le-tests) backports adjustments to a few tests for powerpc64le and the ELFv2 ABI. Thanks, Bill 2014-03-29 Bill Schmidt Backport from mainline 2013-11-27 Bill Schmidt * gfortran.dg/nan_7.f90: Disable for little endian PowerPC

[4.8, PATCH 0/26] Backport Power8 and LE support

2014-03-19 Thread Bill Schmidt
Hi, Support for Power8 features and the new powerpc64le-linux-gnu target, including the ELFv2 ABI, has been developed up till now on the ibm/gcc-4_8-branch. It was appropriate to use this separate branch while the support was unstable, but this branch will not represent a particularly good suppor

[4.8, PATCH 3/26] Backport Power8 and LE support: Configury bits 1

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-le-config) backports updates to more recent config.guess and config.sub versions to support the new powerpc64le target. Thanks, Bill 2014-03-29 Bill Schmidt Backport from mainline r203071: 2013-10-01 Joern Rennecke Import from

[4.8, PATCH 5/26] Backport Power8 and LE support: Test adjustments

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-le-tests) backports adjustments to a few tests for powerpc64le and the ELFv2 ABI. Thanks, Bill 2014-03-29 Bill Schmidt Backport from mainline 2013-11-27 Bill Schmidt * gfortran.dg/nan_7.f90: Disable for little endian PowerPC

[4.8, PATCH 8/26] Backport Power8 and LE support: PR57949

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-abi-compat) backports the ABI compatibility fix for PR57949. Thanks, Bill [gcc] 2014-03-29 Bill Schmidt Backport from mainline r201750. 2013-11-15 Ulrich Weigand Note: Default setting of -mcompat-align-parm inverted! 2013-08-14

[4.8, PATCH 9/26] Backport Power8 and LE support: ABI call support

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-abi-calls) backports fixes to common code to support the new ELFv2 ABI. Copying Richard and Jakub for these bits. Thanks, Bill 2014-03-29 Bill Schmidt Backport from mainline r204798: 2013-11-14 Ulrich Weigand Alan Modra

[4.8, PATCH 11/26] Backport Power8 and LE support: gotest

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-abi-gotest) backports enablement of the Go testsuite for powerpc64le. Thanks, Bill 2014-03-29 Bill Schmidt Backport from mainline r205000. 2013-11-19 Ulrich Weigand gotest: Recognize PPC ELF v2 function pointers in text section. Index: gcc

[4.8, PATCH 12/26] Backport Power8 and LE support: Defaults

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-le-align) sets some miscellaneous defaults for little endian support. Thanks, Bill 2014-03-29 Bill Schmidt Apply mainline r205060. 2013-11-20 Alan Modra * config/rs6000/sysv4.h (CC1_ENDIAN_LITTLE_SPEC): Define as empty. * config

[4.8, PATCH 14/26] Backport Power8 and LE support: DFP absolute value

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-dfp-abs) backports some unrelated but necessary work to enable the DFP absolute value builtins. Copying Jakub who was involved with the original patch. Thanks, Bill 2014-03-29 Bill Schmidt Backport from mainline 2013-08-19 Peter Bergner

[4.8, PATCH 17/26] Backport Power8 and LE support: Direct moves

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-direct-move) backports support for the Power8 direct move instructions for little endian. Thanks, Bill 2014-03-19 Bill Schmidt Backport from mainline 2013-10-23 Pat Haugen * gcc.target/powerpc/direct-move.h: Fix header for executable tests

[4.8, PATCH 6/26] Backport Power8 and LE support: TDmode for LE

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-le-dfp) backports fixes for TDmode on a little endian target. Thanks, Bill 2014-03-19 Bill Schmidt Backport from mainline r205123: 2013-11-20 Ulrich Weigand * config/rs6000/rs6000.c (rs6000_cannot_change_mode_class): Do not allow

[4.8, PATCH 4/26] Backport Power8 and LE support: Libtool and configure bits 2

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-le-libtool) backports changes to use a libtool.m4 that supports powerpc64le-*linux*. Thanks, Bill 2014-03-19 Bill Schmidt Backport from mainline 2013-11-22 Ulrich Weigand * libgo/config/libtool.m4: Update to mainline version. * libgo

[4.8, PATCH 16/26] Backport Power8 and LE support: PR56843

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-pr56843) backports the fix for PR56843. Thanks, Bill [gcc] 2014-03-19 Bill Schmidt Backport from mainline 2013-04-05 Bill Schmidt PR target/56843 * config/rs6000/rs6000.c (rs6000_emit_swdiv_high_precision): Remove

[4.8, PATCH 18/26] Backport Power8 and LE support: Configure bits 2

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-le-config-2) backports more configure changes, particularly for multilib/multiarch targeting powerpc64le. Thanks, Bill 2014-03-19 Bill Schmidt Apply mainline r202190, powerpc64le multilibs and multiarch dir 2013-09-03 Alan Modra * config.gcc

[4.8, PATCH 15/26] Backport Power8 and LE support: PR54537

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-pr54537) backports a fix for PR54537 which is unrelated but necessary. Copying Richard and Jakub for the common code. Thanks, Bill [libstdc++-v3] 2014-03-29 Bill Schmidt Backport from mainline 2013-08-01 Fabien ChĂȘne PR c++/54537

[4.8, PATCH 20/26] Backport Power8 and LE support: LRA

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-lra) backports the changes to enable -mlra for the PowerPC back end. Thanks, Bill 2014-03-19 Bill Schmidt Backport from mainline 2014-02-04 Michael Meissner * config/rs6000/rs6000.opt (-mlra): Add switch to enable the LRA register

[4.8, PATCH 26/26] Backport Power8 and LE support: Missing support

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-trunk-missing) backports some LE pieces that were found not to have been backported from trunk to the IBM 4.8 branch until relatively recently. Thanks, Bill 2014-03-19 Bill Schmidt Back port from trunk 2013-04-25 Alan Modra PR target/57052

[4.8, PATCH 19/26] Backport Power8 and LE support: Quad memory atomic

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-quad-memory) backports support for quad-memory atomic operations. Thanks, Bill [gcc/testsuite] 2014-03-19 Bill Schmidt Back port from mainline 2014-01-23 Michael Meissner PR target/59909 * gcc.target/powerpc/quad-atomic.c: New file

[4.8, PATCH 1/26 too big]

2014-03-19 Thread Bill Schmidt
Hi, The main patch for this series was too large for the mailer to accept. Sorry about that. This piece is all powerpc-related and seems to have been delivered to David ok. If anyone else wants a copy of the patch, please contact me privately and I'll send it your way. Thanks, Bill

[4.8, PATCH 24/26] Backport Power8 and LE support: Reload issues

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-reload) backports fixes for a couple of problems in PowerPC reload handling. Thanks, Bill 2014-03-19 Bill Schmidt Apply mainline r207798 2014-02-26 Alan Modra PR target/58675 PR target/57935 * config/rs6000/rs6000.c

[4.8, PATCH 22/26] Backport Power8 and LE support: -mcall-* endianness

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-mcall) fixes big-endian assumptions for -mcall-aixdesc and various others. Thanks, Bill 2014-03-19 Bill Schmidt Backport from mainline r207658 2014-02-06 Ulrich Weigand * config/rs6000/sysv4.h (ENDIAN_SELECT): Do not attempt to enforce

[4.8, PATCH 23/26] Backport Power8 and LE support: PR60137, PR60203

2014-03-19 Thread Bill Schmidt
Hi, This patch (diff-pr60137-pr60203) backports fixes for two little-endian vector mode problems. Thanks, Bill [gcc] 2014-03-19 Bill Schmidt Backport from mainline r207699. 2014-02-11 Michael Meissner PR target/60137 * config/rs6000/rs6000.md (128-bit

Re: [4.8, PATCH 0/26] Backport Power8 and LE support

2014-03-19 Thread Bill Schmidt
On Wed, 2014-03-19 at 21:05 +0100, Jakub Jelinek wrote: > I guess the most important question is what guarantees there are that it > won't affect non-powerpc* ports too much (my main concern is the 9/26 patch, > plus the C++ FE / libstdc++ changes), and how much does this affect > code generation

Re: [4.8, PATCH 0/26] Backport Power8 and LE support

2014-03-19 Thread Bill Schmidt
On Wed, 2014-03-19 at 16:03 -0500, Bill Schmidt wrote: > On Wed, 2014-03-19 at 21:05 +0100, Jakub Jelinek wrote: > > > I guess the most important question is what guarantees there are that it > > won't affect non-powerpc* ports too much (my main concern is the 9/26 pat

[PATCH, rs6000] More efficient vector permute for little endian

2014-03-20 Thread Bill Schmidt
this can be done more efficiently with a vector nor operation. This patch makes that change. Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill 2014-03-20 Bill Schmidt * config/rs6000/rs6000.c (rs6000_expand_vector_set

[4.8, PATCH 27/26] Backport Power8 and LE support: Fixes for AIX test failures

2014-04-02 Thread Bill Schmidt
Hi, This patch (diff-aix) adds to the 4.8 PowerPC backport patch series with a few backported fixes from trunk that repair test failures on AIX. Thanks, Bill [gcc] 2014-04-02 Bill Schmidt Backport from mainline r205308 2013-11-23 David Edelsohn * config/rs6000

[PATCH, committed] Fix PR60733

2014-04-02 Thread Bill Schmidt
do so. Bootstrapped and tested on powerpc64-unknown-linux-gnu with no new regressions; committed. Thanks, Bill [gcc] 2014-04-02 Bill Schmidt PR tree-optimization/60733 * gimple-ssa-strength-reduction.c (ncd_with_phi): Change required insertion point for PHI candidates to b

[4.8, PATCH 28/26] Backport Power8 and LE support: Fix for SPE (PR60735)

2014-04-03 Thread Bill Schmidt
Hi, This patch (diff-pr60735) adds to the 4.8 PowerPC backport patch series with a backported fix for PR60735, an unrecognized insn problem for SPE. Thanks, Bill [gcc] 2014-04-03 Bill Schmidt Back port mainline subversion id 209025. 2014-04-02 Michael Meissner

[4.8, PATCH 29/26] Backport Power8 and LE support: Document vec_vgbbd

2014-04-03 Thread Bill Schmidt
will then be ready to commit the series. Thanks, Bill [gcc] 2014-04-03 Bill Schmidt Back port from main line: 2014-04-01 Michael Meissner * doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions): Document vec_vgbbd. Index: gcc-4_8-test3/gcc/doc/extend

Re: [4.8, PATCH 29/26] Backport Power8 and LE support: Document vec_vgbbd

2014-04-03 Thread Bill Schmidt
On Thu, 2014-04-03 at 13:01 -0500, Bill Schmidt wrote: > I'm currently doing one more quick round of testing with the three > late-addition patches, and will then be ready to commit the series. > Final tests have all passed (BE Linux, LE Linux, BE AIX). Thanks, Bill

Re: [4.8, PATCH 0/26] Backport Power8 and LE support

2014-04-04 Thread Bill Schmidt
diff-pr60137-pr60203 209112 24/26 diff-reload 209113 25/26 diff-v1ti 209114 26/26 diff-trunk-missing 209115 27/26 diff-aix 209116 28/26 diff-pr60735 209117 29/26 diff-vecdoc Thanks, Bill On Thu, 2014-04-03 at 10:24 -0400, David Edelsohn wrote: > On Wed, Mar 19, 2014 at 3:23 PM, Bill

[4.8, PATCH, rs6000] (Re: [PATCH, rs6000] More efficient vector permute for little endian)

2014-04-04 Thread Bill Schmidt
On Thu, 2014-03-20 at 20:38 -0500, Bill Schmidt wrote: > The original workaround for vector permute on a little endian platform > includes subtracting each element of the permute control vector from 31. > Because the upper 3 bits of each element are unimportant, this was > im

Re: [4.8, PATCH, rs6000] (Re: [PATCH, rs6000] More efficient vector permute for little endian)

2014-04-07 Thread Bill Schmidt
Hi, I'm withdrawing this request as I just discovered it will sometimes be advantageous to use vnand rather than vnor; will rework this and get back to you. Thanks, Bill On Fri, 2014-04-04 at 15:45 -0500, Bill Schmidt wrote: > On Thu, 2014-03-20 at 20:38 -0500, Bill Schmidt wrote:

[PATCH, rs6000] Prefer vnand/vperm over vnor/vperm for Power8

2014-04-08 Thread Bill Schmidt
h, if you feel that is appropriate. Please let me know. Thanks, Bill 2014-04-08 Bill Schmidt * config/rs6000/rs6000.c (rs6000_expand_vector_set): Use vnand instead of vnor to exploit possible fusion opportunity in the future. (altivec_expand_vec_perm_con

Re: [4.8, PATCH 0/26] Backport Power8 and LE support

2014-04-09 Thread Bill Schmidt
On Wed, 2014-04-09 at 11:51 +0200, Jakub Jelinek wrote: > On Fri, Apr 04, 2014 at 10:38:49AM -0500, Bill Schmidt wrote: > > Thanks to everyone who helped with development, testing, and review of > > the patch set! I've committed the changes to 4.8 this morning. Note >

Re: [4.8, PATCH 0/26] Backport Power8 and LE support

2014-04-09 Thread Bill Schmidt
On Wed, 2014-04-09 at 12:03 +0200, Jakub Jelinek wrote: > Another issue is bad toplevel ChangeLog entries. > 2014-04-04 Bill Schmidt > > Backport from mainline > 2013-11-22 Ulrich Weigand > > * libgo/config/libtool.m4: Update to mainline version. >

Re: [PATCH, rs6000] Improve atomic_load/store code gen for Power8 TI mode

2014-04-09 Thread Bill Schmidt
On Tue, 2014-04-08 at 13:39 -0500, Pat Haugen wrote: > On 03/25/2014 11:20 AM, Pat Haugen wrote: > > Power8 can use lq/stq instructions for TI mode atomic_load/store. > > Bootstrap/regtest with no new failures. Ok for trunk and 4.8 (once > > bootstrap/regtest finishes)? > > > > -Pat > > > > > > 2

Re: [4.8, PATCH 0/26] Backport Power8 and LE support

2014-04-09 Thread Bill Schmidt
Cleaned up as r209249. On Wed, 2014-04-09 at 17:28 +0200, Jakub Jelinek wrote: > On Wed, Apr 09, 2014 at 10:27:33AM -0500, Bill Schmidt wrote: > > Ah, right. I had meant to fix this before committing the patch set and > > dropped the ball. > > Thanks. > > > One

Re: [4.8, PATCH 0/26] Backport Power8 and LE support

2014-04-09 Thread Bill Schmidt
Cleaned up as r209250. On Wed, 2014-04-09 at 11:51 +0200, Jakub Jelinek wrote: > On Fri, Apr 04, 2014 at 10:38:49AM -0500, Bill Schmidt wrote: > > Thanks to everyone who helped with development, testing, and review of > > the patch set! I've committed the changes to 4.8

Re: [PATCH, rs6000] Improve atomic_load/store code gen for Power8 TI mode

2014-04-09 Thread Bill Schmidt
rry for the problems. > > - David > > > On Wed, Apr 9, 2014 at 2:56 PM, Bill Schmidt > wrote: > > On Tue, 2014-04-08 at 13:39 -0500, Pat Haugen wrote: > >> On 03/25/2014 11:20 AM, Pat Haugen wrote: > >> > Power8 can use lq/stq instructions for TI mode atomic_

[PATCH, rs6000, 4.8, 4.9, trunk] Fix little endian behavior of vec_merge[hl] for V4SI/V4SF with VSX

2014-04-17 Thread Bill Schmidt
] 2014-04-17 Bill Schmidt * config/rs6000/vsx.md (vsx_xxmrghw_): Adjust for little-endian. (vsx_xxmrglw_): Likewise. [gcc/testsuite] 2014-04-17 Bill Schmidt * gcc.dg/vmx/merge-vsx.c: Add V4SI and V4SF tests. * gcc.dg/vmx/merge-vsx-be-order.c

[PATCH] Simplify a VEC_SELECT fed by its own inverse

2014-04-21 Thread Bill Schmidt
linux-gnu with no regressions. Is this ok for trunk? Thanks, Bill [gcc] 2014-04-21 Bill Schmidt * simplify-rtx.c (simplify_binary_operation_1): Optimize case of nested VEC_SELECTs that are inverses of each other. [gcc/testsuite] 2014-04-21 Bill Schmidt * gcc.t

Re: [PATCH] Simplify a VEC_SELECT fed by its own inverse

2014-04-21 Thread Bill Schmidt
Hi Marc, Good points! I will rework the patch with your suggestions in mind. Thanks! Bill On Mon, 2014-04-21 at 18:51 +0200, Marc Glisse wrote: > On Mon, 21 Apr 2014, Bill Schmidt wrote: > > > Note that it would be possible to do a more general transformation here, > > in wh

Re: [PATCH 33/89] Use more concrete types for various gimple statements

2014-04-21 Thread Bill Schmidt
Hi David, Just a quick review of the gimple-ssa-strength-reduction.c changes. I have one stylistic comment: On Mon, 2014-04-21 at 12:57 -0400, David Malcolm wrote: > diff --git a/gcc/gimple-ssa-strength-reduction.c > b/gcc/gimple-ssa-strength-reduction.c > index 9320b51..35e15e0 100644 > --- a

Re: [PATCH] Simplify a VEC_SELECT fed by its own inverse

2014-04-21 Thread Bill Schmidt
Hi, Here's a revised patch in response to Marc's comments. Again, bootstrapped and tested on powerpc64[,le]-unknown-linux-gnu. Is this ok for trunk? Thanks, Bill [gcc] 2014-04-21 Bill Schmidt * simplify-rtx.c (simplify_binary_operation_1): Optimize case of

<    4   5   6   7   8   9   10   11   12   13   >