This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH 0/3] Resubmission of new implementation of SRA
On Fri, May 29, 2009 at 05:57:34PM +0200, Richard Guenther wrote:
> On Fri, 29 May 2009, Martin Jambor wrote:
> > Hi,
> > This is hopefully the final version of intraprocedural SRA, addressing
> > all some comments from Richi's (some of which were sent only to me,
> > but they are all minor). The previous post is here:
> > http://gcc.gnu.org/ml/gcc-patches/2009-05/msg01628.html
> > The biggest difference is that auxiliary statements generated to turn
> > complex number and vector replacements which are not gimple registers
> > into registers are created by force_gimple_operand_gsi rather than by
> > functions of my own.
> > Most notably, some unnecessary complex typecasting is removed and
> > complex numbers which participate in an assignment into one of their
> > components are dealt with by simply not making them a gimple register.
> > The first patch is the new implementation itself. The second patch
> > removes SRA parameters which are no longer used and the third adjusts
> > the testsuite and adds new testcases.
> > The whole patch set bootstraps on x86_64-linux-gnu (including Ada),
> > and i586-suse-linux. There are no new regressions on both of these
> > platforms.
> > So, OK for trunk?
Great, committed as revision 147980.
With one minor change, though, just before committing I have noticed
that alloc-pool.h was not listed as a dependency for tree-sra.c in
Makefile.in. So the hunk in the diff for that file was actually the
one below. I hope that is an obvious change (and so I have tested it
in a limited fashion by compiling c language only).
@@ -2769,11 +2769,9 @@ tree-ssa-ccp.o : tree-ssa-ccp.c $(TREE_F
$(DIAGNOSTIC_H) $(FUNCTION_H) $(TIMEVAR_H) $(TM_H) coretypes.h \
$(TREE_DUMP_H) $(BASIC_BLOCK_H) $(TREE_PASS_H) langhooks.h \
tree-ssa-propagate.h value-prof.h $(FLAGS_H) $(TARGET_H) $(TOPLEV_H)
-tree-sra.o : tree-sra.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(RTL_H) \
- $(TM_P_H) $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(TREE_INLINE_H) \
- $(TIMEVAR_H) $(TM_H) coretypes.h $(TREE_DUMP_H) $(GIMPLE_H) \
- langhooks.h $(TREE_PASS_H) $(FLAGS_H) $(EXPR_H) $(BASIC_BLOCK_H) \
- $(BITMAP_H) $(GGC_H) hard-reg-set.h $(OBSTACK_H) $(PARAMS_H) $(TARGET_H)
+tree-sra.o : tree-sra.c $(CONFIG_H) $(SYSTEM_H) coretypes.h alloc-pool.h \
+ $(TM_H) $(TREE_H) $(GIMPLE_H) $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(TREE_DUMP_H) \
+ $(TIMEVAR_H) $(PARAMS_H) $(TARGET_H) $(FLAGS_H)
tree-switch-conversion.o : tree-switch-conversion.c $(CONFIG_H) $(SYSTEM_H) \
$(TREE_H) $(TM_P_H) $(TREE_FLOW_H) $(DIAGNOSTIC_H) $(TREE_INLINE_H) \
$(TIMEVAR_H) $(TM_H) coretypes.h $(TREE_DUMP_H) $(GIMPLE_H) \