[PATCH, committed] Update my email address in MAINTAINERS

2019-05-19 Thread Peter Bergner
I committed the following to update my email address. Peter * MAINTAINERS: Update my email address. Index: MAINTAINERS === --- MAINTAINERS (revision 271381) +++ MAINTAINERS (revision 271382) @@ -286,7 +286,7 @@ loop

Re: [PATCH, rs6000] Port cleanup patch, use rtl.h convenience macros, etc.

2019-01-24 Thread Peter Bergner
nother self review of the patch, along with another round of bootstrap and regtesting which showed no regressions. Thanks! Peter

[PATCH, rs6000] Switch the rs6000 port over to LRA

2016-08-02 Thread Peter Bergner
Now that Vlad has fixed PR69847, which was the last problem holding the rs6000 port from switching from reload to LRA, we are ready to flip the switch. Is the following ok once bootstrap/regtesting on both LE and BE (32 & 64 regtesting) comes out clean? Peter * config/rs6000/rs60

Re: [PATCH, rs6000] Switch the rs6000 port over to LRA

2016-08-02 Thread Peter Bergner
case we hit any bugs in the transition. Eventually removing the switch will be nice, since it will allow us to clean up (ie, remove!) some code in our port. Peter

Re: [PATCH, rs6000] Switch the rs6000 port over to LRA

2016-08-03 Thread Peter Bergner
On 8/2/16 3:17 PM, Peter Bergner wrote: Now that Vlad has fixed PR69847, which was the last problem holding the rs6000 port from switching from reload to LRA, we are ready to flip the switch. Is the following ok once bootstrap/regtesting on both LE and BE (32 & 64 regtesting) comes out c

Re: [PATCH, rs6000] Switch the rs6000 port over to LRA

2016-08-03 Thread Peter Bergner
On 8/3/16 6:03 PM, David Edelsohn wrote: On Wed, Aug 3, 2016 at 6:59 PM, Peter Bergner wrote: My question, is since these failures are not due to LRA, do we want to consider the switch to LRA ok to commit or do we want to wait until the -mvsx-timode performance bug is fixed? Peter, Please

Re: [PATCH, rs6000] Switch the rs6000 port over to LRA

2016-08-04 Thread Peter Bergner
On 8/3/16 6:03 PM, David Edelsohn wrote: Please open a Bugzilla for the rs6000 backend about the vsx-timode performance regression. The vsx-timode regression needs to be fixed for GCC 7. Ok, I opened https://gcc.gnu.org/PR72804 and will start debugging the problem. Peter

[PATCH, LRA] Fix PR rtl-optimization 77289, LRA matching constraint problem

2016-08-30 Thread Peter Bergner
no() instead. Since uses_hard_regs_p() may call get_final_hard_regno() with a pseudo, I have added support for mapping those to hard reg numbers before performing the register elimination. This has passed bootstrap and regtesting with no regressions. Ok for mainline? Peter gcc/ PR rt

PING: Re: [PATCH, LRA] Fix PR rtl-optimization 77289, LRA matching constraint problem

2016-09-07 Thread Peter Bergner
Ping this patch: https://gcc.gnu.org/ml/gcc-patches/2016-08/msg02099.html Peter

[PATCH] Document POWER's -mhtm and -mno-htm options.

2016-06-07 Thread Peter Bergner
It seems we (ok, me) forgot to document the -mhtm option for POWER. This bootstrapped fine and the generated docs looked good. Is this ok for trunk and the open release branches? Peter * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mhtm and -mno-htm. Index: gcc/doc

Re: [PATCH] Document POWER's -mhtm and -mno-htm options.

2016-06-07 Thread Peter Bergner
On 6/7/16 12:49 PM, David Edelsohn wrote: On Tue, Jun 7, 2016 at 1:18 PM, Peter Bergner wrote: It seems we (ok, me) forgot to document the -mhtm option for POWER. This bootstrapped fine and the generated docs looked good. Is this ok for trunk and the open release branches? Peter

[PATCH, rs6000] Fix PR target 71656, reload ICE when -mcpu=power9 -mpower9-dform-vector

2016-06-25 Thread Peter Bergner
? This bug also affects the FSF 6 branch. Ok for that branch after the patch has burned in a while on trunk and after the usual bootstrap and regtesting? Peter gcc/ PR target/71656 * config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add OPTION_MASK_P9_DFORM_VECTOR

Re: [PATCH, rs6000] Fix PR target 71656, reload ICE when -mcpu=power9 -mpower9-dform-vector

