This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch SRA] Fix PR66119 by calling get_move_ratio in SRA


On Tue, 30 Jun 2015, James Greenhalgh wrote:

> 
> On Fri, Jun 26, 2015 at 06:10:00PM +0100, Jakub Jelinek wrote:
> > On Fri, Jun 26, 2015 at 06:03:34PM +0100, James Greenhalgh wrote:
> > > --- /dev/null
> > > +++ b/gcc/testsuite/g++.dg/pr66119.C
> >
> > I think generally testcases shouldn't be added into g++.dg/ directly,
> > but subdirectories.  So g++.dg/opt/ ?
> >
> > > @@ -0,0 +1,69 @@
> > > +/* PR66119 - MOVE_RATIO is not constant in a compiler run, so Scalar
> > > +   Reduction of Aggregates must ask the back-end more than once what
> > > +   the value of MOVE_RATIO now is.  */
> > > +
> > > +/* { dg-do compile  { target i?86-*-* x86_64-*-* } }  */
> >
> > In g++.dg/, dejagnu cycles through all 3 major -std=c* versions,
> > thus using -std=c++11 is inappropriate.
> > If the test requires c++11, instead you do
> > // { dg-do compile { target { { i?86-*-* x86_64-*-* } && c++11 } } }
> >
> > > +/* { dg-options "-std=c++11 -O3 -mavx -fdump-tree-sra -march=slm" { target avx_runtime } } */
> >
> > and remove -std=c++11 here.  I don't see any point in guarding it with
> > avx_runtime, after all, if not avx_runtime, the test will be compiled with
> > -O0 and thus very likely fail the scan-tree-dump test.
> >
> > As it is dg-do compile test only, you have no dependency on assembler nor
> > linker nor runtime.
> > But I'd add -mtune=slm too.
> 
> Thanks, I'm used to the dance we try to do to get Neon enabled/disabled
> correctly when testing multilib environments on ARM so tried to
> overengineer things!
> 
> I've updated the testcase as you suggested, and moved it to g++.dg/opt.
> 
> OK?

Looks good to me now.

Thanks,
Richard.

> Thanks,
> James
> 
> ---
> gcc/
> 
> 2015-06-30  James Greenhalgh  <james.greenhalgh@arm.com>
> 
> 	PR tree-optimization/66119
> 	* toplev.c (process_options): Don't set up default values for
> 	the sra_max_scalarization_size_{speed,size} parameters.
> 	* tree-sra (analyze_all_variable_accesses): If no values
> 	have been set for the sra_max_scalarization_size_{speed,size}
> 	parameters, call get_move_ratio to get target defaults.
> 
> gcc/testsuite/
> 
> 2015-06-30  James Greenhalgh  <james.greenhalgh@arm.com>
> 
> 	* g++.dg/opt/pr66119.C: New.
> 
> 

-- 
Richard Biener <rguenther@suse.de>
SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Dilip Upmanyu, Graham Norton, HRB 21284 (AG Nuernberg)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]