
Every variable in a target application has a location where it is stored. Typically:
Global and static variables have fixed memory addresses.
Local variables (inside a function body) are stored either in the stack frame of that function or in a general-purpose register.
When compiler optimizations are disabled, each variable has a single Location Description. If this description resolves to a simple location (such as a fixed address, register, or stack-frame offset), the resolved location is displayed in the address column of the sYmbol.Browse window. In all other cases, the column shows locdesc.
You will see locdesc in the following situations:
Multiple locations per variable: With compiler optimizations enabled, a variable may reside in different locations depending on the program counter. Use
Var.INFO <varname>(or right-click the variable → Other → View Info) to see all valid locations along with their associated program address ranges. An example is shown in the following screenshot.
Unresolvable location descriptions: At least one location cannot be resolved to a fixed address, register, or stack-frame offset.
Add a comment