2016-06-27 Thread Peter Bergner
On 6/27/16 3:21 PM, Segher Boessenkool wrote: On Sat, Jun 25, 2016 at 07:14:01PM -0500, Peter Bergner wrote: Okay for trunk, okay for 6 later. One comment: + if (VECTOR_MODE_P (mode) + && !mode_supports_vsx_dform_quad (mode)) +return false; if (GET_CODE (addr)

Re: [PATCH, rs6000] Fix PR target 71656, reload ICE when -mcpu=power9 -mpower9-dform-vector

2016-06-28 Thread Peter Bergner
On 6/27/16 8:30 PM, Peter Bergner wrote: On 6/27/16 3:21 PM, Segher Boessenkool wrote: On Sat, Jun 25, 2016 at 07:14:01PM -0500, Peter Bergner wrote: Okay for trunk, okay for 6 later. One comment: + if (VECTOR_MODE_P (mode) + && !mode_supports_vsx_dform_quad (mode)) +retu

[PATCH, rs6000] Add support to __builtin_cpu_supports() for new HWCAP2 bit

2017-11-06 Thread Peter Bergner
? Peter gcc/ * config/rs6000/ppc-auxv.h (PPC_FEATURE2_HTM_NO_SUSPEND): New define. * config/rs6000/rs6000.c (cpu_supports_info): Use it. gcc/testsuite/ * gcc.target/powerpc/cpu-builtin-1.c (htm-no-suspend): Add test. Index: gcc/config/rs6000/ppc-auxv.h

Re: [PATCH, rs6000] Add support to __builtin_cpu_supports() for new HWCAP2 bit

2017-11-06 Thread Peter Bergner
On 11/6/17 4:52 PM, Segher Boessenkool wrote: > Hi! > > On Mon, Nov 06, 2017 at 11:41:39AM -0600, Peter Bergner wrote: >> There is a new HWCAP2 bit added to the AUXV here: >> >> http://patchwork.ozlabs.org/patch/824764/ >> >> This patch adds

Re: [PATCH, rs6000] Add support to __builtin_cpu_supports() for new HWCAP2 bit

2017-11-07 Thread Peter Bergner
the glibc > patch is also waiting. You may want to wait a little bit more too. > > [1] https://sourceware.org/ml/libc-alpha/2017-10/msg00867.html Ok, I'll hold off until you push your changes. Can you please ping me when you finally commit your patch? Thanks. Peter

[PATCH, rs6000] Modify libgcc's float128 IFUNC resolver functions to use __builtin_cpu_supports()

2017-07-06 Thread Peter Bergner
s a GLIBC issue, not a GCC issue), so if this patch is "ok", I plan on holding off on committing this, until the GLIBC fix is committed. Peter * config/rs6000/float128-ifunc.c: Don't include auxv.h. (have_ieee_hw_p): Delete function. (SW_OR_HW) Use __builtin_

Re: [PATCH, rs6000] Modify libgcc's float128 IFUNC resolver functions to use __builtin_cpu_supports()

2017-07-07 Thread Peter Bergner
On 7/7/17 10:18 AM, Segher Boessenkool wrote: > On Thu, Jul 06, 2017 at 04:21:48PM -0500, Peter Bergner wrote: >> * config/rs6000/float128-ifunc.c: Don't include auxv.h. >> (have_ieee_hw_p): Delete function. >> (SW_OR_HW) Use __builtin_cpu_supports(). &g

Re: [PATCH, rs6000] Modify libgcc's float128 IFUNC resolver functions to use __builtin_cpu_supports()

2017-07-07 Thread Peter Bergner
On 7/7/17 4:13 PM, Peter Bergner wrote: > On 7/7/17 10:18 AM, Segher Boessenkool wrote: >> On Thu, Jul 06, 2017 at 04:21:48PM -0500, Peter Bergner wrote: >>> * config/rs6000/float128-ifunc.c: Don't include auxv.h. >>> (have_ieee_hw_p): Delete

Re: [PATCH, rs6000] Modify libgcc's float128 IFUNC resolver functions to use __builtin_cpu_supports()

2017-07-10 Thread Peter Bergner
On 7/10/17 9:48 AM, Segher Boessenkool wrote: > On Fri, Jul 07, 2017 at 07:14:25PM -0500, Peter Bergner wrote: >> On 7/7/17 4:13 PM, Peter Bergner wrote: >>> On 7/7/17 10:18 AM, Segher Boessenkool wrote: >>>> On Thu, Jul 06, 2017 at 04:21:48PM -0500, Peter Bergner

Re: [PATCH, rs6000] Modify libgcc's float128 IFUNC resolver functions to use __builtin_cpu_supports()

2017-07-20 Thread Peter Bergner
On 7/10/17 2:52 PM, Peter Bergner wrote: > On 7/10/17 9:48 AM, Segher Boessenkool wrote: >> On Fri, Jul 07, 2017 at 07:14:25PM -0500, Peter Bergner wrote: >>> On 7/7/17 4:13 PM, Peter Bergner wrote: >>>> On 7/7/17 10:18 AM, Segher Boessenkool wrote: >>>>

Re: [PATCH/AARCH64] Decimal floating point support for AARCH64

2017-07-21 Thread Peter Bergner
n-zero chance or you just want to be safe, you could enforce even/odd reg usage in the ABI upfront. Peter

Re: [PATCH/AARCH64] Decimal floating point support for AARCH64

