8.2.1. Summary of armsd variables

You can modify many debugger defaults by setting variables. Table 8.2 lists the variables. Most of these are described elsewhere in this chapter in more detail.

Table 8.2. armsd variables

VariableDescription

$clock (RealView ARMulator ISS only)

Number of microseconds since simulation started. This read-only variable is available only if a processor clock speed is specified. See RealView ARMulator ISS configuration for information on specifying the simulated processor clock speed.

$cmdline

Argument string for the debuggee.

$echo

Nonzero to echo commands from obeyed files (initially 1).

$examine_lines

Default number of lines for examine command (initially 8).

$int_format

Default format for printing integer values (initially “0x%.8lx”).

$float_format

Default format for printing floating-point values (initially “%g”).

$uint_format

Default format for printing unsigned integer values (initially “0x%.8lx”).

$sbyte_format

Default format for printing signed byte values (initially “%c”).

$ubyte_format

Default format for printing unsigned byte values (initially “%c”).

$string_format

Default format for printing string values (initially “%s”).

$complex_format

Default format for printing complex values (initially “(%g,%g)”).

$pointer_format

Default format for printing pointer values (initially “0x%.8lx”).

$inputbase

Base for input of integer constants (initially 10).

$list_lines

Default number of lines for list command (initially 16).

$fpresult

Floating-point value returned by last called function (junk if none, or if a floating-point value was not returned). A read-only variable. $fpresult returns a result only if the image has been built for hardware floating-point. If the image is built for software floating-point, it returns zero.

$type_lines

Default number of lines for the type command.

$memory_statistics (RealView ARMulator ISS only)

Outputs any memory map statistics that RealView ARMulator ISS has been keeping. A read-only variable. See RealView ARMulator ISS configuration for further details.

Note

$memory_statistics is only defined when an armsd.map file is present.

$statistics (RealView ARMulator ISS only)

Outputs any statistics which RealView ARMulator ISS has been keeping. A read-only variable.

$statistics_inc (RealView ARMulator ISS only)

Similar to $statistics, but outputs the difference between the current statistics and those when $statistics was last read. A read-only variable.

$vector_catch

Indicates whether or not execution is interrupted when various exceptions occur. The default value is %RUsPDAifE. Capital letters indicate that the exception is to be intercepted:

R Reset

U Undefined Instruction

S SWI

P Prefetch Abort

D Data Abort

A Reserved (do not use)

I IRQ

F FIQ

E Reserved (do not use)

$rdi_log

RDI logging is enabled if nonzero, and serial line logging is enabled if bit 1 is set (initially 0).

$top_of_memory

This variable informs the debugger where the top of RAM is on your target.

This is used to enable Multi-ICE®, EmbeddedICE, and Angel to return sensible values when a HEAP_INFO SWI call is made to determine where to place the heap and stack in memory. The default is 0x80000 (512KB). Modify this before executing a program on the target if the memory available differs from this.

$target_fpu

This variable controls the way that floating-point values are interpreted by the debugger. It is important for correct display of float and double values in memory that this variable is set to a value that is appropriate for the target in use. If you attempt to change this value, a validity test ensures that the only settings allowed are those that are compatible with the representation of floating-point values in the current image. Valid settings and their meanings are:

1 Selects pure-endian doubles (softVFP). This is the default setting for images built with RealView Development Suite tools. Values are read from ordinary registers.

2 Selects mixed-endian doubles (softFPA). Values are read from ordinary registers.

3 Selects hardware Vector Floating-Point unit (VFP). Values are read from registers CP10 and CP11.

4 Selects hardware Floating-Point Accelerator (FPA). Values are read from registers CP1 and CP2.

5 Reserved.

Incompatible settings are accepted but a warning is given.

SoftVFP and SoftFPA images run correctly on a target whether or not hardware floating point is present. FPA images can also run correctly without hardware floating point, but only if the Floating Point Emulator in RealView ARMulator ISS is active. VFP images require appropriate hardware. For more information, see the RealView Compilation Tools Compiler and Libraries Guide.

$sourcedir

This variable contains a list of the paths to be searched when a source file is required. It defaults to NULL if no value is specified. When you specify search paths:

  • Enclose the full pathname in double quotes.

  • In armsd under Windows DOS, escape the backslash directory separator with another backslash character. For example:


    $sourcedir="c:\\mysource\\src1"

  • Separate multiple pathnames with a semicolon, not with a space character. For example:


    $sourcedir="c:\\my src\\src1;c:\\my src\\src2"

$result

Integer result returned by last called function (junk if none, or if an integer result was not returned). A read-only variable.

$semihosting_enabled

Enables or disables semihosting (see Definitions).

armsd internal variables

The variables in Table 8.3 are included to support EmbeddedICE.

Table 8.3. armsd variables for Multi-ICE and EmbeddedICE

VariableDescription
$icebreaker_lockedpoints

Shows or sets locked EmbeddedICE logic points.

$semihosting_vector

Sets up semihosting SWI vector.

$semihosting_arm_swi

Defines which ARM SWIs are interpreted as semihosting requests by the debug agent. The default is 0x123456. Do not change this.

$semihosting_thumb_swi

Defines which Thumb SWIs are interpreted as semihosting requests by the debug agent. The default is 0xAB. Do not change this.

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