Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-27 Thread Markus Trippelsdorf
On 2016.09.27 at 15:22 +0200, Richard Biener wrote: > On Tue, 27 Sep 2016, Robin Dapp wrote: > > > > Also the '=' in the split line goes to the next line according to > > > coding conventions. > > > > fixed, I had only looked at an instance one function above which had it > > wrong as well. Also

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-27 Thread Richard Biener
On Tue, 27 Sep 2016, Robin Dapp wrote: > > Also the '=' in the split line goes to the next line according to > > coding conventions. > > fixed, I had only looked at an instance one function above which had it > wrong as well. Also changed comment grammar slightly. Ok. Thanks, Richard. > > Reg

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-27 Thread Robin Dapp
> Also the '=' in the split line goes to the next line according to > coding conventions. fixed, I had only looked at an instance one function above which had it wrong as well. Also changed comment grammar slightly. Regards Robin -- gcc/ChangeLog: 2016-09-27 Robin Dapp * tree-vec

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-27 Thread Richard Biener
On Mon, Sep 26, 2016 at 8:15 PM, Richard Biener wrote: > On September 26, 2016 5:46:28 PM GMT+02:00, Bernd Edlinger > wrote: >>Hi, >> >>>@@ -2310,7 +2313,8 @@ create_intersect_range_checks_index >>(loop_vec_info loop_vinfo, tree *cond_expr, >>> gcc_assert (TREE_CODE (DR_STEP (dr_a.dr)) == INTE

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-26 Thread Richard Biener
On September 26, 2016 5:46:28 PM GMT+02:00, Bernd Edlinger wrote: >Hi, > >>@@ -2310,7 +2313,8 @@ create_intersect_range_checks_index >(loop_vec_info loop_vinfo, tree *cond_expr, >> gcc_assert (TREE_CODE (DR_STEP (dr_a.dr)) == INTEGER_CST); >> >> bool neg_step = tree_int_cst_compare (DR_STEP

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-26 Thread Bernd Edlinger
Hi, >@@ -2310,7 +2313,8 @@ create_intersect_range_checks_index (loop_vec_info >loop_vinfo, tree *cond_expr, > gcc_assert (TREE_CODE (DR_STEP (dr_a.dr)) == INTEGER_CST); > > bool neg_step = tree_int_cst_compare (DR_STEP (dr_a.dr), size_zero_node) < > 0; >- unsigned HOST_WIDE_INT abs_step =

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-26 Thread Robin Dapp
> And also please mention https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77724 > and perhaps > add its testcase, too. > Patch according to Richard's suggestion, included test case. The test case works unpatched on x86-64 but fails on s390. Is gcc.dg/vect the proper place for it? (I didn't manage t

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-26 Thread Markus Trippelsdorf
On 2016.09.26 at 13:14 +0200, Richard Biener wrote: > On Mon, Sep 26, 2016 at 11:21 AM, Robin Dapp wrote: > >> Comments added. Bootstrap and test, is it reasonable? > > > > This introduces an ICE on s390x with a Fortran testcase, because > > of an assertion failure in tree_to_uhwi (DR_STEP (dr_a.

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-26 Thread Bin.Cheng
On Mon, Sep 26, 2016 at 10:21 AM, Robin Dapp wrote: >> Comments added. Bootstrap and test, is it reasonable? > > This introduces an ICE on s390x with a Fortran testcase, because > of an assertion failure in tree_to_uhwi (DR_STEP (dr_a.dr)) for > DR_STEP (dr_a.dr) = -8(OVF). > > The attached patch

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-26 Thread Richard Biener
On Mon, Sep 26, 2016 at 11:21 AM, Robin Dapp wrote: >> Comments added. Bootstrap and test, is it reasonable? > > This introduces an ICE on s390x with a Fortran testcase, because > of an assertion failure in tree_to_uhwi (DR_STEP (dr_a.dr)) for > DR_STEP (dr_a.dr) = -8(OVF). > > The attached patch

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-26 Thread Robin Dapp
> Comments added. Bootstrap and test, is it reasonable? This introduces an ICE on s390x with a Fortran testcase, because of an assertion failure in tree_to_uhwi (DR_STEP (dr_a.dr)) for DR_STEP (dr_a.dr) = -8(OVF). The attached patch fixes this by introducing an additional tree_fits_uhwi_p(). ok

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-23 Thread Richard Sandiford
"Bin.Cheng" writes: > + gcc_assert (TREE_CODE (DR_STEP (dr_a.dr)) == INTEGER_CST); > + > + bool neg_step = tree_int_cst_compare (DR_STEP (dr_a.dr), size_zero_node) < > 0; > + unsigned HOST_WIDE_INT abs_step = tree_to_uhwi (DR_STEP (dr_a.dr)); > + if (neg_step) > +abs_step = -abs_step; I

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-22 Thread Richard Biener
On Thu, Sep 22, 2016 at 11:43 AM, Bin.Cheng wrote: > On Wed, Sep 21, 2016 at 3:01 PM, Richard Biener > wrote: >> On Tue, Sep 20, 2016 at 5:25 PM, Bin Cheng wrote: >>> Hi, >>> I originally posted a patch improving code generation for alias check in >>> vectorizer at https://gcc.gnu.org/ml/gcc-pa

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-22 Thread Bin.Cheng
On Wed, Sep 21, 2016 at 3:01 PM, Richard Biener wrote: > On Tue, Sep 20, 2016 at 5:25 PM, Bin Cheng wrote: >> Hi, >> I originally posted a patch improving code generation for alias check in >> vectorizer at https://gcc.gnu.org/ml/gcc-patches/2016-06/msg00929.html. >> Here it's the 2nd version

Re: [PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-21 Thread Richard Biener
On Tue, Sep 20, 2016 at 5:25 PM, Bin Cheng wrote: > Hi, > I originally posted a patch improving code generation for alias check in > vectorizer at https://gcc.gnu.org/ml/gcc-patches/2016-06/msg00929.html. Here > it's the 2nd version (better) patch. It detects data reference pair in which > th

[PATCH GCC][v2]Simplify alias check code generation in vectorizer

2016-09-20 Thread Bin Cheng
Hi, I originally posted a patch improving code generation for alias check in vectorizer at https://gcc.gnu.org/ml/gcc-patches/2016-06/msg00929.html. Here it's the 2nd version (better) patch. It detects data reference pair in which the two references are only different to each other wrto index.