This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How to create a "finish" function for a tree opt pass


On 2/29/08 3:15 PM, Haifeng He wrote:

What I did currently was to add my dump routine in
toplev.c:compile_file, after finish_aliases_2
and coverage_finish. I thought it might be nice if there is already
some kind of method defined in the
tree_opt_pass so that user can use to do similar finish-up work.

If you are writing an intra-procedural pass, this is not possible. Your code will be executed once per function in the callgraph.


You can accomplish this if you are implementing an inter-procedural pass. See for instance, pass_ipa_cp.

We don't have finalizer hooks for executing after all the functions have been optimized. You'd have to put your code in cgraph_optimize, maybe. Though where you put it now may be just as good. Though, I think I'd rather see what you're trying to do first. Maybe your pass should be an IPA pass.

Diego.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]