2.1 C++ client examples

The following C++ client examples are located in $PVLIB_HOME/Iris/Examples/Client/.

Note:

  • When launching the model to connect to, use the -I option to start an Iris server.

  • Many of these examples require you to specify a target instance. You must use the full hierarchical instance name, for example:

    ./breakpoints localhost:7100 component.FVP_Base_Cortex_A32x1.cluster0.cpu0 --list

    For information about Iris instance names, see 5.20.1 Hierarchical instance names and instance classes.

Table 2-1 C++ client examples

Example Description
Breakpoints
  • Sets or deletes code or data breakpoints.
  • Prints information about breakpoints that have been set for a target instance.
Connection
  • Connects this client instance to the Iris server.
  • Prints the client instance name and id.
Disassembly
  • Prints the disassembly modes that are supported by a target instance.
  • Prints the current disassembly mode.
  • Disassembles a chunk of memory, or an individual opcode.
ExecutionControl
  • Starts or stops the simulation.
  • Halts or resumes execution of a specific instance.
  • Provides an interactive mode, which in addition:
    • Prints the execution time and execution state of the simulation.
    • Performs instruction stepping.
Memory
  • Prints information about the memory spaces that are exposed by the target instance.
  • Prints the contents of memory that was read from a specific address, in a specific memory space.
Register
  • Prints information about all resource groups and the resources (registers and parameters) in each group, for a target instance.
  • Writes a value to a specific resource.
  • Reads a value from a specific resource.
Semihosting
  • Creates an event stream for IRIS_SEMIHOSTING_OUTPUT events.
  • Registers itself to receive callbacks for semihosting output events.
  • Receives semihosting output from the target and prints it.
SimpleTraceClient
  • Registers itself to receive a specific trace source from all instances. The trace source is specified on the command line, or INST by default.
  • Creates an event stream for the trace source specified.
  • Implements a callback function that prints the contents of each trace event.
Non-ConfidentialPDF file icon PDF version101196_0100_03_en
Copyright © 2018, 2019 Arm Limited or its affiliates. All rights reserved.