Re: [PATCH PR41488]Recognize more induction variables by simplifying PEELED chrec in scalar evolution

2013-12-12 Thread Bin.Cheng
On Thu, Dec 12, 2013 at 1:55 PM, bin.cheng wrote: > > >> -Original Message- >> From: Richard Biener [mailto:richard.guent...@gmail.com] >> Sent: Wednesday, December 11, 2013 6:04 PM >> To: Jakub Jelinek >> Cc: Bin.Cheng; Jeff Law; Bin Cheng; gcc-patches

Re: [Ping]Two pending IVOPT patches

2014-01-11 Thread Bin.Cheng
On Sat, Jan 11, 2014 at 2:42 PM, Bin.Cheng wrote: > On Wed, Dec 11, 2013 at 4:18 AM, Jeff Law wrote: >> On 12/10/13 00:01, bin.cheng wrote: >>> >>> Emm, some kind of. See the cost of iv candidate set consists of several >>> parts, the representation cost in c

Re: [Ping]Two pending IVOPT patches

2014-01-11 Thread Bin.Cheng
On Sat, Jan 11, 2014 at 5:07 PM, Jakub Jelinek wrote: > On Sat, Jan 11, 2014 at 05:02:26PM +0800, Bin.Cheng wrote: >> > I reduced the case and attached ivopt dumps with/without the patch. >> > It seems the patch is doing right thing and choosing better >> > candida

Re: [Ping]Two pending IVOPT patches

2014-01-12 Thread Bin.Cheng
On Mon, Jan 13, 2014 at 2:29 PM, Jeff Law wrote: > On 01/11/14 02:21, Bin.Cheng wrote: >> >> On Sat, Jan 11, 2014 at 5:07 PM, Jakub Jelinek wrote: >>> >>> On Sat, Jan 11, 2014 at 05:02:26PM +0800, Bin.Cheng wrote: >>>>> >>>>> I r

Re: [PATCH AArch64]Handle wrong cost for addition of minus immediate in aarch64_rtx_costs.

2015-07-15 Thread Bin.Cheng
Ping^2 On Thu, Jul 9, 2015 at 5:42 PM, Bin.Cheng wrote: > Ping. > > On Fri, Jun 26, 2015 at 4:47 PM, Bin Cheng wrote: >> Hi, >> The canonical form of subtract of immediate is (add op0 minus_imm), which is >> supported with addsi3_aarch64 pattern on aarch64. Unf

Re: [PATCH PR66388]Compute use with cand of smaller precision by further exercising scev overflow info.

2015-07-24 Thread Bin.Cheng
On Thu, Jul 23, 2015 at 10:06 PM, Richard Biener wrote: > On Fri, Jul 17, 2015 at 8:27 AM, Bin Cheng wrote: >> Hi, >> This patch is to fix PR66388. It's an old issue but recently became worse >> after my scev overflow change. IVOPT now can only compute iv use with >> candidate which has at leas

Re: [PATCH PR66388]Compute use with cand of smaller precision by further exercising scev overflow info.

2015-07-24 Thread Bin.Cheng
On Fri, Jul 24, 2015 at 7:23 PM, Richard Biener wrote: > On Fri, Jul 24, 2015 at 1:09 PM, Bin.Cheng wrote: >> On Thu, Jul 23, 2015 at 10:06 PM, Richard Biener >> wrote: >>> On Fri, Jul 17, 2015 at 8:27 AM, Bin Cheng wrote: >>>> Hi, >>>> This

Re: [PATCH] Optimize certain end of loop conditions into min/max operation

2015-07-26 Thread Bin.Cheng
On Mon, Jul 27, 2015 at 11:41 AM, Michael Collison wrote: > This patch is designed to optimize end of loop conditions involving of the > form > i < x && i < y into i < min (x, y). Loop condition involving '>' are > handled similarly using max(x,y). > As an example: > > #define N 1024 > > int a[N

Re: [PATCH] Optimize certain end of loop conditions into min/max operation

2015-07-26 Thread Bin.Cheng
On Mon, Jul 27, 2015 at 12:23 PM, Bin.Cheng wrote: > On Mon, Jul 27, 2015 at 11:41 AM, Michael Collison > wrote: >> This patch is designed to optimize end of loop conditions involving of the >> form >> i < x && i < y into i < min (x, y). Loop conditi

Re: [Patch,optimization]: Optimized changes in the estimate register pressure cost.

2015-09-26 Thread Bin.Cheng
On Sat, Sep 26, 2015 at 12:51 PM, Ajit Kumar Agarwal wrote: > I have made the following changes in the estimate_reg_pressure_cost function > used > by the loop invariant and IVOPTS. > > Earlier the estimate_reg_pressure cost uses the cost of n_new variables that > are generated by the Loop Invar

Re: [Patch,optimization]: Optimized changes in the estimate register pressure cost.

2015-09-27 Thread Bin.Cheng
On Sun, Sep 27, 2015 at 11:13 PM, Ajit Kumar Agarwal wrote: > > > -Original Message- > From: Segher Boessenkool [mailto:seg...@kernel.crashing.org] > Sent: Sunday, September 27, 2015 7:49 PM > To: Ajit Kumar Agarwal > Cc: GCC Patches; Vinod Kathail; Shail Aditya Gupta; Vidhumouli Hunsigida

Re: [Patch,optimization]: Optimized changes in the estimate register pressure cost.

2015-09-28 Thread Bin.Cheng
On Tue, Sep 29, 2015 at 2:25 AM, Aaron Sawdey wrote: > On Sat, 2015-09-26 at 04:51 +, Ajit Kumar Agarwal wrote: >> I have made the following changes in the estimate_reg_pressure_cost function >> used >> by the loop invariant and IVOPTS. >> >> Earlier the estimate_reg_pressure cost uses the co

Re: [PATCH GCC]Improve rtl loop inv cost by checking if the inv can be propagated to address uses

