디버그 정보 및 높은 최적화

기술노트 62015

아키텍처:

ARM

컴포넌트:

debugger

업데이트:

2018-02-28 오전 1:50

Introduction

This Technical Note discusses which information in C-SPY that is reliable (and which is unreliable) at optimization level 'high'.

Background

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.

Reliable information...

...comes from C-SPY windows that shows information collected from the target system. For example the following windows:

  • Disassembly window 
  • Memory window
  • Register window
  • Stack window
  • Call Stack window

Reliable (most of the time) information

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:

  • Statics window
  • Symbolic Memory window
  • Symbols window

Unreliable information

C-SPY windows that shows information based on debug information becomes unreliable. For example the follwoing windows:

  • Watch window
  • Locals window
  • Auto window
  • Live Watch windows
  • Quick Watch window

More information

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.

 

죄송하지만, 당사 사이트에서는 Internet Explorer를 지원하지 않습니다.보다 편안한 사이트를 위해 Chrome, Edge, Firefox 등과 같은 최신 브라우저를 사용해 주시길 부탁드립니다.