2017-07-21 Thread Peter Bergner
mode is more natural for AARCH64 than most > arch. that the DFP hw support for _Decimal128 on AARCH64 would take > the values in the qN register rather than a pair of registers. Ah, lucky you! Then nevermind. :-) Peter

Re: [PATCH, rs6000] Add testcases for vec_cnttz

2017-07-25 Thread Peter Bergner
" } */ > > With the same results as above. Note, I am running on > perch.aus.stglabs.ibm.com which > is a Power 9 system. Is -m32 not supported on Power 9? -m32 is supported on POWER9, it's only not supported on little endian. Peter

[PATCH] Fix PR middle-end/81564: ICE in group_case_labels_stmt()

2017-07-26 Thread Peter Bergner
hem. This passed bootstrap and regtesting on powerpc64le-linux with no regressions. Ok for trunk? Peter gcc/ PR middle-end/81564 * tree-cfg.c (group_case_labels_stmt): Handle already deleted blocks. gcc/testsuite/ PR middle-end/81564 * gcc.dg/pr81564.c: New test. In

Re: [PATCH] Fix PR middle-end/81564: ICE in group_case_labels_stmt()

2017-07-27 Thread Peter Bergner
On 7/27/17 2:48 AM, Richard Biener wrote: > On Wed, Jul 26, 2017 at 9:35 PM, Peter Bergner wrote: >> The fix here is to just treat case labels that point to blocks that have >> already been deleted similarly to case labels that point to the default >> case statement, by remo

[PATCH 0/2] Force usage of LRA for all rs6000 port compiles.

2017-07-27 Thread Peter Bergner
dependent on that. Peter

[PATCH 1/2] Eliminate -mno-lra from the rs6000 port.

2017-07-27 Thread Peter Bergner
This patch makes the -mlra option a nop while disallowing -mno-lra. It also removes the target bit mask and its usage. Finally, this patch updates the testsuite by removing all usage of the -mlra and -mno-lra options. This passed bootstrap and regtesting with no regressions, ok for trunk? Peter

[PATCH 2/2] Remove reload_in_progress and other cleanups.

2017-07-27 Thread Peter Bergner
This patch removes reload specific code from the rs6000 port made possible by the elimination of the usage of the -mno-lra option. This passed bootstrap and regtesting with no regressions, ok for trunk? Peter * config/rs6000/predicates.md (volatile_mem_operand) Remove code

Re: [PATCH 1/2] Eliminate -mno-lra from the rs6000 port.

2017-07-27 Thread Peter Bergner
On 7/27/17 11:47 AM, Segher Boessenkool wrote: > On Thu, Jul 27, 2017 at 10:43:44AM -0500, Peter Bergner wrote: >> This patch makes the -mlra option a nop while disallowing -mno-lra. >> It also removes the target bit mask and its usage. >> Finally, this patch updates the test

Re: [PATCH 2/2] Remove reload_in_progress and other cleanups.

2017-07-27 Thread Peter Bergner
On 7/27/17 2:29 PM, Segher Boessenkool wrote: > Hi! > > On Thu, Jul 27, 2017 at 10:44:43AM -0500, Peter Bergner wrote: >> This patch removes reload specific code from the rs6000 port made possible >> by the elimination of the usage of the -mno-lra option. > >>

Re: [PATCH] Fix PR middle-end/81564: ICE in group_case_labels_stmt()

2017-07-27 Thread Peter Bergner
On 7/27/17 12:21 PM, Steven Bosscher wrote: > On Wed, Jul 26, 2017 at 9:35 PM, Peter Bergner wrote: >> The test case for PR81564 exposes an issue where the case labels for a >> switch statement point to blocks that have already been removed by an >> earlier call to cleanup

Re: [PATCH, rs6000] Add support to __builtin_cpu_supports() for two new HWCAP2 bits

2017-07-29 Thread Peter Bergner
On 6/27/17 10:51 AM, Segher Boessenkool wrote: > On Mon, Jun 26, 2017 at 10:33:48PM -0500, Peter Bergner wrote: >> Tulio added support for two new AT_HWCAP2 bits to GLIBC which have been >> recently added to the kernel: >> >> https://www.sourceware.org/ml/libc-

[PATCH, rs6000] Fix PR target/72804: Poor code gen with -mvsx-timode

2017-08-14 Thread Peter Bergner
with no regressions and Mike ran this on SPEC2006 and found no performance regressions with it. Ok for trunk? Do we want this on the GCC 7 branch where LRA is on by default? Peter gcc/ * config/rs6000/vsx.md (*vsx_le_permute_): Add support for operands residing in integer

[PATCH, rs6000] Remove TARGET_VSX_TIMODE and -mno-vsx-timode usage

