Debug Manual
Table Of Contents
- What’s New in This Manual
- About This Manual
- 1 Introduction
- Execution Modes on TNS/R Systems
- What User Access Is Required for Debugging
- How to Make a Process Enter Debug
- How to Select Debug as the Debugger
- Why a Process Enters Debug
- How to Determine Process State on a Trap or Signal
- Ending a Debug Session
- What Appears in the Debug Header Message
- How to Use Debug
- How Debug Breakpoints Work
- 2 Using Debug on TNS/R Processors
- 3 Debug Command Overview
- 4 Debug Commands
- Command Summary
- A Command
- AMAP Command
- B Command
- BASE Command
- BM Command
- C Command
- CM Command
- D Command
- DJ Command
- DN Command
- EX[IT] Command
- F[ILES] Command
- FC Command
- FN Command
- FNL Command
- FREEZE Command
- HALT Command
- H[ELP] Command
- I Command
- IH Command (TNS/R Native and OSS Processes)
- INSPECT Command
- LMAP Command
- M Command
- MH Command (TNS/R Native and OSS Processes)
- P[AUSE] Command
- PMAP Command (Accelerated Programs)
- PRV Command
- R Command
- S[TOP] Command
- T Command
- V Command
- VQ Command
- VQA Command
- = Command
- ? Command
- A Error Messages
- B ASCII Character Set
- C Command Syntax Summary
- Register Syntax
- Expression Syntax
- Address Syntax
- A Command
- AMAP Command
- B Command
- BASE Command
- BM Command
- C Command
- CM Command
- D Command
- DJ Command
- DN Command
- EX[IT] Command
- F[ILES] Command
- FC Command
- FN Command
- FNL Command
- FREEZE Command
- HALT Command
- H[ELP] Command
- I Command
- IH Command
- INSPECT Command
- LMAP Command
- M Command
- MH Command
- Output-Device Syntax
- P[AUSE] Command
- PMAP Command
- PRV Command
- R Command
- S[TOP] Command
- T Command
- V Command
- VQ Command
- VQA Command
- = Command
- ? Command
- D Session Boundaries
- E Correspondence Between Debug and Inspect Commands
- F Sample Debug Sessions
- Glossary
- Index

Debug Commands
Debug Manual—421921-003
4-9
Set Unconditional Code Breakpoint
Examples
215,01,00012-b 4+16
215,01,00012-b ul.2, 10+42
215,01,00012-b uc.1, 2047
215,01,00012-B 226+30
215,01,00012-B C 226+30 ! Equivalent to the preceding command
248,02,00022-B SL.2, 23243+332 ! Break in system library segment 2
! at the instruction at
! address %23243+332
248,02,00022-B 0X70023FE4 ! Break in user code at RISC
! address 0x70023FE4 (native mode)
The following example uses the I command to display user code to determine a
register-exact point (marked with an @ sign) at which to set a breakpoint. The
subsequent B command sets a breakpoint at offset %215 in user code.
244,00,00084-I UC.0,207, 20
000207: STOR L+026 > LADR L+023,I LADR L+003 LADR L+027,I
000213: PUSH 722 XCAL 003 @ STRP 7 LDI +001
000217: LDD L+001 LADR L+003 LDI +000 LDI +016
000223: PUSH 755 XCAL 000 @ STOR L+017 > LDI -001
244,00,00084-B UC.0, 215
@ ADDR: UC.%00, %000215 INS: %000107
Examples of Setting Unconditional Code Breakpoints
Appendix F, Sample Debug Sessions provides examples that illustrate setting
unconditional code breakpoints in a procedure and a subprocedure written in TAL
(TNS mode). The following example shows the setting of unconditional code
breakpoints in a function written in C (native mode).
In a C Function (Native Mode). Suppose the programmer wants a process to enter
the debug state at line 115 of this example: