This Technical Note discusses which information in C-SPY that is reliable (and which is unreliable) at optimization level 'high'.
The optimization system in IAR C /C++ Compiler consists of different parts that aim to make as small and/or fast output as possible. When these parts are enabled, the debug information that the compiler generates become less and less reliable.
...comes from C-SPY windows that shows information collected from the target system. For example the following windows:
These windows are reliable most of the time, but any write might have been moved due to optimzations. That is, a write of a value might not have been done yet. This applies to for example the following windows:
C-SPY windows that shows information based on debug information becomes unreliable. For example the follwoing windows:
More information can be found in Help > C-SPY Debugging Guide, chapter "Effects of optimizations" and also Help > C/C++ Development Guide, chapter "Optimization Levels".
All product names are trademarks or registered trademarks of their respective owners.