2017-08-14 Thread Peter Bergner
-mlra. This passed bootstrap and regtesting with no regressions. Ok for trunk? Peter gcc/ * config/rs6000/altivec.md (VParity): Use TARGET_VSX. * config/rs6000/rs6000-cpus.def: Remove comment. (ISA_2_7_MASKS_SERVER): Delete OPTION_MASK_VSX_TIMODE; (POWERPC_

Re: [PATCH, rs6000] Fix PR target/72804: Poor code gen with -mvsx-timode

2017-08-16 Thread Peter Bergner
On 8/16/17 5:30 PM, Segher Boessenkool wrote: > On Mon, Aug 14, 2017 at 04:28:25PM -0500, Peter Bergner wrote: >> + mr %0,%L1; mr %L0,%1 > >mr %0,%L1\;mr %L0,%1 So you want the ';' escaped and the space removed? Ok. >> + [(set (match_operand:VSX_TI 0

Re: [PATCH, rs6000] Fix PR target/72804: Poor code gen with -mvsx-timode

2017-08-17 Thread Peter Bergner
On 8/16/17 5:56 PM, Peter Bergner wrote: > On 8/16/17 5:30 PM, Segher Boessenkool wrote: > I'll make the above changes and commit after another quick test cycle. Testing the changes came up clean, so I committed it. Thanks. Peter

Re: [PATCH, rs6000] Remove TARGET_VSX_TIMODE and -mno-vsx-timode usage

2017-08-17 Thread Peter Bergner
simplification. Thanks! Good catch. I doubled checked your suggested changes and agree with all of them. I re-did bootstrap and regtesting of the changes and they came up clean, so I committed it along with the extra simple cleanup to FMOVE128_GPR that we discussed offline. Thanks. Peter

[PATCH, rs6000] Fix PR target/80210: ICE in extract_insn

2017-08-17 Thread Peter Bergner
uming testing passes? Peter gcc/ * config/rs6000/rs6000.c (rs6000_activate_target_options): New function. (rs6000_set_current_function): Rewrite function to use it. gcc/testsuite/ * gcc.target/powerpc/pr80210.c: New test. Index: gcc/config/rs6000/rs6

Re: [PATCH, rs6000] Fix PR target/80210: ICE in extract_insn

2017-08-18 Thread Peter Bergner
On 8/18/17 6:27 PM, Segher Boessenkool wrote: > On Thu, Aug 17, 2017 at 07:02:14PM -0500, Peter Bergner wrote: >> This is also broken in GCC 7, GCC 6 and GCC 5. Ok for those after this >> has been on trunk for a little while and assuming testing passes? > > Okay for t

Re: [PATCH, rs6000] Fix PR target/80210: ICE in extract_insn

2017-08-23 Thread Peter Bergner
On 8/18/17 9:19 PM, Peter Bergner wrote: > On 8/18/17 6:27 PM, Segher Boessenkool wrote: >> On Thu, Aug 17, 2017 at 07:02:14PM -0500, Peter Bergner wrote: >>> This is also broken in GCC 7, GCC 6 and GCC 5. Ok for those after this >>> has been on trunk for a little

Re: RFC: Explicit move preference hints

2017-08-23 Thread Peter Bergner
rt redundant moves which then cannot be removed later). > > "0,r" might work, or "0,?r", or similar (alternatives have commas > between them). Right and alternatives that come first in the string are preferred over alternatives that come later in the string, so in Segher's example above, if both '0' and 'r' (or '?r') constraints are "ok", then '0' is preferred over 'r' (or '?r'). Peter

Re: [PATCH, rs6000] Fix PR target/80210: ICE in extract_insn

2017-09-08 Thread Peter Bergner
both -m32 and -m64), so the first time through rs6000_option_override_internal(), we end up using processor_target_table[cpu_index].target_enable right from the beginning. The following patch fixes the problem I saw on Linux and bootstraps and regtests with no regressions on LE and BE (run

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-08 Thread Peter Bergner
(stmt) && !gimple_clobber_p (stmt)) return false; } return true; } > On Wed, 26 Apr 2017, Peter Bergner wrote: >> One difference from the last patch is that I am no longer setting >> default_label to NULL when we emit a decision tree. I noticed that &

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-08 Thread Peter Bergner
On 05/08/2017 12:44 PM, Richard Biener wrote: On Wed, 26 Apr 2017, Peter Bergner wrote: One difference from the last patch is that I am no longer setting default_label to NULL when we emit a decision tree. I noticed that the decision tree code seemed to generate slightly better code for some

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-08 Thread Peter Bergner
On 05/08/2017 01:20 PM, Peter Bergner wrote: > That is what the previous patch did, but as I mention above, > we generate slightly better code for some test cases (other > tests seemed to generate the same code) if we don't attempt > to handle the decision tree case. I'll

[PATCH, v4] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-09 Thread Peter Bergner
revisit this later if someone finds a test case that would benefit from handling it for decision trees too. This passes bootstrap and regtesting on powerpc64le-linux and x86_64-linux with no regressions. Ok for trunk now? Peter gcc/ * tree-cfg.c (gimple_seq_unreachable_p): New function

