Keil Logo

Technical Support

On-Line Manuals

µVision User's Guide

About µVision User Interface Creating Applications Debugging Start Debugging Start Energy Measurement without Debug Application Program Execution Debug Windows and Dialogs Breakpoints Window Call Stack and Locals Window Code Coverage Command Window Component Viewer Disassembly Window Event Recorder Setup Event Recorder Event Recorder Window Events Filtering Event Statistics Window Event Viewer Execution Profiler Instruction Trace Window System Analyzer Usage tips Restrictions Logic Analyzer Setup Setup in Detail Restrictions Cortex-M Trace Configuration Memory Map Memory Window Performance Analyzer Registers Window Serial Window Debug (printf) Viewer Symbols Window System Viewer Adding System Viewer Windows System and Thread Viewer Thread States Toolbox Trace Data Window Trace Navigation Trace Exceptions Event Counters ULINKplus Window Watch Window Core Peripherals Cortex-M0 and Cortex-M0+ Nested Vector Interrupt Controller System Control and Configuration System Tick Timer Fault Reports (Cortex-M0+ only) Cortex-M3, Cortex-M4, and Cortex-M7 Nested Vector Interrupt Controller System Control and Configuration System Tick Timer Fault Reports Memory Protection Unit Cortex-M23 and Cortex-M33 Nested Vector Interrupt Controller System Control and Configuration System Tick Timer Fault Reports Memory Protection Unit Security Attribution Unit Debug Scripting Expressions Constants System Variables Peripheral Variables I/O Ports Serial Ports Program Variables (Symbols) Fully Qualified Symbols Non-Qualified Symbols Literal Symbols Using Symbols Line Numbers Bit Addresses Type Specifications Operators Differences between µVision and C Expression Examples Code and Data Trace (Cortex-M) Trace Features Tracepoint Expressions Tracepoint Intrinsics Tracepoint Limitations Configuring the Trace Hardware Tracepoint Marks Tips and Tricks Review Peripherals and CPU Configuration Simulate I/O Ports Simulate Interrupts and Clock Inputs Simulate external I/O Devices Assign Serial I/O to a PC COM Port Check Illegal Memory Access Command Input from File Preset I/O Ports or Memory Contents Write Debug Output to a File Keyboard Shortcuts TPIU Initialization after RESET (Cortex-M) Prevent Opening Files Show Japanese Messages Debug Commands Debug Functions Simulation Flash Programming Dialogs Utilities Command Line Example Programs Appendix

Tracepoint Intrinsics

Tracepoint intrinsics are function-like commands to define the type of a tracepoints in a more convenient manner. Use the intrinsics from the command line. Tracepoint intrinsics cannot be nested. All intrinsics start and end with an underscore. Intrinsics are part of the tracepoint command and cannot be executed as standalone. The general form is:

_intrinsicName_(address expression [, address length])

Where

address expression A symbol or plain constant that resolves to an address.
address length Optional parameter; must be separated with a comma (,).

The following intrinsics are available:

Intrinsic Name Description
_codeacc_ Define a tracepoint for accessing a memory range to fetch instructions for code execution.
_readacc_ Define a tracepoint for reading from an address range.
_writeacc_ Define a tracepoint for writing to an address range.
_readwriteacc_ Define a tracepoint for reading or writing to an address range.

Examples:

TAP  _writeacc_(AD_last)              // Trace all write accesses to AD_last
TH   _codeacc_(0x1400)                // Halt the trace when PC reaches address 0x1400
TDP  _readwriteacc_(0x8000,0xFF)      // Trace all read and write accesses to the memory
                                      // range starting at address 0x8000 with the length 0xFF
TS   _readacc_(0x8000,0xFF) == 10     // Suspend trace when value 10 is read from an element
                                      // in the address range of 0x8000 - 0x80FF

Note

  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.