Totalview® for HPC User Guide : PART II Debugging Tools and Tasks : Chapter 8 Setting Action Points : Setting Breakpoints and Barriers : Setting Breakpoints at Locations : Ambiguous Functions and Pending Breakpoints
Ambiguous Functions and Pending Breakpoints
If you type a function name that TotalView has no information about into the Action Point > At Location dialog box, it assumes that you have either mistyped the function name or that the library containing the function has not yet been loaded into memory.
If TotalView cannot find a location to set a breakpoint (or a barrier point), you can tell it to set it anyway because it could exist in a shared library or it could be loaded later. These kind of breakpoints are called pending breakpoints. When libraries are loaded, TotalView checks for the function’s name. If the name is found, it sets the breakpoint. If it isn’t in a newly loaded library, TotalView just keeps on waiting for it to be loaded. You’ll see information in the Action Points tab that tells you that the breakpoint is pending.
Figure 93 – Pending Breakpoints
If the name you type is similar to the name of an existing function, TotalView displays its Ambiguous Function dialog box that lets you select which of these existing functions it should set a breakpoint on. If, however, the function will be loaded into memory later, you can set a pending breakpoint.
Figure 94 – Ambiguous Function Dialog Box
If the name you entered was not similar to any existing function, TotalView just asks if it should set a pending breakpoint. This question box is also shown in Figure 94.
NOTE >> TotalView can only place one action point on an address. Because the breakpoints you specify are actually expressions, the locations to which these expressions evaluate can overlap or even be the same. Sometimes, and this most often occurs with pending breakpoints in dynamically loaded libraries, TotalView cannot tell when action points overlap. If they do, TotalView only enables one of the action points and disables all others that evaluate to the same address. The actionpoint that TotalView enables is the one with the lowest actionpoint ID.