Re: [PATCH, v4] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-05-11 Thread Peter Bergner
On 5/11/17 3:49 PM, H.J. Lu wrote: > This caused: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80714 This is already being tracked in https://gcc.gnu.org/PR80707 Peter

[PATCH] Fix PR middle-end/80707, ICE: r247844 causes error: extra outgoing edge

2017-05-12 Thread Peter Bergner
bootstrap issues they ran into. Is this ok for trunk? Peter gcc/ PR middle-end/80707 * tree-cfg.c: Remove cfg edges of unreachable case statements. gcc/testsuite/ * g++.dg/pr80707.C: New test. Index: gcc/tree-cfg.c

Re: [PATCH] Fix PR middle-end/80707, ICE: r247844 causes error: extra outgoing edge

2017-05-12 Thread Peter Bergner
On 5/12/17 11:51 AM, Richard Biener wrote: > On May 12, 2017 6:46:29 PM GMT+02:00, Peter Bergner > wrote:>> gcc/ >> PR middle-end/80707 >> * tree-cfg.c: Remove cfg edges of unreachable case statements. >> >> gcc/testsuite/ >> * g++.dg

[PATCH] Fix PR middle-end/80775, -O3 produces ice in group_case_labels_stmt

2017-05-16 Thread Peter Bergner
point to unreachable blocks. This bootstrapped and regtested with no regressions on both powerpc64le-linux and x86_64-linux. Is this ok for trunk? Peter gcc/ PR middle-end/80775 * tree-cfg.c: Move deletion of unreachable case statements to after the merging of consecutive

Re: [PATCH] Fix PR middle-end/80775, -O3 produces ice in group_case_labels_stmt

2017-05-17 Thread Peter Bergner
On 5/17/17 2:21 AM, Richard Biener wrote: > On Tue, 16 May 2017, Peter Bergner wrote: >> This bootstrapped and regtested with no regressions on both powerpc64le-linux >> and x86_64-linux. Is this ok for trunk? > > Ok. Committed as revision 248155. Thanks. Peter

Re: [PATCH] rs6000: Separate shrink-wrapping for FPRs

2017-05-18 Thread Peter Bergner
for many months > now; I'll do one final test on powerpc64le-linux before committing. > > Do we want this before or after SPE is split off? Isn't this a nop on SPE, since SPE's FP values live in GPRs? If so, I would do whatever makes the job of committing the SPE split easier. Peter

[PATCH] Fix PR middle-end/80823, ICE: verify_flow_info failed

2017-05-23 Thread Peter Bergner
strap and regtesting on powerpc64le-linux with no regressions. Is this ok for trunk? Peter gcc/ PR middle-end/80823 * tree-cfg.c (group_case_labels_stmt): Delete increment of "i"; gcc/testsuite/ PR middle-end/80823 * gcc.dg/pr80823.c: New test. Index:

Re: [PATCH] Fix PR middle-end/80823, ICE: verify_flow_info failed

2017-05-24 Thread Peter Bergner
On 5/24/17 2:15 AM, Richard Biener wrote: > On May 23, 2017 7:46:59 PM GMT+02:00, Peter Bergner > wrote: >> gcc/ >> PR middle-end/80823 >> * tree-cfg.c (group_case_labels_stmt): Delete increment of "i"; >> >> gcc/testsuite/ >>

Re: [PATCH, bugfix] builtin expansion of strcmp for rs6000

2017-01-17 Thread Peter Bergner
Is it there and I'm just not seeing it? Peter

[PATCH, rs6000] Fix PR78516, broken spe.md constraints exposed by LRA.

