Tau Instrumenting Pooma Header Files: Status Report
Jeffrey Oldham
oldham at codesourcery.com
Fri Oct 5 23:42:37 UTC 2001
The current status:
Scott Haney and Mark Mitchell want the ability to automatically add
Tau instrumentation function to all non-inline functions.
1) Using the libraries I distributed yesterday and configuration
patches awaiting approval, profiling Pooma *.cmpl.cpp files occurs
automatically after configuring with '--profile'.
2) Sameer Shende graciously sent a revised Tau that does not
instrument inline functions.
3) I modified the Pooma configury scripts to create a directory full
of instrumented header files. Unfortunately, the PDToolkit parser
incorrectly analyzes several header files. I sent an error report
to Sameer concerning one. Others will require some special
handling on our part.
In the meantime, I sent a script to Stephen Smith permitting
instrumenting of one particular header file. This script is applied
by hand and reversed by hand.
No future work:
I am stopping work on instrumenting header files for now. After
receiving a fix from Sameer, it will probably take at least one more
working day to resolve the remaining instrumenting problems. Mark
Mitchell and Scott Haney will need to indicate if this work is really
necessary. Unless otherwise directed, I will discard my work.
The technique to instrument header files:
Instrumented versions of *.cmpl.cpp files are stored in $(SUITE)
subdirectories and compiled there. This technique does not work for
header files because users of header file name hard-coded path names
in their files. Thus, we store the instrumented header files in the
directory tree 'src/$(SUITE)' and '-I.../src/$(SUITE)' is added at the
beginning of compilation commands so the instrumented header files are
used. Header files may change between compilations, and we want the
corresponding instrumented version to be updated when necessary.
Thus, dependencies and gnu-make pattern rules cause the needed
instrumented header files to be created.
If you want the patch to
configure
config/Shared/compilerules.mk
config/Shared/dependo.pl
config/Shared/rules.mk
config/Shared/tail.mk,
send me email. (~/pooma/pooma4/)
Thanks,
Jeffrey D. Oldham
oldham at codesourcery.com
More information about the pooma-dev
mailing list