A System and Language for Building System-Specific, Static Analyses

Abstract

This paper presents a novel approach to bug-finding analysis and an implementation of that approach. Our goal is to find as many serious bugs as possible. To do so, we de signed a flexible, easy-to-use extension language for specifying analyses and an efficient algorithm for executing these extensions. The language, metal, allows the users of our system to specify a broad class of analyses in terms that resemble the intuitive description of the rules that they check. The system, xgcc, executes these analyses efficiently using a context-sensitive, interprocedural analysis. Our prior work has shown that the approach described in this paper is effective: it has successfully found thousands of bugs in real systems code. This paper describes the underlying system used to achieve these results. We believe that our system is an effective framework for deploying new bug-finding analyses quickly and easily.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jan 01, 2002
Accession Number
ADA419593

Entities

People

  • Benjamin Chelf
  • Dawson Engler
  • Seth Hallem
  • Yichen Xle

Organizations

  • Stanford University

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Boundaries
  • Computations
  • Computer Programming
  • Computer Programs
  • Debugging
  • Dynamic Programming
  • Engineering
  • Language
  • Law
  • Reliability
  • Security
  • Software Development
  • Statistical Analysis
  • Transitions
  • Verification

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computational Linguistics
  • Software Engineering.