6.5. Definitions

With most commands you have to specify parameters that define, for example, a processor, file, position, address, or format. This section lists these definitions and explains how to use them as command parameters:

asm

Denotes that assembler instructions are ARM (32-bit), Thumb (16-bit) or Jazelle (8-bit). You must specify ARM, Thumb, ByteCode or auto. If you specify auto, the debugger determines the correct setting itself when possible.

breakpoint

You specify a breakpoint as its index in the breakpoint list, in the form of a value prefixed by #.

class

You can identify a class by:

  • the class name which can include the name of an image, separated from the class name by a vertical bar, in the form image|class

  • the index of the class in the current class list, in the form of a value prefixed with #.

context

You can specify a context by specifying a stack entry, in the form of a value prefixed by #.

expr

An expression is either a numerical value or an expression that evaluates to a numerical value.

file

You can identify a file by:

  • its filename

  • the index of the file in the current file list, in the form of a value prefixed with #

  • the globally unique identifier of the file as shown in the output of a files command

  • null, the current file is used.

format

Denotes the format in which the contents of memory, registers, or variables are displayed. You must specify the name or index number of an available format.

image

You can identify an image by:

  • the name of the image

  • the index of the image in the current image list, in the form of a value prefixed with #

  • the globally unique identifier of the image as shown in the output of an images command

  • null (defaults to the image associated with the current processor).

index

You can refer to items in a list by specifying their position in the list. For example, this gives you a convenient way of referring to a watchpoint in commands such as clearwatch.

instr

You must specify either instr to define a step as one instruction or line to define a step as one line of source code.

ipvariable

Denotes any one of a group of variables that define image-related properties. The variables currently supported are:

cmdline

This variable holds the parameter passed to the image when execution starts. If the image requires multiple parameters, enclose the whole string in quotes (“...”).

memory

Denotes that memory is to be displayed in bytes, halfwords, or words. You must specify 8, 16, or 32.

position

To specify a position in a source file, use vertical bar separators as in image|file|line. If you omit the image name, the image associated with the current processor is assumed.

A position might also be a location within an executable image. In this case you can specify it in the form image|@address.

A position can also be inferred from many debug objects, such as breakpoints or low-level symbols. You can therefore specify a position as an index of a position-based object in the last displayed list of these objects. Specify the index as a value prefixed by #.

ppvariable

Denotes any one of a group of variables that define processor-related properties. The variables currently supported are:

vector_catch

Defines which exceptions in the processor are intercepted by the debugger. For details see Processor pop-up menu and setprocprop.

comms_channel

Enables or disables the communications channel.

semihosting_enabled

Enables or disables semihosting, as follows:

0

semihosting disabled

1

standard semihosting enabled

2

DCC semihosting enabled (applies only to Multi-ICE® or ARM Agilent Debug Interface, the add-on product to RealView® Development Suite).

semihosting_vector

Defines handler address. Applies to Multi-ICE only.

semihosting_dcchandler_address

Defines handler address. Applies to Multi-ICE only.

arm_semihosting_swi

Defines ARM software interrupt number reserved for semihosting.

thumb_semihosting_swi

Defines Thumb software interrupt number reserved for semihosting.

processor

You can identify a processor by:

  • the name of the processor

  • the index of the processor in the current processor list, in the form of a value prefixed with #

  • the globally unique identifier of the processor as shown in the output of a processors command

  • null (defaults to the current processor).

regbank

You can identify a register bank by:

  • The name of the register bank. This is processor-dependent. Use the regbanks command to generate a register bank list. Examples of register banks are:

    • Current

    • User or System or User/System

    • IRQ

    • FIQ

    • SVC

    • Abort

    • Undef

    • EICE

    • EICE Watch 0

    • EICE Watch 1

    For example, to write to the Address register of Watchpoint Unit 0 use:


    sreg "EICE Watch 0|Address Value" 0x00008098

  • The index of the register bank in the register bank list, in the form of a value prefixed with #.

  • The globally unique identifier of the register bank shown in the register bank list.

register

You can use the registers command to list the registers in a register bank. You can identify a register by:

  • the name of the register

  • the index of the register in a register list generated by the registers command, in the form of a value prefixed with #.

scope

Denotes which context variables to display, based on their scope. You must specify class, local, or global.

step

This controls the amount of processing that takes place following an instruction that calls a function. You must specify this as in or out, or omit it. If omitted, the step is interpreted as step over line or instruction.

string

You specify a text string enclosed in quotes (“...”).

toggle

Where this parameter is allowed, you can use it to switch on or off certain properties. You must specify either on or off.

value

You specify a numeric value.

watchpoint

You specify a watchpoint as its index in the watchpoint list, in the form of a value prefixed by #.

Copyright © 1999-2006 ARM Limited. All rights reserved.ARM DUI 0066G
Non-Confidential