Advertisement

Advanced Symbolic Analysis for Compilers

New Techniques and Algorithms for Symbolic Program Analysis and Optimization

  • Thomas Fahringer
  • Bernhard Scholz

Part of the Lecture Notes in Computer Science book series (LNCS, volume 2628)

Table of contents

  1. Front Matter
    Pages I-XII
  2. Pages 1-11
  3. Pages 99-108
  4. Pages 109-111
  5. Pages 113-118
  6. Back Matter
    Pages 119-129

About this book

Introduction

The objective of program analysis is to automatically determine the p- perties of a program. Tools of software development, such as compilers, p- formance estimators, debuggers, reverse-engineering tools, program veri?- tion/testing/proving systems, program comprehension systems, and program specializationtoolsarelargelydependentonprogramanalysis. Advancedp- gram analysis can: help to ?nd program errors; detect and tune performan- critical code regions; ensure assumed constraints on data are not violated; tailor a generic program to suit a speci?c application; reverse-engineer so- ware modules, etc. A prominent program analysis technique is symbolic a- lysis, which has attracted substantial attention for many years as it is not dependent on executing a program to examine the semantics of a program, and it can yield very elegant formulations of many analyses. Moreover, the complexity of symbolic analysis can be largely independent of the input data size of a program and of the size of the machine on which the program is being executed. In this book we present novel symbolic control and data ?ow repres- tation techniques as well as symbolic techniques and algorithms to analyze and optimize programs. Program contexts which de?ne a new symbolic - scription of program semantics for control and data ?ow analysis are at the center of our approach. We have solved a number of problems encountered in program analysis by using program contexts. Our solution methods are e?cient, versatile, uni?ed, and more general (they cope with regular and irregular codes) than most existing methods.

Keywords

Compiler abstract interpretation algorithms compiler optimization data flow representation program analysis program analysis algorithms program contexts program optimization program semantics symbolic analysis symbolic control symbolic program manipulation

Editors and affiliations

  • Thomas Fahringer
    • 1
  • Bernhard Scholz
    • 2
  1. 1.Institute for Software ScienceUniversity of ViennaViennaAustria
  2. 2.Institut für Computersprachen E185/1Technische Universität WienViennaAustria

Bibliographic information

  • DOI https://doi.org/10.1007/3-540-36614-8
  • Copyright Information Springer-Verlag Berlin Heidelberg 2003
  • Publisher Name Springer, Berlin, Heidelberg
  • eBook Packages Springer Book Archive
  • Print ISBN 978-3-540-01185-9
  • Online ISBN 978-3-540-36614-0
  • Series Print ISSN 0302-9743
  • Buy this book on publisher's site
Industry Sectors
Pharma
Automotive
Finance, Business & Banking
Electronics
IT & Software
Telecommunications
Energy, Utilities & Environment
Aerospace
Engineering