When I use the -prof-file file flag (in conjunction with -prof-gen=srcpos and -prof-dir dir if file contains a suffix (i.e. file = modTypes.intel.log) the suffix will be stripped in a non-greedy fashion. By this I mean that rather than always producing profile files named file.(dpi|spi|spl) like the manpage and html documentation suggest, the last .suffix gets removed in a non greedy fashion if it exists.
file = foobar ==> foobar.(dpi|spi|spl)
file = foobar.suff1 ==> foobar.(dpi|spi|spl)
file = foobar.suff1.suff2 ==> foobar.suff1.(dpi|spi|spl)
file = foobar.suff1. suff2. ... .suff(N-1).suff(N) ==> foobar.suff1.suff2. ... .suff(N-1).(dpi|spi|spl)
This behavior is completely undocumented, and the documentation leads one to assume that file is preserved in its entirety.
from the man page: man ifort (ifort 11.1.046, RHEL5 x86_64)
-- [snip] --
Specifies an alternate file name for the profiling summary
Architectures: IA-32, Intel 64, IA-64 architectures
OFF The profiling summary files have the
file name pgopti.*
This option specifies an alternate file name for the pro-
filing summary files. The file is used as the base name
for files created by different profiling passes.
If you add this option to profmerge, the .dpi file will be
named file.dpi instead of pgopti.dpi.
If you specify -prof-genx (Linux and Mac OS X) or
/Qprof-genx (Windows) with this option, the .spi and .spl
files will be named file.spi and file.spl instead of
pgopti.spi and pgopti.spl.
If you specify -prof-use (Linux and Mac OS X) or
/Qprof-use (Windows) with this option, the .dpi file will
be named file.dpi instead of pgopti.dpi.
-- [snip] --
I would submit to premier.intel.com etc. but I am not a sysadmin and don't have access to the login info etc.
I have spent way more time that I should have to figure out how to use the codecov tool, and in fact, the only reason I had success with this is because I have what should be a bug (given the compiler documentation) in my Makefile. I then spent even more time when I discovered this "bug" and was completely perplexed as to why when I "corrected it" everything broke.
I don't mean to sound whiney, but I would suggest the following:
Correct the documentation for the -prof compiler flags both in the man pages and in the html documentation.
Create better documentation for the use of codecov.
I have inserted appropriate comments into my Makefile (such as # Magic! and other comments documenting the behaviour of -prof-file flag) to remind myself and other devs that something fishy is going on and to prevent wasting hours of my time in the future.