GIMPLE pass - Assignment evaluation

Sandeep K Chaudhary babbusandy2006@gmail.com
Tue Dec 17 06:24:00 GMT 2013


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