A fully-non-transparent approach to the code location problem

  • Authors:
  • Hugo Venturini;Frédéric Riss;Jean-Claude Fernandez;Miguel Santana

  • Affiliations:
  • Verimag -- Grenoble, France and STMicroelectronics -- Crolles, France;STMicroelectronics -- Crolles, France;Verimag -- Grenoble, France;STMicroelectronics -- Crolles, France

  • Venue:
  • SCOPES '08 Proceedings of the 11th international workshop on Software & compilers for embedded systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

In the context of embedded systems such as cell-phones, PDA or cars and planes software, optimizations of code are required because of timing and memory constraints imposed. Many problems arise when trying to debug optimized code. One of them is the irrelevance of the mapping between the source code and the optimized target program: the Code Location Problem. This paper proposes a solution to this problem in the case of highly optimized code in the context of embedded systems. Two approaches exist: non-transparent and transparent debugging. Our approach is non-transparent. The idea is to reveal the execution of the optimized program to the user so the latter understands the mapping to the source code in spite of transformations applied to the program. We do not emulate the execution of the unoptimized program. We make good use of the programmer's knowledge of its development platform. Standard debuggers do not provide the required mechanisms while compilers do not provide the relevant debug information. We propose a novel method to maintain accurate debug information when optimizing at compilation and we experiment this method on the MMDSP+ C compiler and the IDBug debugger.