About signal handling

PureCoverage installs a signal handler for many of the possible software signals that can be delivered to an instrumented process. The signal handler prints an informative message and saves coverage data to the .pcv file in case the process crashes.

The -handle-signals and -ignore-signals options specify which signals are handled.

The signal handler installed by PureCoverage outputs a signal message to stderr, or to the Purify Viewer if the process is Purify'd. If the signal is a fatal signal such as a segv, and the program has not installed a user signal handler to catch such a condition, PureCoverage writes the coverage data to the .pcv file before normal signal termination. If the instrumented program has installed a signal handler, the PureCoverage handler passes control to that handler instead.

If you do not want to save data for a process that crashes, you can specify the signal name as the value of the -ignore-signals option. Or you can have your program install a handler of its own that invokes the API function purecov_disable_save() or purecov_set_filename() to specify an alternate destination for the data from the failed application.