Re: [RFC] Update Stage 4 description

2019-01-09 Thread Joseph Myers
On Wed, 9 Jan 2019, Paul Koning wrote: > Is there, or should there be, a distinction between primary and > non-primary platforms? While platform bugs typically require fixes in > platform-specific code, I would think we would want to stay away from > bugfixes in minor platforms during stage 4.

Re: autovectorization in gcc

2019-01-09 Thread David Malcolm
7;t in > sqrt-test.cc.104t.stdarg > but is in > sqrt-test.cc.105t.cdce > so I think it's coming from the argument-range code in cdce. > > Arguably the location on the statement is wrong: it's on the loop > header, when it presumably should be on the std::sqr

Re: autovectorization in gcc

2019-01-09 Thread Jakub Jelinek
On Wed, Jan 09, 2019 at 11:10:25AM -0500, David Malcolm wrote: > extern void vf1() > { >#pragma vectorize enable >for ( int i = 0 ; i < 32768 ; i++ ) > data [ i ] = std::sqrt ( data [ i ] ) ; > } > > Compiling on this x86_64 box with -fopt-info-vec-missed shows the > _7 = .SQRT (_1

Re: autovectorization in gcc

2019-01-09 Thread David Malcolm
On Wed, 2019-01-09 at 09:56 +, Jonathan Wakely wrote: > On Wed, 9 Jan 2019 at 09:50, Andrew Haley wrote: > > I don't agree. Sometimes vectorization is critical. It would be > > nice > > to have a warning which would fire if vectorization failed. That > > would > > surely help the OP. > > Dave

Re: [RFC] Update Stage 4 description

2019-01-09 Thread Nathan Sidwell
On 1/9/19 4:02 AM, Jonathan Wakely wrote: +extra care on not introducing new regressions - fixing bugs at all cost ISTM that this should be either "at any cost" or "at all costs". The current wording can't make up its mind if it's singular or plural. Agreed, as a native english speaker, 'at

Re: [RFC] Update Stage 4 description

2019-01-09 Thread Richard Biener
On Wed, 9 Jan 2019, Paul Koning wrote: > > > > On Jan 9, 2019, at 3:42 AM, Tom de Vries wrote: > > > > [ To revisit https://gcc.gnu.org/ml/gcc-patches/2018-04/msg00385.html ] > > > > The current formulation for the description of Stage 4 here ( > > https://gcc.gnu.org/develop.html ) is: > > .

Re: [RFC] Update Stage 4 description

2019-01-09 Thread Paul Koning
> On Jan 9, 2019, at 3:42 AM, Tom de Vries wrote: > > [ To revisit https://gcc.gnu.org/ml/gcc-patches/2018-04/msg00385.html ] > > The current formulation for the description of Stage 4 here ( > https://gcc.gnu.org/develop.html ) is: > ... > During this period, the only (non-documentation) cha

Re: Garbage collection bugs

2019-01-09 Thread Jan Hubicka
> On Wed, Jan 9, 2019 at 12:48 PM Richard Biener > wrote: > > > > On Wed, Jan 9, 2019 at 10:46 AM Joern Wolfgang Rennecke > > wrote: > > > > > > We've been running builds/regression tests for GCC 8.2 configured with > > > --enable-checking=all, and have observed some failures related to > > > gar

Re: Garbage collection bugs

2019-01-09 Thread Richard Biener
On Wed, Jan 9, 2019 at 12:48 PM Richard Biener wrote: > > On Wed, Jan 9, 2019 at 10:46 AM Joern Wolfgang Rennecke > wrote: > > > > We've been running builds/regression tests for GCC 8.2 configured with > > --enable-checking=all, and have observed some failures related to > > garbage collection. >

Re: Garbage collection bugs

2019-01-09 Thread Richard Biener
On Wed, Jan 9, 2019 at 10:46 AM Joern Wolfgang Rennecke wrote: > > We've been running builds/regression tests for GCC 8.2 configured with > --enable-checking=all, and have observed some failures related to > garbage collection. > > First problem: > > The g++.dg/pr85039-2.C tests (I've looked in de

Re: autovectorization in gcc

2019-01-09 Thread Jakub Jelinek
On Wed, Jan 09, 2019 at 12:03:45PM +0100, Jakub Jelinek wrote: > > The above is a typical example. So, to give a complete source 'vec_sqrt.cc': > > > > #include > > > > extern float data [ 32768 ] ; > > > > extern void vf1() > > { > > #pragma vectorize enable > > for ( int i = 0 ; i < 32768

Re: autovectorization in gcc

2019-01-09 Thread Jakub Jelinek
On Wed, Jan 09, 2019 at 11:56:03AM +0100, Kay F. Jahnke wrote: > The above is a typical example. So, to give a complete source 'vec_sqrt.cc': > > #include > > extern float data [ 32768 ] ; > > extern void vf1() > { > #pragma vectorize enable > for ( int i = 0 ; i < 32768 ; i++ ) > data

Re: autovectorization in gcc

2019-01-09 Thread Kay F. Jahnke
On 09.01.19 10:45, Kyrill Tkachov wrote: There's plenty of work being done on auto-vectorisation in GCC. Auto-vectorisation is a performance optimisation and as such is not really a user-visible feature that absolutely requires user documentation. Since I'm trying to deliberately exploit it, a

Re: autovectorization in gcc

2019-01-09 Thread Ramana Radhakrishnan
On Wed, Jan 9, 2019 at 9:50 AM Andrew Haley wrote: > > On 1/9/19 9:45 AM, Kyrill Tkachov wrote: > > Hi Kay, > > > > On 09/01/19 08:29, Kay F. Jahnke wrote: > >> Hi there! > >> > >> I am developing software which tries to deliberately exploit the > >> compiler's autovectorization facilities by feed

Re: Garbage collection bugs

2019-01-09 Thread Arseny Solokha
> First problem: > > The g++.dg/pr85039-2.C tests (I've looked in detail at -std=c++98, but > -std=c++11 and -std=c++14 appear to follow the same pattern) see gcc > garbage-collecting a live vector.  A subsequent access to the vector with > vec_quick_push causes a segmentation fault, as m_vecpfx.m

Re: autovectorization in gcc

2019-01-09 Thread Jonathan Wakely
On Wed, 9 Jan 2019 at 09:50, Andrew Haley wrote: > I don't agree. Sometimes vectorization is critical. It would be nice > to have a warning which would fire if vectorization failed. That would > surely help the OP. Dave Malcolm has been working on something like that: https://gcc.gnu.org/ml/gcc-pa

Re: autovectorization in gcc

2019-01-09 Thread Andrew Haley
On 1/9/19 9:45 AM, Kyrill Tkachov wrote: > Hi Kay, > > On 09/01/19 08:29, Kay F. Jahnke wrote: >> Hi there! >> >> I am developing software which tries to deliberately exploit the >> compiler's autovectorization facilities by feeding data in >> autovectorization-friendly loops. I'm currently using

Re: autovectorization in gcc

2019-01-09 Thread Kyrill Tkachov
Hi Kay, On 09/01/19 08:29, Kay F. Jahnke wrote: Hi there! I am developing software which tries to deliberately exploit the compiler's autovectorization facilities by feeding data in autovectorization-friendly loops. I'm currently using both g++ and clang++ to see how well this approach works. U

Garbage collection bugs

2019-01-09 Thread Joern Wolfgang Rennecke
We've been running builds/regression tests for GCC 8.2 configured with --enable-checking=all, and have observed some failures related to garbage collection. First problem: The g++.dg/pr85039-2.C tests (I've looked in detail at -std=c++98, but -std=c++11 and -std=c++14 appear to follow the sam

[wwwdocs, committed] Update Stage 4 description

2019-01-09 Thread Tom de Vries
[ was: Re: [RFC] Update Stage 4 description ] On 09-01-19 09:47, Richard Biener wrote: > On Wed, 9 Jan 2019, Tom de Vries wrote: > >> [ To revisit https://gcc.gnu.org/ml/gcc-patches/2018-04/msg00385.html ] >> >> The current formulation for the description of Stage 4 here ( >> https://gcc.gnu.org/

Re: [RFC] Update Stage 4 description

2019-01-09 Thread Jonathan Wakely
On Wed, 9 Jan 2019 at 08:41, Tom de Vries wrote: > > [ To revisit https://gcc.gnu.org/ml/gcc-patches/2018-04/msg00385.html ] > > The current formulation for the description of Stage 4 here ( > https://gcc.gnu.org/develop.html ) is: > ... > During this period, the only (non-documentation) changes t

Re: [RFC] Update Stage 4 description

2019-01-09 Thread Richard Biener
On Wed, 9 Jan 2019, Tom de Vries wrote: > [ To revisit https://gcc.gnu.org/ml/gcc-patches/2018-04/msg00385.html ] > > The current formulation for the description of Stage 4 here ( > https://gcc.gnu.org/develop.html ) is: > ... > During this period, the only (non-documentation) changes that may be

[RFC] Update Stage 4 description

2019-01-09 Thread Tom de Vries
[ To revisit https://gcc.gnu.org/ml/gcc-patches/2018-04/msg00385.html ] The current formulation for the description of Stage 4 here ( https://gcc.gnu.org/develop.html ) is: ... During this period, the only (non-documentation) changes that may be made are changes that fix regressions. Other change

autovectorization in gcc

2019-01-09 Thread Kay F. Jahnke
Hi there! I am developing software which tries to deliberately exploit the compiler's autovectorization facilities by feeding data in autovectorization-friendly loops. I'm currently using both g++ and clang++ to see how well this approach works. Using simple arithmetic, I often get good resul