2017-01-18 Thread Peter Bergner
7;m am tracking that down, but that will not make GCC 7. Is this ok for trunk? Peter PR target/78516 * config/rs6000/spe.md (mov_si_e500_subreg0): Fix constraints. Use the evmergelohi instruction. (mov_si_e500_subreg4_2_le): Likewise. (mov_sitf_e500_sub

Re: [PATCH, rs6000] Fix PR78516, broken spe.md constraints exposed by LRA.

2017-01-18 Thread Peter Bergner
On 1/18/17 8:04 PM, Segher Boessenkool wrote: On Wed, Jan 18, 2017 at 02:38:30PM -0600, Peter Bergner wrote: Is this ok for trunk? This looks good, please apply. Thanks, Thanks, committed as revision 244609. Peter

[PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-03-29 Thread Peter Bergner
both 32-bit and 64-bit). Ok for mainline? Ok for the open release branches too? Peter gcc/ PR target/80246 * config/rs6000/dfp.md (dfp_dxex_): Update mode of operand 0. (dfp_diex_): Update mode of operand 1. * doc/extend.texi (dxex, dxexq): Document change to return

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-03-29 Thread Peter Bergner
+/* { dg-final { scan-assembler-not "dctfixq" } } */ > > If there is no "dctfix" there surely is no "dctfixq" either (i.e., your > regexen aren't very tight). Ahh, true. I suppose I could also just look for "drintn" too, since that would catch both drintn. and drintnq., ok with that change? Peter

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-03-30 Thread Peter Bergner
On 3/29/17 6:29 PM, Peter Bergner wrote: > On 3/29/17 5:28 PM, Segher Boessenkool wrote: >>> +/* { dg-skip-if "" { powerpc*-*-darwin* } { "*" } { "" } } */ >>> +/* { dg-skip-if "" { powerpc*-*-*spe* } { "*" } { ""

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-03-30 Thread Peter Bergner
this unless you object. /* { dg-final { scan-assembler-not "drintn\[q\]\." } } */ /* { dg-final { scan-assembler-not "dctfix\[q\]" } } */ /* { dg-final { scan-assembler-not "dcffix\[q\]" } } */ Peter

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-03-30 Thread Peter Bergner
On 3/30/17 12:54 PM, Peter Bergner wrote: > On 3/30/17 12:15 PM, Segher Boessenkool wrote: >>>>> +/* { dg-final { scan-assembler-not "drintn\\." } } */ >>>>> +/* { dg-final { scan-assembler-not "drintnq\\." } } */ >>>>> +/*

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-04-02 Thread Peter Bergner
ion __builtin_dxex requires the -mhard-dfp option What configure options are you using? I would have expected this the dg-require-effective-target to disable this test if you don't have -mhard-dfp. Peter

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-04-03 Thread Peter Bergner
On 4/2/17 1:53 PM, Segher Boessenkool wrote: > On Sun, Apr 02, 2017 at 09:48:36AM -0500, Peter Bergner wrote: >> On 4/2/17 2:29 AM, Andreas Schwab wrote: >>>> +/* { dg-require-effective-target dfp } */ >> [snip] >>> FAIL: gcc.target/powerpc/pr80246.c (test

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-04-03 Thread Peter Bergner
On 4/3/17 9:41 AM, Peter Bergner wrote: > On 4/2/17 1:53 PM, Segher Boessenkool wrote: >> I also have a fix for the dfp-builtin-1.c problem. > > You mean you have a patch to the regex to match both std/stw and ld/lwz? I think we should also add: /* { dg-require-effective-

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-04-03 Thread Peter Bergner
_ok? Seems like we should switch it to using hard_dfp now. Peter Index: dfp-builtin-1.c === --- dfp-builtin-1.c (revision 246648) +++ dfp-builtin-1.c (working copy) @@ -1,5 +1,5 @@ /* { dg-do compile { target { powerpc*-*-li

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-04-03 Thread Peter Bergner
On 4/3/17 11:04 AM, Peter Bergner wrote: > On 4/2/17 1:53 PM, Segher Boessenkool wrote: >> I also have a fix for the dfp-builtin-1.c problem. > > Something like the following maybe? It seems to work for me. > I think the hard_dfp predicate was added after the dfp-builtin-[12].c

Re: [PATCH, rs6000] Fix PR target/80246, DFP builtins using the wrong types

2017-04-03 Thread Peter Bergner
On 4/3/17 12:01 PM, Peter Bergner wrote: > On 4/3/17 11:04 AM, Peter Bergner wrote: >> On 4/2/17 1:53 PM, Segher Boessenkool wrote: >>> I also have a fix for the dfp-builtin-1.c problem. >> >> Something like the following maybe? It seems to work for me. >> I th

[PATCH] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-04-12 Thread Peter Bergner
and regtesting with no regressions on powerpc64-linux and x86_64-linux. Ok for trunk now or trunk during stage1? Peter gcc/ * tree-cfg.c (gimple_unreachable_bb_p): New function. (assert_unreachable_fallthru_edge_p): Use it. * tree-cfg.h: Prototype it. * stmt.c

Re: [PATCH] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-04-13 Thread Peter Bergner
etween a switch statement written with no default case and one where the default case was explicitly shown to be unreachable? Maybe the default_label would be NULL for the unreachable case and non-NULL in the other case? If so, we'd still need my change that doesn't set default_label to fallback_label and instead uses the new var gap_label. Peter

Re: [PATCH] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-04-20 Thread Peter Bergner
xpansion so we can eliminate the range check. Thanks. Peter

[PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-04-26 Thread Peter Bergner
On 4/20/17 8:26 AM, Peter Bergner wrote: > On 4/20/17 2:37 AM, Richard Biener wrote: >> Ok, so I think we should ensure that we remove the regular cases >> with unreachable destination, like in >> >> switch (i) >> { >> case 0: >> __builtin_unrea

Re: [PATCH, v3] Fix PR51513, switch statement with default case containing __builtin_unreachable leads to wild branch

2017-04-27 Thread Peter Bergner
On 4/27/17 6:57 AM, Bernhard Reutner-Fischer wrote: > On Wed, Apr 26, 2017 at 10:39:12PM -0500, Peter Bergner wrote: >> +/* Returns true if the basic block BB has no successors and only contains >> + a call to __builtin_unreachable (). */ > > so > return EDG

Re: [PATCH, rs6000] Fix PR target/80210: ICE in extract_insn

2017-09-12 Thread Peter Bergner
On 9/9/17 3:44 AM, Andreas Schwab wrote: > On Sep 08 2017, Peter Bergner wrote: > >> The following patch fixes the problem I saw on Linux and bootstraps and >> regtests >> with no regressions on LE and BE (running testsuite in both 32-bit and 64-bit >> modes).

[PATCH, rs6000] Follow-on fix for PR target/80210: ICE in extract_insn

2017-09-28 Thread Peter Bergner
in that we are not correctly saving and restoring the optab values. The problem here is that rs6000_pragma_target_parse () did not call rs6000_activate_target_options () which ends up resetting the optabs values associated with the rs6000_isa_flags value. This passed bootstrap and regtesting o

Re: [PATCH, rs6000] Follow-on fix for PR target/80210: ICE in extract_insn

2017-10-02 Thread Peter Bergner
ad that already :-) ) Done. > Looks great to me, please commit. But hold off until Monday please, it > will interfere with testing otherwise. Ok, committed now (Monday). I'd also like to back port this to the GCC 7 and 6 release branches, where the earlier fix was also back ported to. Ok there after a week or so of burn in on trunk? Thanks. Peter

Re: [PATCH][PR target/79170] fix memcmp builtin expansion sequence for rs6000 target.

2017-01-30 Thread Peter Bergner
Nicer still, we want the base address as the RA operand and the offset as the RB operand, so like so: li 9,7 lwbrx 10,4,9 lwbrx 9,5,9 On some processors, it matters performance wise. Peter

Re: PR79697: Delete calls to strdup, strndup, realloc if there is no lhs

2017-02-28 Thread Peter Bergner
arked as const/pure since we know they have no side effects other than their return value? Peter

Re: PR79697: Delete calls to strdup, strndup, realloc if there is no lhs

2017-02-28 Thread Peter Bergner
On 2/28/17 12:49 PM, Peter Bergner wrote: > On 2/25/17 2:40 AM, Prathamesh Kulkarni wrote: >> The attached patch deletes calls to strdup, strndup if it's >> return-value is unused, >> and same for realloc if the first arg is NULL. > > Why limit ourselves to strd

[PATCH, rs6000][GCC6] Fix PR78543, ICE in push_reload on powerpc64le-linux-gnu

2017-03-06 Thread Peter Bergner
our ICE. The following patch passes bootstrap and regtesting on powerpc64le-linux. Ok for the GCC 6 branch? We don't hit this on trunk, because we're using LRA there, so I'm not sure whether we want to add this there this late in the release cycle. Peter gcc/ PR target

Re: [RFA][PATCH][tree-optimization/64058] Add new coalescing tie breaker heuristic V2

2016-03-29 Thread Peter Bergner
merges. */ s/make sit/makes it/ Peter

Re: [PATCH, LRA] Fix PR rtl-optimization 77289, LRA matching constraint problem

2016-09-09 Thread Peter Bergner
On 9/9/16 5:51 PM, Jeff Law wrote: On 08/30/2016 10:23 PM, Peter Bergner wrote: gcc/ PR rtl-optimization/77289 * lra-constraints.c (get_final_hard_regno): Add support for non hard register numbers. Remove support for subregs. (get_hard_regno): Use SUBREG_P. Don't

Re: [PATCH, LRA] Fix PR rtl-optimization 77289, LRA matching constraint problem

2016-09-11 Thread Peter Bergner
does pass. Peter

Re: [PATCH 1/3] Put a TARGET_LRA_P into every target

2016-09-13 Thread Peter Bergner
ing missed even if we have it documented. We don't want new ports to find out they need to enable LRA during their patch submission, since that entails a huge amount of retesting. It should be LRA from day 1 for them. Peter

Re: [PATCH 1/3] Put a TARGET_LRA_P into every target

2016-09-14 Thread Peter Bergner
patch for the doc update (I hope the wording is strong enough). Maybe s/New ports should use LRA/New ports must use LRA/ ? + New ports should use LRA, and existing ports are encouraged to convert. ^^ extra space Peter

[PATCH, wwwdocs] Add link to GCC 7 changes.html

2016-10-25 Thread Peter Bergner
Now that we have a GCC 7 changes.html file, shouldn't we make it easy to find? Peter Index: index.html === RCS file: /cvs/gcc/wwwdocs/htdocs/index.html,v retrieving revision 1.1027 diff -u -r1.1027 index.html --- index.html 3

Re: [PATCH, wwwdocs] Add link to GCC 7 changes.html

2016-10-25 Thread Peter Bergner
On 10/25/16 12:17 PM, Gerald Pfeifer wrote: > On Tue, 25 Oct 2016, Peter Bergner wrote: >> Now that we have a GCC 7 changes.html file, shouldn't we make it >> easy to find? > > Good point, thanks. > > Perhaps add a disclaimer at the top of changes.html that thi

Re: [PATCH, wwwdocs] Add link to GCC 7 changes.html

2016-10-26 Thread Peter Bergner
On 10/25/16 12:50 PM, Peter Bergner wrote: > On 10/25/16 12:17 PM, Gerald Pfeifer wrote: >> Perhaps add a disclaimer at the top of changes.html that this >> is still work in progress as part of that commit? > > Do you mean like the following? If so, we'd have to rem

Re: [PATCH, wwwdocs] Add link to GCC 7 changes.html

2016-10-26 Thread Peter Bergner
On 10/26/16 1:10 PM, Gerald Pfeifer wrote: On Tue, 25 Oct 2016, Peter Bergner wrote: Perhaps add a disclaimer at the top of changes.html that this is still work in progress as part of that commit? Do you mean like the following? If so, we'd have to remember to remove the last hunk when

[PATCH, rs6000] Fix PR target/71698, ICE in reload copying TDmode values to GPR regs

2016-06-30 Thread Peter Bergner
irect moves for TDmode values. This passed bootstrap and regtesting with no regressions. Ok for trunk? This is also broken on the FSF 6 branch, so is this ok there too after bootstrap and regtesting there? Peter gcc/ PR target/71698 * config/rs6000/rs6

Re: [PATCH, rs6000] Fix PR target/71698, ICE in reload copying TDmode values to GPR regs

2016-07-01 Thread Peter Bergner
On 6/30/16 6:21 PM, Segher Boessenkool wrote: On Thu, Jun 30, 2016 at 05:55:04PM -0500, Peter Bergner wrote: We currently don't allow TDmode values to use direct moves, since they live in register pairs and the most significant word is always in the even-numbered register which does not

Re: [PATCH, rs6000] Fix PR target 71656, reload ICE when -mcpu=power9 -mpower9-dform-vector

2016-07-01 Thread Peter Bergner
On 6/27/16 8:30 PM, Peter Bergner wrote: On 6/27/16 3:21 PM, Segher Boessenkool wrote: On Sat, Jun 25, 2016 at 07:14:01PM -0500, Peter Bergner wrote: Okay for trunk, okay for 6 later. One comment: + if (VECTOR_MODE_P (mode) + && !mode_supports_vsx_dform_quad (mode)) +retu

[PATCH, rs6000] Fix PR target/71733, ICE with -mcpu=power9 -mno-vsx

2016-07-05 Thread Peter Bergner
regtested with no regessions. Ok for trunk? This also affects the FSF 6 branch, ok there too, assuming bootstrap and regtesting complete cleanly? Peter gcc/ * config/rs6000/rs6000.c (rs6000_option_override_internal): Disable -mpower9-dform-vector when disabling -mpower9-vector. gcc

Re: [PATCH, rs6000] Fix PR target/71733, ICE with -mcpu=power9 -mno-vsx

2016-07-06 Thread Peter Bergner
On 7/6/16 12:53 PM, David Edelsohn wrote: On Tue, Jul 5, 2016 at 10:26 PM, Peter Bergner wrote: The following patch fixes a bug where we do not disable POWER9 vector dform addressing when we compile for POWER9 but without VSX support. This manifested itself with us trying to use dform

Re: [PATCH, rs6000] Fix PR target/71733, ICE with -mcpu=power9 -mno-vsx

2016-07-06 Thread Peter Bergner
On 7/6/16 2:19 PM, Michael Meissner wrote: On Tue, Jul 05, 2016 at 09:26:50PM -0500, Peter Bergner wrote: - rs6000_isa_flags &= ~OPTION_MASK_P9_VECTOR; + rs6000_isa_flags &= ~(OPTION_MASK_P9_VECTOR + | OPTION_MASK_P9_DFORM_VECTOR); } Note, thi

