On Tue, Jan 01, 2013 at 03:23:06PM +0530, Shakthi Kannan wrote:
> Greetings!
>
> I would like to know if there are any TODO tasks that I can work on to
> get started with Graphite/GCC. I came across Tobias Grosser's post
> regarding Graphite development at:
>
> http://gcc.gnu.org/wiki/Graphite-4.8
In addition of that list, I would suggest adding plugin support & hooks into
graphite.
For instance, it is currently not really possible to make the Graphite-OpenCL
hack
as a plugin to GCC 4.8 (or the next GCC), because
(that was at least true more than a year ago, when I looked in details):
* some internal data are not GTY-ed inside graphite. It is quite important
for plugins
that the data they manipulate is properly GTY-ed and handled by Ggc
(and deleted only by the Ggc, so that plugin passes could manipulate them
easily,
share them between several passes, etc).
* there is no plugin hooks at all in graphite, even for simple things like
dealing
with induction variables, SCOP, etc... A lot of information computed by
graphite
passes could be useful to plugins.
As a general hint, my suggestion would be to improve Graphite till the
Graphite-OpenCL hack
could be coded as a GCC plugin. (I don't think that Graphite-OpenCL should be a
core feature
of GCC, I do think it is a typical use case for plugins, but the current
Graphite infrastructure
does not allow that because of nasty details. Today, to make Grahpite-OpenCL as
a plugin,
one have to copy-paste the code of Graphite passes, patche them as
Graphite-OpenCL did,
and replace the core Graphite passes with their Graphite-OpenCL improvement;
this is messy, error-prone, ugly; it would be better if Graphite gave enough
plugin hooks to avoid that).
If you add plugin abilities to Graphite passes, please document that!
Happy new year 2013 to everyone.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basilestarynkevitchnet mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***