GIMPLE pass - Assignment evaluation

Uday P. Khedker uday@cse.iitb.ac.in
Tue Dec 17 06:41:00 GMT 2013


You may also want to go through the slides at http://www.cse.iitb.ac.in/grc/gcc-workshop-13/index.php?page=slides.

In particular, http://www.cse.iitb.ac.in/grc/gcc-workshop-13/downloads/slides/Day1/gccw13-gimple-manipulation.pdf and http://www.cse.iitb.ac.in/grc/gcc-workshop-13/downloads/slides/Day2/gccw13-code-view.pdf may be of help.

Unfortunately there is some problem with playing the videos of the lectures (http://www.cse.iitb.ac.in/grc/gcc-workshop-12/index.php?page=videos) but we are working on that.

Uday Khedker.

Sandeep K Chaudhary wrote, On Tuesday 17 December 2013 11:54 AM:
> Thank you so much for the reply, David !
>
> I am not sure where exactly my pass gets invoked. I will try to find it.
> But the pass get invoked somewhere in the GIMPLE stage as shown in the
> GCC architecture[1].
> How is it that one can dictate where the pass can be invoked? Can you
> please provide some pointers/links about this?
>
> But looking at the GCC architecture[1], I can see that the
> optimization passes come into picture only after GIMPLE and SSA stage.
>   I dumped the IR and other related files using -fdump-tree-all with
> optimization flag -O1, and saw that the assignments have not been
> evaluated for test.c.004t.gimple as well as test.c.018t.ssa.
>
> Also, in test.c.025t.forwprop1 and test.c.029t.copyprop1, they totally
> get rid of everything in the assignments i.e. they only have the final
> evaluation of the variables which is not what I want as I need
> evaluation for individual statements.
>
> [2] provides a nice diagrammatic understanding of the relative
> invocations of GCC opt passes. It is quite helpful for understanding
> the relative positions of the passes.
>
> Thanks and regards,
> Sandeep.
>
> [1] http://en.wikibooks.org/wiki/GNU_C_Compiler_Internals/GNU_C_Compiler_Architecture
> [2] https://gcc-python-plugin.readthedocs.org/en/latest/tables-of-passes.html
>




More information about the Gcc-help mailing list