Re: [PATCH, rs6000] Fix PR target/71733, ICE with -mcpu=power9 -mno-vsx

2016-07-09 Thread Peter Bergner
On 7/6/16 6:29 PM, Michael Meissner wrote: On Wed, Jul 06, 2016 at 05:01:38PM -0500, Peter Bergner wrote: I had thought about adding the dform scalar flag, but it was already correctly disabled and I wasn't sure whether we could have the p9 dform scalar without the vector part. Probabl

Re: [PATCH, rs6000] Fix PR target/71733, ICE with -mcpu=power9 -mno-vsx

2016-07-09 Thread Peter Bergner
On 7/6/16 12:53 PM, David Edelsohn wrote: > On Tue, Jul 5, 2016 at 10:26 PM, Peter Bergner wrote: >> The following patch fixes a bug where we do not disable POWER9 vector dform >> addressing when we compile for POWER9 but without VSX support. This >> manifested >> i

Re: [PATCH, rs6000] Fix PR target/71733, ICE with -mcpu=power9 -mno-vsx

2016-07-20 Thread Peter Bergner
en they're not legal for these patterns. As I said in my previous note, I wasn't able to actually generate the altivec pattern (I haven't tried the vsx reg+reg patterns), but if we could, I assume we'll still have the same issue, will we not? Peter

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