|
From: Josef W. <Jos...@gm...> - 2008-02-13 23:32:01
|
On Wednesday 13 February 2008, Nicholas Nethercote wrote: > On Wed, 13 Feb 2008, Josef Weidendorfer wrote: > > >> A patch in contrib/ would be fine for the moment. But I am sure that a > >> generic way to push higher level functions would interest a lot of > >> people (so that there could be some callgrind plug-ins to profile > >> python2.5, python2.3, php, perl, whatever...). > > > > Yes. > > > > However, there currently does not exist any further extension of VG > > tools to allow for "callgrind plug-ins". But it should be possible to > > make a kind of library version of callgrind, to base other VG tools > > on it. > > > > Or even better: Support it via just an configuration file (or command line > > options). Now that Julian is adding support for reading debug info for data, > > it should be possible to look up arbitrary variables. > > I'd strongly encourage you to find a way, if possible, to make this feature > generic if you plan to include it. Yes, of course. I have not yet decided how to include it if at all. If I add client requests which looks like a general solution (as far as callgrind goes), the needed macros need to be included into python. While this is the better solution, it is not really helpful if such a modified python never finds its way into distributions. > Code that is not normally run (eg. due > to being in contrib/, or only included if certain configure options are > used) will be tested less and be much less robust. This is one of those > things that is really important in practice. Yes. There is probably no big difference if it would be in contrib/ or if Sebastian maintains it itself, or if the patch finds its way into contrib/ of python source: It won't be run normally, as you said. > If the feature can be extended to other languages than Python that obviously > makes it much better too. IMHO there is a lot of potential for it: a JITter could notify about the source relation of generated code. Probably even useful for self-hosting Valgrind runs (making it even slower ;-) Josef |