Merging Graphite to trunk

Sebastian Pop sebpop@gmail.com
Tue Aug 4 18:25:00 GMT 2009


On Mon, Aug 3, 2009 at 03:32, Richard Guenther<rguenther@suse.de> wrote:
> You should be able to get edge frequencies from the edges coming into
> the SCoPs and then after going out-of-graphite do what the profile
> estimation does based on that values.  Or even more simple - re-run
> the profile estimates on the whole function body.
>

I implemented the second solution: recompute the profile information
after graphite code generation.

	* Makefile.in (graphite.o): Depends on PREDICT_H.
	* graphite.c: Include predict.h.
	(graphite_finalize): Call tree_estimate_probability.
	* predict.c (predict_loops): Do not call scev_initialize and
	scev_finalize.
	(tree_estimate_probability_bb): New.
	(tree_estimate_probability): Do not initialize loops: move that
	code to the driver.  Call tree_estimate_probability_bb.
	(tree_estimate_probability_driver): New.
	(pass_profile): Use tree_estimate_probability_driver.
	* predict.h (tree_estimate_probability): Declared.

I am regstrapping this patch on amd64-linux.  Okay for trunk if it passes?

Thanks,
Sebastian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 1670_recompute_profile.diff
Type: text/x-diff
Size: 9794 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20090804/6436b2ca/attachment.bin>


More information about the Gcc-patches mailing list