|
| whocalls - report on the calls to a specific procedure |
SYNOPSIS
| /usr/ccs/bin/whocalls [-l wholib] [-s] funcname executable [arguments ...] |
|
whocalls is a simple example of a utility based on the Link-Auditing functionality of ld.so.1(1) that permits the tracking of a given function call. See the Linker and Libraries Guide for a detailed description of the Link-Auditing mechanism. The executable is run as normal with any associated arguments. Each time the procedure funcname is called, both the arguments
to that procedure and a stack trace are displayed on standard output.
|
|
The following options are supported:
- -l wholib
- Specifies an alternate who.so Link-Auditing library to use.
- -s
- When available, examines and uses the .symtab symbol table for local symbols. This is a little more expensive than using the .dynsym symbol table, but can produce more detailed stack trace information.
|
| Example 1. Tracking function calls
|
This example tracks the calls to printf() made by a simple helloworld program:
|
example% whocalls printf helloworld
printf(0x106e4, 0xef625310, 0xef621ba8)
helloworld:main+0x10
helloworld:_start+0x5c
Hello World
|
|
|
|
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Availability | SUNWtoo |
|
| |