Global Variables in Polyspace Access Web Interface
This topic focuses on the Polyspace® Access web interface. To learn about the equivalent pane in the Polyspace desktop user interface, see Variable Access in Polyspace Desktop User Interface (Polyspace Code Prover).
The Global Variables pane displays global variables (and local static variables). For each global variable, the pane lists all functions and tasks performing read/write access on the variables, along with their attributes, such as values, read/write accesses and shared usage.
You open the Global Variables Usage pane by using the icon in your Results Details pane, or by going to Window > Global Variables Usage.
For each variable and each read/write access, the Global Variables Usage pane contains the relevant attributes. For the variables, the various attributes are listed in this table.
Attribute | Description |
---|---|
Variables | Name of Variable |
Values | Value (or range of values) of variable This column is empty for pointer variables. |
# Reads | Number of times the variable is read |
# Writes | Number of times the variable is written |
Read by task | Name of tasks reading variable |
Written by task | Name of tasks writing on variable |
Protection | Whether shared variable is protected from concurrent access (Filled only when Usage column has entry, Shared) The possible entries in this column are:
For more details on these entries, see the documentation for Polyspace Code Prover™ or Polyspace Code Prover Server™. |
Usage | Shared , if variable is shared between tasks; otherwise, blank |
File | Source file containing variable declaration |
Data Type | Data type of variable (C/C++ data types or structures/classes) |
Double-click a variable name to view read/write access operations on the variable in the Results Details pane. The arrowhead symbols and in the Results Details pane indicate functions performing read and write access respectively on the global variable. For further information on tasks, see analysis option Tasks (-entry points)
in the documentation for Polyspace
Code Prover or Polyspace
Code Prover
Server.
For access operations on the variables, the various attributes described in the Global Variables Usage pane are listed in this table.
Attribute | Description |
---|---|
Values | Value or range of values of variable in the function or task performing read/write access This column is empty for pointer variables. |
Written by task | Only for tasks: Name of task performing write access on variable |
Read by task | Only for tasks: Name of task performing read access on variable |
File | Source file containing access operation on variable |
The Results Details pane also lists the Scope of the access operation on the variable.
For example, consider the global variable, SHR2
:
The function, Tserver
, in the file, tasks1.c
, performs two write operations on SHR2
. This is indicated in the Results Details pane by the two instances of Tserver()
in the table, marked by . Likewise, the read access by task initregulate
is also listed in the table and marked by .
The color scheme for variables in the Global Variables Usage pane is:
Black: global variable.
Orange: global variable, shared between tasks with no protection against concurrent access.
Green: global variable, shared between tasks and protected against concurrent access.
Gray: global variable, declared but not used in reachable code.
If a task performs certain operations on a global variable, but the operations are in unreachable code, the tasks are colored gray.
The information about global variables and read/write access operations obtained from the Global Variables Usage pane is called the data dictionary.
You can also perform the following actions from the Global Variables Usage pane.