2015-09-29 Thread Bin.Cheng
On Tue, Sep 29, 2015 at 1:21 AM, Jeff Law wrote: > On 09/28/2015 05:28 AM, Bernd Schmidt wrote: >> >> On 09/28/2015 11:43 AM, Bin Cheng wrote: >>> >>> Bootstrap and test on x86_64 and x86_32. Will test it on aarch64. So >>> any >>> comments? >>> >>> Thanks, >>> bin >>> >>> 2015-09-28 Bin Cheng

Re: [RFC, Patch]: Optimized changes in the register used inside loop for LICM and IVOPTS.

2015-10-07 Thread Bin.Cheng
On Thu, Oct 8, 2015 at 12:32 PM, Ajit Kumar Agarwal wrote: > Following Proposed: > > Changes are done in the Loop Invariant(LICM) at RTL level and also the > Induction variable optimization based on SSA representation. > The current logic used in LICM for register used inside the loops is changed

Re: [PATCH 9/9] Fix PR 66768

2015-10-07 Thread Bin.Cheng
On Thu, Oct 8, 2015 at 12:59 PM, Richard Henderson wrote: > This is the patch that richi includes in the PR. There will need to > be an additional patch to solve an ICE for the AVR backend, as noted > in the PR, but this is good enough to solve the bad-code generation > problem for the i386 backe

Re: [PATCH 9/9] Fix PR 66768

2015-10-08 Thread Bin.Cheng
On Thu, Oct 8, 2015 at 5:55 PM, Bernd Schmidt wrote: > On 10/08/2015 07:17 AM, Bin.Cheng wrote: >> >> On Thu, Oct 8, 2015 at 12:59 PM, Richard Henderson wrote: >>> >>> This is the patch that richi includes in the PR. There will need to >>> be an ad

Re: [RFC, Patch]: Optimized changes in the register used inside loop for LICM and IVOPTS.

2015-10-08 Thread Bin.Cheng
On Thu, Oct 8, 2015 at 1:53 PM, Ajit Kumar Agarwal wrote: > > > -Original Message- > From: Bin.Cheng [mailto:amker.ch...@gmail.com] > Sent: Thursday, October 08, 2015 10:29 AM > To: Ajit Kumar Agarwal > Cc: GCC Patches; Vinod Kathail; Shail Aditya Gupta; Vidhumouli H

Re: [PATCH GCC]Improve rtl loop inv cost by checking if the inv can be propagated to address uses

2015-10-09 Thread Bin.Cheng
On Wed, Sep 30, 2015 at 11:33 AM, Bin.Cheng wrote: > On Tue, Sep 29, 2015 at 1:21 AM, Jeff Law wrote: >> On 09/28/2015 05:28 AM, Bernd Schmidt wrote: >>> >>> On 09/28/2015 11:43 AM, Bin Cheng wrote: >>>> >>>> Bootstrap and test on x86_64

Re: [Patch,optimization]: Optimized changes in the estimate register pressure cost.

2015-10-16 Thread Bin.Cheng
On Wed, Sep 30, 2015 at 12:00 AM, Pat Haugen wrote: > On 09/25/2015 11:51 PM, Ajit Kumar Agarwal wrote: >> >> I have made the following changes in the estimate_reg_pressure_cost >> function used >> by the loop invariant and IVOPTS. >> >> Earlier the estimate_reg_pressure cost uses the cost of n_ne

Re: [PATCH GCC]Improve rtl loop inv cost by checking if the inv can be propagated to address uses

2015-10-20 Thread Bin.Cheng
On Fri, Oct 9, 2015 at 8:04 PM, Bernd Schmidt wrote: > On 10/09/2015 02:00 PM, Bin.Cheng wrote: >> >> I further bootstrap and test attached patch on aarch64. Also three >> cases in spec2k6/fp are improved by 3~6%, two cases in spec2k6/fp are >> regressed by ~2%. O

Re: [PATCH PR67921]Use sizetype for CHREC_RIGHT when building pointer type CHREC

2015-10-21 Thread Bin.Cheng
On Wed, Oct 21, 2015 at 5:15 PM, Richard Biener wrote: > On Wed, Oct 21, 2015 at 6:46 AM, Bin Cheng wrote: >> Hi, >> As analyzed in PR67921, I think the issue is caused by fold_binary_loc which >> folds: >> 4 - (sizetype) &c - (sizetype) ((int *) p1_8(D) + ((sizetype) a_23 * 24 + >> 4)) >> into

Re: [PATCH GCC]Improve rtl loop inv cost by checking if the inv can be propagated to address uses

2015-10-25 Thread Bin.Cheng
On Wed, Oct 21, 2015 at 11:55 AM, Bin.Cheng wrote: > On Fri, Oct 9, 2015 at 8:04 PM, Bernd Schmidt wrote: >> On 10/09/2015 02:00 PM, Bin.Cheng wrote: >>> >>> I further bootstrap and test attached patch on aarch64. Also three >>> cases in spec2k6/fp are impro

Re: [PATCH PR52272]Be smart when adding iv candidates

2015-11-07 Thread Bin.Cheng
On Fri, Nov 6, 2015 at 9:24 PM, Richard Biener wrote: > On Wed, Nov 4, 2015 at 11:18 AM, Bin Cheng wrote: >> Hi, >> PR52272 reported a performance regression in spec2006/410.bwaves once GCC is >> prevented from representing address of one memory object using address of >> another memory object.

Re: [PATCH PR52272]Be smart when adding iv candidates

2015-11-09 Thread Bin.Cheng
On Mon, Nov 9, 2015 at 11:24 PM, Bernd Schmidt wrote: > On 11/08/2015 10:11 AM, Richard Biener wrote: >> >> On November 8, 2015 3:58:57 AM GMT+01:00, "Bin.Cheng" >> wrote: >>>> >>>> +inline bool >>&

Re: [PATCH PR52272]Be smart when adding iv candidates

