Frama-C-discuss mailing list archives
This page gathers the archives of the old Frama-C-discuss archives, that was hosted by Inria's gforge before its demise at the end of 2020. To search for mails newer than September 2020, please visit the page of the new mailing list on Renater.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Frama-c-discuss] Controlling the visitor (Plugin)
- Subject: [Frama-c-discuss] Controlling the visitor (Plugin)
- From: pascal.cuoq at gmail.com (Pascal Cuoq)
- Date: Thu, 14 Apr 2011 17:14:53 +0200
- In-reply-to: <925547.68214.qm@web29519.mail.ird.yahoo.com>
- References: <mailman.21779.1302561613.26568.frama-c-discuss@lists.gforge.inria.fr> <925547.68214.qm@web29519.mail.ird.yahoo.com>
Hello, On Thu, Apr 14, 2011 at 4:54 PM, zakaria chihani <uaz11 at yahoo.fr> wrote: > Go through the function bodies (that we get by the self#current_func > method), calculate a cost over the regular statements, but when we find a > call to another function, we have to add the cost of that function too. > > So, we end up with a dependency graph (cycles - mutual recursive functions > - are of course not handled). > If we have A which calls B, which calls C, and if the visitor goes through > the functions in that order, we need to tell him " Stop visiting A, go visit > the callee before the caller" > This is what a function call does. Is there any way we can fix the visit order "manually"? > You do not need to fix the order (although you could). Just force the missing computations when you encounter a call. See how src/inout/outputs.ml, which uses a visitor, handles the Call(...) case in vinst. Note that this will be simplified a bit further in the next release (and, for the same price, you will also get a better treatment of "fake" recursive calls as they can appear in some programs). At the next release, watch how src/inout/outputs.ml was modified and do the same modifications in your plug-in. Pascal -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.gforge.inria.fr/pipermail/frama-c-discuss/attachments/20110414/254ec257/attachment.htm>
- References:
- [Frama-c-discuss] Controlling the visitor (Plugin)
- From: uaz11 at yahoo.fr (zakaria chihani)
- [Frama-c-discuss] Controlling the visitor (Plugin)
- Prev by Date: [Frama-c-discuss] Controlling the visitor (Plugin)
- Next by Date: [Frama-c-discuss] Problem with the ChangeDoChildrenPost (bis)
- Previous by thread: [Frama-c-discuss] Controlling the visitor (Plugin)
- Next by thread: [Frama-c-discuss] Problem with the ChangeDoChildrenPost (bis)
- Index(es):