hbreak

This command sets a hardware execution breakpoint at a specific location. You can also specify a conditional breakpoint by using an if statement that stops only when the conditional expression evaluates to true.

Note

The number of hardware breakpoints are usually limited. If you run out of hardware breakpoints then delete or disable one that you are no longer using.

Breakpoints that are set within a shared object are deleted when the shared object is unloaded.

Show/hideSyntax

hbreak [-d] [-p] [ [filename:]location | *address] [ thread | core number...] [vmid vmid] [if expression]

Where:

d

Disables the breakpoint immediately after creation.

p

Specifies whether or not the resolution of an unrecognized breakpoint location results in a pending breakpoint being created.

filename

Specifies the file.

location

Specifies the location:

line_num

is a line number.

function

is a function name.

label

is a label name.

+offset | -offset

Specifies the line offset from the current location.

address

Specifies the address. This can be either an address or an expression that evaluates to an address.

number

Specifies one or more threads or processors to apply the breakpoint to. You can use $thread to refer to the current thread. If number is not specified then all threads are affected.

vmid

Specifies the Virtual Machine ID (VMID) to apply the breakpoint to. This can be either an integer or an expression that evaluates to an integer.

expression

Specifies an expression that is evaluated when the breakpoint is hit.

If no arguments are specified then a hardware breakpoint is set at the current PC.

Show/hideExample

Example 41. hbreak

hbreak *0x8000                # Set breakpoint at address 0x8000
hbreak *0x8000 thread $thread # Set breakpoint at address 0x8000 on current thread
hbreak *0x8000 thread 1 3     # Set breakpoint at address 0x8000 on threads 1 and 3
hbreak main                   # Set breakpoint at address of main()
hbreak SVC_Handler            # Set breakpoint at address of label SVC_Handler
hbreak +1                     # Set breakpoint at address of next source line
hbreak my_File.c:main         # Set breakpoint at address of main() in my_File.c
hbreak my_File.c:8            # Set breakpoint at address of line 8 in my_File.c
hbreak function1 if x>0       # Set conditional breakpoint that stops when x>0

Show/hideSee also

Copyright © 2010, 2011 ARM. All rights reserved.ARM DUI 0452G
Non-ConfidentialID092311