2015-11-10 Thread Bin.Cheng
On Tue, Nov 10, 2015 at 9:26 AM, Bin.Cheng wrote: > On Mon, Nov 9, 2015 at 11:24 PM, Bernd Schmidt wrote: >> On 11/08/2015 10:11 AM, Richard Biener wrote: >>> >>> On November 8, 2015 3:58:57 AM GMT+01:00, "Bin.Cheng" >>> wrote: >>>>>

Re: [PATCH PR52272]Be smart when adding iv candidates

2015-11-10 Thread Bin.Cheng
On Tue, Nov 10, 2015 at 6:06 PM, Bernd Schmidt wrote: > On 11/10/2015 09:25 AM, Bin.Cheng wrote: >>> >>> Thanks for reviewing. I haven't committed it yet, could you please >>> point out which quoted piece is so that I can update patch? > >

Re: [RFC, Patch]: Optimized changes in the register used inside loop for LICM and IVOPTS.

2015-11-12 Thread Bin.Cheng
On Fri, Nov 13, 2015 at 2:13 PM, Jeff Law wrote: > On 10/07/2015 10:32 PM, Ajit Kumar Agarwal wrote: > >> >> 0001-RFC-Patch-Optimized-changes-in-the-register-used-ins.patch >> >> >> From f164fd80953f3cffd96a492c8424c83290cd43cc Mon Sep 17 00:00:00 2001 >> From: Ajit Kumar Agarwal >> Date: Wed, 7

Re: [RFC, Patch]: Optimized changes in the register used inside loop for LICM and IVOPTS.

2015-11-16 Thread Bin.Cheng
On Tue, Nov 17, 2015 at 1:56 AM, Ajit Kumar Agarwal wrote: > > Sorry I missed out some of the points in earlier mail which is given below. > > -Original Message- > From: Ajit Kumar Agarwal > Sent: Monday, November 16, 2015 11:07 PM > To: 'Jeff Law'; GCC Patches > Cc: Vinod Kathail; Shail A

Re: [PATCH AArch64]Handle REG+REG+CONST and REG+NON_REG+CONST in legitimize address

2015-11-18 Thread Bin.Cheng
On Tue, Nov 17, 2015 at 6:08 PM, James Greenhalgh wrote: > On Tue, Nov 17, 2015 at 05:21:01PM +0800, Bin Cheng wrote: >> Hi, >> GIMPLE IVO needs to call backend interface to calculate costs for addr >> expressions like below: >>FORM1: "r73 + r74 + 16380" >>FORM2: "r73 << 2 + r74 + 16380" >

Re: [PATCH AArch64]Handle REG+REG+CONST and REG+NON_REG+CONST in legitimize address

2015-11-20 Thread Bin.Cheng
On Thu, Nov 19, 2015 at 10:32 AM, Bin.Cheng wrote: > On Tue, Nov 17, 2015 at 6:08 PM, James Greenhalgh > wrote: >> On Tue, Nov 17, 2015 at 05:21:01PM +0800, Bin Cheng wrote: >>> Hi, >>> GIMPLE IVO needs to call backend interface to calculate costs for a

Re: [PATCH PR52272]Be smart when adding iv candidates

2015-11-20 Thread Bin.Cheng
On Wed, Nov 18, 2015 at 11:50 PM, Bernd Schmidt wrote: > On 11/10/2015 11:19 AM, Bin.Cheng wrote: >> >> On Tue, Nov 10, 2015 at 6:06 PM, Bernd Schmidt >> wrote: >>> >>> >>> Multi-line expressions should be wrapped in parentheses so that >>

Re: [PATCH AArch64]Handle REG+REG+CONST and REG+NON_REG+CONST in legitimize address

2015-11-23 Thread Bin.Cheng
On Sat, Nov 21, 2015 at 1:39 AM, Richard Earnshaw wrote: > On 20/11/15 08:31, Bin.Cheng wrote: >> On Thu, Nov 19, 2015 at 10:32 AM, Bin.Cheng wrote: >>> On Tue, Nov 17, 2015 at 6:08 PM, James Greenhalgh >>> wrote: >>>> On Tue, Nov 17, 2015 at 05:2

Re: [PATCH AArch64]Handle REG+REG+CONST and REG+NON_REG+CONST in legitimize address

2015-11-24 Thread Bin.Cheng
On Tue, Nov 24, 2015 at 5:56 PM, Richard Earnshaw wrote: > On 24/11/15 02:51, Bin.Cheng wrote: >>>> The aarch64's problem is we don't define addptr3 pattern, and we don't >>>> >> have direct insn pattern describing the "x + y << z"

Re: [PATCH 7/N] Fix newly introduced memory leak in tree-ssa-loop-ivopts.c

2015-11-26 Thread Bin.Cheng
On Fri, Nov 27, 2015 at 5:08 AM, Martin Liška wrote: > Hi. > > There's one more patch that fixes really of lot memory leaks related to loop > ivopts. > The regression was introduced by r230647. > > Patch was tested in the series with the rest and the compiler bootstraps > successfully. > > Ready f

Re: [PATCH 7/N] Fix newly introduced memory leak in tree-ssa-loop-ivopts.c

2015-11-27 Thread Bin.Cheng
On Fri, Nov 27, 2015 at 4:29 PM, Martin Liška wrote: > On 11/27/2015 04:54 AM, Bin.Cheng wrote: >> On Fri, Nov 27, 2015 at 5:08 AM, Martin Liška wrote: >>> Hi. >>> >>> There's one more patch that fixes really of lot memory leaks related to loop >>

Re: [PATCH PR68529]Fix not recognized scev by computing no-overflow info for loop with NE_EXPR exit condition

2015-11-27 Thread Bin.Cheng
On Fri, Nov 27, 2015 at 8:51 PM, Richard Biener wrote: > On Fri, Nov 27, 2015 at 12:44 PM, Bin Cheng wrote: >> Hi, >> This patch is to fix PR68529. In my previous scev/niter overflow patches, I >> only computed no-overflow information for control iv in simple loops with >> LT_EXPR as exit condit

Re: [PATCH AArch64]Handle REG+REG+CONST and REG+NON_REG+CONST in legitimize address

2015-11-30 Thread Bin.Cheng
On Tue, Nov 24, 2015 at 6:18 PM, Richard Earnshaw wrote: > On 24/11/15 09:56, Richard Earnshaw wrote: >> On 24/11/15 02:51, Bin.Cheng wrote: >>>>> The aarch64's problem is we don't define addptr3 pattern, and we don't >>>>>>> have di

Re: [PATCH] Fix vector rsqrt discovery (PR tree-optimization/68501)

2015-11-30 Thread Bin.Cheng
On Sat, Nov 28, 2015 at 3:40 AM, Jakub Jelinek wrote: > Hi! > > The recent changes where vector sqrt is represented in the IL using > IFN_SQRT instead of target specific builtins broke the discovery > of vector rsqrt, as targetm.builtin_reciprocal is called only > on builtin functions (not interna

Re: [PATCH AArch64]Handle REG+REG+CONST and REG+NON_REG+CONST in legitimize address

2015-12-02 Thread Bin.Cheng
On Tue, Dec 1, 2015 at 6:25 PM, Richard Earnshaw wrote: > On 01/12/15 03:19, Bin.Cheng wrote: >> On Tue, Nov 24, 2015 at 6:18 PM, Richard Earnshaw >> wrote: >>> On 24/11/15 09:56, Richard Earnshaw wrote: >>>> On 24/11/15 02:51, Bin.Cheng wrote: >>>

Re: [PATCH AArch64]Handle REG+REG+CONST and REG+NON_REG+CONST in legitimize address

2015-12-03 Thread Bin.Cheng
On Thu, Dec 3, 2015 at 6:26 PM, Richard Earnshaw wrote: > On 03/12/15 05:26, Bin.Cheng wrote: >> On Tue, Dec 1, 2015 at 6:25 PM, Richard Earnshaw >> wrote: >>> On 01/12/15 03:19, Bin.Cheng wrote: >>>> On Tue, Nov 24, 2015 at 6:18 PM, Richard Earnshaw >>&

[PATCH PR93674]Avoid introducing IV of enumeral type in case of -fstrict-enums

2020-03-02 Thread bin.cheng
Hi, This is a simple fix for PR93674. It adds cand carefully for enumeral type iv_use in case of -fstrict-enums, it also avoids computing, replacing iv_use with the candidate so that no IV of enumeral type is introduced with -fstrict-enums option. Testcase is also added. Bootstrap and test on

Fwd: [PATCH PR93674]Avoid introducing IV of enumeral type in case of -fstrict-enums

2020-03-09 Thread Bin.Cheng
Forwarding to public list. -- Forwarded message - From: Bin.Cheng Date: Mon, Mar 9, 2020 at 5:07 PM Subject: Re: [PATCH PR93674]Avoid introducing IV of enumeral type in case of -fstrict-enums To: Richard Biener On Tue, Mar 3, 2020 at 5:36 PM Richard Biener wrote: > >

Re: [PING PATCH coroutines] Do not strip cleanup_point when promote temporaries out of current stmt

2020-03-10 Thread Bin.Cheng
On Thu, Mar 5, 2020 at 10:18 PM Iain Sandoe wrote: > > Hello JunMa, > > JunMa wrote: > > > Ping > > Once again, sorry for taking time to review this. > > > 在 2020/2/27 上午10:18, JunMa 写道: > >> 在 2020/2/11 上午10:14, JunMa 写道: > >> Kindly ping > >> > >> Regards > >> JunMa > >>> Hi > >>> In maybe_prom

Re: [PATCH] Improve debug info in ivopts optimized loops (PR debug/90231)

2019-10-21 Thread Bin.Cheng
On Sat, Oct 19, 2019 at 2:27 PM Jakub Jelinek wrote: > > Hi! > > As mentioned in the PR, the following patch attempts to address two issues. > In remove_unused_ivs we first find the best iv_cand (we prefer primarily the > same step, next same mode and lastly constant base) and only then call > get

Re: Richard Sandiford appointed Global Reviewer

2018-08-21 Thread Bin.Cheng
On Tue, Aug 21, 2018 at 9:59 PM Richard Sandiford wrote: > > David Edelsohn writes: > > I am pleased to announce that the GCC Steering Committee has > > appointed Richard Sandiford as a Global Reviewer. > > > > Please join me in congratulating Richard on his new role. > > Richard, ple

Re: [PATCH AArch64]Fix test failure for pr84682-2.c

2018-08-29 Thread Bin.Cheng
On Thu, Aug 30, 2018 at 2:47 AM Richard Sandiford wrote: > > Joey Ye writes: > > diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c > > index 07c55b1..9e965ab 100644 > > --- a/gcc/config/aarch64/aarch64.c > > +++ b/gcc/config/aarch64/aarch64.c > > @@ -5674,9 +5674,6 @@ aarch

Re: [PATCH GCC][5/5]Enable tree loop distribution at -O3 and above optimization levels.

2017-06-07 Thread Bin.Cheng
On Tue, Jun 6, 2017 at 6:47 PM, Jeff Law wrote: > On 06/02/2017 05:52 AM, Bin Cheng wrote: >> Hi, >> This patch enables -ftree-loop-distribution by default at -O3 and above >> optimization levels. >> Bootstrap and test at O2/O3 on x86_64 and AArch64. is it OK? >> >> Note I don't have strong opin

Re: [PATCH GCC][5/5]Enable tree loop distribution at -O3 and above optimization levels.

2017-06-07 Thread Bin.Cheng
On Wed, Jun 7, 2017 at 9:33 AM, Richard Biener wrote: > On Wed, Jun 7, 2017 at 10:07 AM, Bin.Cheng wrote: >> On Tue, Jun 6, 2017 at 6:47 PM, Jeff Law wrote: >>> On 06/02/2017 05:52 AM, Bin Cheng wrote: >>>> Hi, >>>> This patch enables -ftree-loo

Re: [PATCH GCC][4/5]Improve loop distribution to handle hmmer

2017-06-07 Thread Bin.Cheng
On Wed, Jun 7, 2017 at 11:03 AM, Richard Biener wrote: > On Fri, Jun 2, 2017 at 1:51 PM, Bin Cheng wrote: >> Hi, >> This is the main patch of the change. It improves loop distribution by >> versioning loop under >> runtime alias check conditions, as well as better partition fusion. As >> desc

Re: [PATCH GCC8][29/33]New register pressure estimation

2017-06-07 Thread Bin.Cheng
On Wed, May 17, 2017 at 1:24 PM, Richard Biener wrote: > On Mon, May 15, 2017 at 5:50 PM, Bin.Cheng wrote: >> On Thu, May 11, 2017 at 11:39 AM, Richard Biener >> wrote: >>> On Tue, Apr 18, 2017 at 12:53 PM, Bin Cheng wrote: >>>> Hi, >>>> Cu

Re: [PATCH GCC8][30/33]Fold more type conversion into binary arithmetic operations

2017-06-07 Thread Bin.Cheng
On Wed, May 17, 2017 at 1:27 PM, Richard Biener wrote: > On Mon, May 15, 2017 at 5:56 PM, Bin.Cheng wrote: >> On Thu, May 11, 2017 at 11:54 AM, Richard Biener >> wrote: >>> On Tue, Apr 18, 2017 at 12:53 PM, Bin Cheng wrote: >>>> Hi, >>>> Simplifi

Re: [PATCH GCC8][32/33]Save niter check for vect peeling if loop versioning is required

2017-06-07 Thread Bin.Cheng
On Thu, May 11, 2017 at 12:06 PM, Richard Biener wrote: > On Tue, Apr 18, 2017 at 12:54 PM, Bin Cheng wrote: >> Hi, >> When loop versioning is required in vectorization, we can merge niter check >> for vect >> peeling with the check for loop versioning, thus save one check/branch for >> vectori

Re: [PATCH GCC8][31/33]Set range information for niter bound of vectorized loop

2017-06-07 Thread Bin.Cheng
On Wed, May 24, 2017 at 2:48 PM, Richard Biener wrote: > On Mon, May 22, 2017 at 7:13 PM, Bin.Cheng wrote: >> On Fri, May 19, 2017 at 1:51 PM, Richard Biener >> wrote: >>> On Mon, May 15, 2017 at 5:58 PM, Bin.Cheng wrote: >>>> On Thu, May 11, 2017 at

Re: [PATCH GCC][4/5]Improve loop distribution to handle hmmer

2017-06-08 Thread Bin.Cheng
On Thu, Jun 8, 2017 at 3:48 AM, kugan wrote: > Hi Bin, > >> + >> +/* In reduced dependence graph RDG for loop distribution, return true if >> + dependence between references DR1 and DR2 may create dependence cycle >> + and such dependence cycle can't be resolved by runtime alias check. >> */ >

Re: [PATCH PR78005]Fix miscompare issue by computing correct guard condition for vectorized loop

2017-06-11 Thread Bin.Cheng
On Sat, Jun 10, 2017 at 10:40 AM, Richard Sandiford wrote: > Sorry to return this old patch, but: > > Bin Cheng writes: >> -/* Calculate the number of iterations under which scalar loop will be >> - preferred than vectorized loop. NITERS_PROLOG is the number of >> - iterations of prolog loop

Re: [PATCH GCC8][32/33]Save niter check for vect peeling if loop versioning is required

2017-06-12 Thread Bin.Cheng
On Sat, Jun 10, 2017 at 11:06 AM, Richard Sandiford wrote: > Another one sorry, but: > > Bin Cheng writes: >> diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c >> index af874e7..98caa5e 100644 >> --- a/gcc/tree-vect-loop.c >> +++ b/gcc/tree-vect-loop.c >> @@ -2214,6 +2214,36 @@ start_over:

Re: [PATCH PR78005]Fix miscompare issue by computing correct guard condition for vectorized loop

2017-06-12 Thread Bin.Cheng
On Mon, Jun 12, 2017 at 9:19 AM, Richard Sandiford wrote: > "Bin.Cheng" writes: >> On Sat, Jun 10, 2017 at 10:40 AM, Richard Sandiford >> wrote: >>> Sorry to return this old patch, but: >>> >>> Bin Cheng writes: >>>> -/* Ca

Re: [PATCH GCC][03/13]Mark and skip distributed loops

2017-06-13 Thread Bin.Cheng
On Tue, Jun 13, 2017 at 11:47 AM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:02 PM, Bin Cheng wrote: >> Hi, >> This simple patch marks distributed loops and skips it in following >> distribution. >> >> Bootstrap and test on x86_64 and AArch64. Is it OK? > > This is not necessary, FOR_EAC

Re: [PATCH GCC][06/13]Preserve loop nest in whole distribution life time

2017-06-13 Thread Bin.Cheng
On Tue, Jun 13, 2017 at 12:06 PM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:02 PM, Bin Cheng wrote: >> Hi, >> This simple patch computes and preserves loop nest vector for whole >> distribution >> life time. The loop nest will be used multiple times in on-demand data >> dependence >> c

Re: [PATCH] Fix PR66313

2017-06-13 Thread Bin.Cheng
On Tue, Jun 13, 2017 at 12:23 PM, Richard Sandiford wrote: > Richard Biener writes: >> On Tue, 13 Jun 2017, Richard Sandiford wrote: >>> Richard Biener writes: >>> > So I've come back to PR66313 and found a solution to the tailrecursion >>> > missed optimization when fixing the factoring folding

Re: [PATCH] Fix PR66313

2017-06-13 Thread Bin.Cheng
On Tue, Jun 13, 2017 at 12:48 PM, Richard Biener wrote: > On Tue, 13 Jun 2017, Richard Sandiford wrote: > >> Richard Biener writes: >> > On Tue, 13 Jun 2017, Richard Sandiford wrote: >> >> Richard Biener writes: >> >> > So I've come back to PR66313 and found a solution to the tailrecursion >> >>

Re: [PATCH GCC][04/13]Sort statements in topological order for loop distribution

2017-06-14 Thread Bin.Cheng
On Tue, Jun 13, 2017 at 11:59 AM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:02 PM, Bin Cheng wrote: >> Hi, >> During the work I ran into a latent bug for distributing. For the moment we >> sort statements >> in dominance order, but that's not enough because basic blocks may be sorted >

Re: [PATCH GCC][04/13]Sort statements in topological order for loop distribution

2017-06-14 Thread Bin.Cheng
On Wed, Jun 14, 2017 at 10:15 AM, Richard Biener wrote: > On Wed, Jun 14, 2017 at 9:53 AM, Bin.Cheng wrote: >> On Tue, Jun 13, 2017 at 11:59 AM, Richard Biener >> wrote: >>> On Mon, Jun 12, 2017 at 7:02 PM, Bin Cheng wrote: >>>> Hi, >>>> During t

Re: [PATCH GCC][09/13]Simply cost model merges partitions with the same references

2017-06-14 Thread Bin.Cheng
On Wed, Jun 14, 2017 at 2:54 PM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >> Hi, >> Current primitive cost model merges partitions with data references sharing >> the same >> base address. I believe it's designed to maximize data reuse in >> distribution, but >

Re: [PATCH GCC][1/2]Feed bound computation to folder in loop split

2017-06-16 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 11:49 AM, Richard Biener wrote: > On Wed, Jun 14, 2017 at 3:07 PM, Bin Cheng wrote: >> Hi, >> Loop split forces intermediate computation to gimple operands all the time >> when >> computing bound information. This is not good since folding opportunities >> are >> missed

Re: [PATCH GCC][1/2]Feed bound computation to folder in loop split

2017-06-16 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 2:10 PM, Richard Biener wrote: > On Fri, Jun 16, 2017 at 3:06 PM, Bin.Cheng wrote: >> On Fri, Jun 16, 2017 at 11:49 AM, Richard Biener >> wrote: >>> On Wed, Jun 14, 2017 at 3:07 PM, Bin Cheng wrote: >>>> Hi, >>>> Loop

Re: [PATCH GCC][1/2]Feed bound computation to folder in loop split

2017-06-16 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 5:16 PM, Richard Biener wrote: > On June 16, 2017 3:31:32 PM GMT+02:00, "Bin.Cheng" > wrote: >>On Fri, Jun 16, 2017 at 2:10 PM, Richard Biener >> wrote: >>> On Fri, Jun 16, 2017 at 3:06 PM, Bin.Cheng >>wrote: >>&g

Re: [PATCH GCC][1/2]Feed bound computation to folder in loop split

2017-06-16 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 5:48 PM, Marc Glisse wrote: > On Fri, 16 Jun 2017, Bin.Cheng wrote: > >> On Fri, Jun 16, 2017 at 5:16 PM, Richard Biener >> wrote: >>> >>> On June 16, 2017 3:31:32 PM GMT+02:00, "Bin.Cheng" >>> wrote: >>>&g

Re: [PATCH GCC][12/13]Workaround reduction statements for distribution

2017-06-16 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 11:21 AM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >> Hi, >> For now, loop distribution handles variables used outside of loop as >> reduction. >> This is inaccurate because all partitions contain statement defining >> induction >> vars.

Re: [PATCH GCC][06/13]Preserve loop nest in whole distribution life time

2017-06-19 Thread Bin.Cheng
On Tue, Jun 13, 2017 at 12:08 PM, Richard Biener wrote: > On Tue, Jun 13, 2017 at 1:06 PM, Richard Biener > wrote: >> On Mon, Jun 12, 2017 at 7:02 PM, Bin Cheng wrote: >>> Hi, >>> This simple patch computes and preserves loop nest vector for whole >>> distribution >>> life time. The loop nest

Re: [PATCH GCC][07/13]Preserve data references for whole distribution life time

2017-06-19 Thread Bin.Cheng
On Tue, Jun 13, 2017 at 12:14 PM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:02 PM, Bin Cheng wrote: >> Hi, >> This patch collects and preserves all data references in loop for whole >> distribution life time. It will be used afterwards. >> >> Bootstrap and test on x86_64 and AArch64. Is

Re: [PATCH GCC][08/13]Refactoring structure partition for distribution

2017-06-19 Thread Bin.Cheng
On Wed, Jun 14, 2017 at 2:47 PM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >> Hi, >> This patch refactors struct partition for later distribution. It records >> bitmap of data references in struct partition rather than vertices' data in >> partition dependence gra

Re: [PATCH GCC][09/13]Simply cost model merges partitions with the same references

2017-06-19 Thread Bin.Cheng
On Wed, Jun 14, 2017 at 2:54 PM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >> Hi, >> Current primitive cost model merges partitions with data references sharing >> the same >> base address. I believe it's designed to maximize data reuse in >> distribution, but >

Re: [PATCH GCC][07/13]Preserve data references for whole distribution life time

2017-06-19 Thread Bin.Cheng
On Mon, Jun 19, 2017 at 4:16 PM, Richard Biener wrote: > On Mon, Jun 19, 2017 at 3:34 PM, Bin.Cheng wrote: >> On Tue, Jun 13, 2017 at 12:14 PM, Richard Biener >> wrote: >>> On Mon, Jun 12, 2017 at 7:02 PM, Bin Cheng wrote: >>>> Hi, >>>> This pat

Re: [PATCH GCC][10/13]Compute and cache data dependence relation

2017-06-20 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 11:03 AM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >> Hi, >> This patch computes and caches data dependence relation in a hash table >> so that it can be queried multiple times later for partition dependence >> check. >> Bootstrap and test

Re: [PATCH GCC][11/13]Annotate partition by its parallelism execution type

2017-06-20 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 11:10 AM, Richard Biener wrote: > On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >> Hi, >> This patch checks and records if partition can be executed in parallel by >> looking if there exists data dependence cycles. The information is needed >> for distribution because

Re: [PATCH GCC][12/13]Workaround reduction statements for distribution

2017-06-20 Thread Bin.Cheng
On Fri, Jun 16, 2017 at 6:15 PM, Bin.Cheng wrote: > On Fri, Jun 16, 2017 at 11:21 AM, Richard Biener > wrote: >> On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >>> Hi, >>> For now, loop distribution handles variables used outside of loop as >>> reduct

Re: [PATCH GCC][13/13]Distribute loop with loop versioning under runtime alias check

2017-06-20 Thread Bin.Cheng
On Mon, Jun 12, 2017 at 6:03 PM, Bin Cheng wrote: > Hi, > This is the main patch rewriting loop distribution in order to handle hmmer. > It improves loop distribution by versioning loop under runtime alias check > conditions. > As described in comments, the patch basically implements distribution

Re: [PATCH GCC][5/5]Enable tree loop distribution at -O3 and above optimization levels.

2017-06-23 Thread Bin.Cheng
On Fri, Jun 23, 2017 at 6:04 AM, Jeff Law wrote: > On 06/07/2017 02:07 AM, Bin.Cheng wrote: >> On Tue, Jun 6, 2017 at 6:47 PM, Jeff Law wrote: >>> On 06/02/2017 05:52 AM, Bin Cheng wrote: >>>> Hi, >>>> This patch enables -ftree-loop-distribution by d

Re: [PATCH GCC][01/13]Introduce internal function IFN_LOOP_DIST_ALIAS

2017-06-23 Thread Bin.Cheng
On Mon, Jun 12, 2017 at 6:02 PM, Bin Cheng wrote: > Hi, > I was asked by upstream to split the loop distribution patch into small ones. > It is hard because data structure and algorithm are closely coupled together. > Anyway, this is the patch series with smaller patches. Basically I tried to > s

Re: [PATCH GCC][09/13]Simply cost model merges partitions with the same references

2017-06-23 Thread Bin.Cheng
On Mon, Jun 19, 2017 at 4:20 PM, Richard Biener wrote: > On Mon, Jun 19, 2017 at 3:40 PM, Bin.Cheng wrote: >> On Wed, Jun 14, 2017 at 2:54 PM, Richard Biener >> wrote: >>> On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >>>> Hi, >>>> Current

Re: [PATCH GCC][10/13]Compute and cache data dependence relation

2017-06-23 Thread Bin.Cheng
On Tue, Jun 20, 2017 at 12:32 PM, Richard Biener wrote: > On Tue, Jun 20, 2017 at 11:15 AM, Bin.Cheng wrote: >> On Fri, Jun 16, 2017 at 11:03 AM, Richard Biener >> wrote: >>> On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >>>> Hi, >>>> This pa

Re: [PATCH GCC][11/13]Annotate partition by its parallelism execution type

2017-06-23 Thread Bin.Cheng
On Tue, Jun 20, 2017 at 12:34 PM, Richard Biener wrote: > On Tue, Jun 20, 2017 at 11:18 AM, Bin.Cheng wrote: >> On Fri, Jun 16, 2017 at 11:10 AM, Richard Biener >> wrote: >>> On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >>>> Hi, >>>> T

Re: [PATCH GCC][11/13]Annotate partition by its parallelism execution type

2017-06-23 Thread Bin.Cheng
And the patch. On Fri, Jun 23, 2017 at 11:24 AM, Bin.Cheng wrote: > On Tue, Jun 20, 2017 at 12:34 PM, Richard Biener > wrote: >> On Tue, Jun 20, 2017 at 11:18 AM, Bin.Cheng wrote: >>> On Fri, Jun 16, 2017 at 11:10 AM, Richard Biener >>> wrote: >>>>

Re: [PATCH GCC][12/13]Workaround reduction statements for distribution

2017-06-23 Thread Bin.Cheng
On Tue, Jun 20, 2017 at 12:36 PM, Richard Biener wrote: > On Tue, Jun 20, 2017 at 11:20 AM, Bin.Cheng wrote: >> On Fri, Jun 16, 2017 at 6:15 PM, Bin.Cheng wrote: >>> On Fri, Jun 16, 2017 at 11:21 AM, Richard Biener >>> wrote: >>>> On Mon, Jun 12, 2017

Re: [PATCH GCC][08/13]Refactoring structure partition for distribution

2017-06-23 Thread Bin.Cheng
On Mon, Jun 19, 2017 at 4:18 PM, Richard Biener wrote: > On Mon, Jun 19, 2017 at 3:37 PM, Bin.Cheng wrote: >> On Wed, Jun 14, 2017 at 2:47 PM, Richard Biener >> wrote: >>> On Mon, Jun 12, 2017 at 7:03 PM, Bin Cheng wrote: >>>> Hi, >>>>

Re: [PATCH GCC][13/13]Distribute loop with loop versioning under runtime alias check

2017-06-23 Thread Bin.Cheng
On Tue, Jun 20, 2017 at 10:22 AM, Bin.Cheng wrote: > On Mon, Jun 12, 2017 at 6:03 PM, Bin Cheng wrote: >> Hi, >> This is the main patch rewriting loop distribution in order to handle hmmer. >> It improves loop distribution by versioning loop under runtime alias check

Re: [PATCH GCC][09/13]Simply cost model merges partitions with the same references

2017-06-23 Thread Bin.Cheng
On Fri, Jun 23, 2017 at 11:48 AM, Richard Biener wrote: > On Fri, Jun 23, 2017 at 12:19 PM, Bin.Cheng wrote: >> On Mon, Jun 19, 2017 at 4:20 PM, Richard Biener >> wrote: >>> On Mon, Jun 19, 2017 at 3:40 PM, Bin.Cheng wrote: >>>> On Wed, Jun 14, 2017 at

Re: [PATCH GCC][5/6]Record initialization statements and only insert it for valid chains

2017-06-26 Thread Bin.Cheng
On Fri, May 12, 2017 at 12:28 PM, Bin Cheng wrote: > Hi, > This patch caches initialization statements and only inserts it for valid > chains. > Looks like current code even inserts such stmts for invalid chains which will > be > deleted as dead code afterwards. > > Bootstrap and test on x86_64

Re: [PATCH GCC][13/13]Distribute loop with loop versioning under runtime alias check

2017-06-27 Thread Bin.Cheng
On Tue, Jun 27, 2017 at 1:44 PM, Richard Biener wrote: > On Fri, Jun 23, 2017 at 12:30 PM, Bin.Cheng wrote: >> On Tue, Jun 20, 2017 at 10:22 AM, Bin.Cheng wrote: >>> On Mon, Jun 12, 2017 at 6:03 PM, Bin Cheng wrote: >>>> Hi, >> Rebased V3 for changes in pre

Re: [PATCH GCC][01/13]Introduce internal function IFN_LOOP_DIST_ALIAS

2017-06-27 Thread Bin.Cheng
On Tue, Jun 27, 2017 at 1:58 PM, Richard Biener wrote: > On Fri, Jun 23, 2017 at 12:10 PM, Bin.Cheng wrote: >> On Mon, Jun 12, 2017 at 6:02 PM, Bin Cheng wrote: >>> Hi, >>> I was asked by upstream to split the loop distribution patch into small >>> ones. &

Re: [PATCH GCC][01/13]Introduce internal function IFN_LOOP_DIST_ALIAS

2017-06-27 Thread Bin.Cheng
On Tue, Jun 27, 2017 at 3:59 PM, Richard Biener wrote: > On June 27, 2017 4:27:17 PM GMT+02:00, "Bin.Cheng" > wrote: >>On Tue, Jun 27, 2017 at 1:58 PM, Richard Biener >> wrote: >>> On Fri, Jun 23, 2017 at 12:10 PM, Bin.Cheng >>wrote: >>>&

Re: [PATCH GCC][3/6]New file computing regional register pressure on TREE SSA

2017-06-28 Thread Bin.Cheng
On Tue, Jun 27, 2017 at 6:40 PM, Jeff Law wrote: > On 05/12/2017 05:28 AM, Bin Cheng wrote: >> Hi, >> This patch computes register pressure information on TREE SSA by a backward >> live >> range data flow problem. The major motivation is to estimate register >> pressure >> for inner-most loop o

Re: [PATCH GCC][13/13]Distribute loop with loop versioning under runtime alias check

2017-06-28 Thread Bin.Cheng
On Wed, Jun 28, 2017 at 11:58 AM, Richard Biener wrote: > On Tue, Jun 27, 2017 at 4:07 PM, Bin.Cheng wrote: >> On Tue, Jun 27, 2017 at 1:44 PM, Richard Biener >> wrote: >>> On Fri, Jun 23, 2017 at 12:30 PM, Bin.Cheng wrote: >>>> On Tue, Jun 20, 2017 at 10:2

Re: [PATCH GCC][13/13]Distribute loop with loop versioning under runtime alias check

2017-06-28 Thread Bin.Cheng
On Wed, Jun 28, 2017 at 1:29 PM, Richard Biener wrote: > On Wed, Jun 28, 2017 at 1:46 PM, Bin.Cheng wrote: >> On Wed, Jun 28, 2017 at 11:58 AM, Richard Biener >> wrote: >>> On Tue, Jun 27, 2017 at 4:07 PM, Bin.Cheng wrote: >>>> On Tue, Jun 27, 2017 at

Re: Tweak BB analysis for dr_analyze_innermost

2017-06-28 Thread Bin.Cheng
On Wed, Jun 28, 2017 at 2:36 PM, Richard Sandiford wrote: > Index: gcc/tree-data-ref.c > === > --- gcc/tree-data-ref.c 2017-06-28 14:33:41.294720044 +0100 > +++ gcc/tree-data-ref.c 2017-06-28 14:35:30.475155670 +0100 > @@ -749,15 +749

Re: Tweak BB analysis for dr_analyze_innermost

2017-06-28 Thread Bin.Cheng
On Wed, Jun 28, 2017 at 3:04 PM, Richard Sandiford wrote: > "Bin.Cheng" writes: >> On Wed, Jun 28, 2017 at 2:36 PM, Richard Sandiford >> wrote: >>> Index: gcc/tree-data-ref.c >>> === &

Re: Tweak BB analysis for dr_analyze_innermost

2017-06-28 Thread Bin.Cheng
On Wed, Jun 28, 2017 at 5:56 PM, Richard Sandiford wrote: > "Bin.Cheng" writes: >> On Wed, Jun 28, 2017 at 3:04 PM, Richard Sandiford >> wrote: >>> "Bin.Cheng" writes: >>>> On Wed, Jun 28, 2017 at 2:36 PM, Richard

Re: Tweak BB analysis for dr_analyze_innermost

2017-06-28 Thread Bin.Cheng
On Wed, Jun 28, 2017 at 8:06 PM, Richard Sandiford wrote: > "Bin.Cheng" writes: >> On Wed, Jun 28, 2017 at 5:56 PM, Richard Sandiford >> wrote: >>> "Bin.Cheng" writes: >>>> Question is what would happen if simple_iv succeeds with non-ZERO

Re: [PATCH GCC][01/13]Introduce internal function IFN_LOOP_DIST_ALIAS

2017-06-30 Thread Bin.Cheng
On Wed, Jun 28, 2017 at 8:29 AM, Richard Biener wrote: > On Tue, Jun 27, 2017 at 6:46 PM, Bin.Cheng wrote: >> On Tue, Jun 27, 2017 at 3:59 PM, Richard Biener >> wrote: >>> On June 27, 2017 4:27:17 PM GMT+02:00, "Bin.Cheng" >>> wrote: >>

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