10.104 __breakpoint intrinsic

This intrinsic inserts a BKPT instruction into the instruction stream generated by the compiler.

It enables you to include a breakpoint instruction in your C or C++ code.

Syntax

void __breakpoint(int val)

Where:

val

is a compile-time constant integer whose range is:

0 ... 65535

if you are compiling source as ARM code

0 ... 255

if you are compiling source as Thumb code.

Errors

The compiler does not recognize the __breakpoint intrinsic when compiling for a target that does not support the BKPT instruction. The compiler generates either a warning or an error in this case, depending on the source language:

  • In C code: Warning: #223-D: function "__breakpoint" declared implicitly.
  • In C++ code: Error: #20: identifier "__breakpoint" is undefined.

The undefined instruction trap is taken if a BKPT instruction is executed on an architecture that does not support it.

Examples

void func(void)
{
    ...
    __breakpoint(0xF02C);
    ...
}
Related information
BKPT
Non-Confidential PDF file icon PDF version ARM DUI0472J
Copyright © 2010-2013 ARM. All rights reserved.