• Open Access IconOpen Access
  • Cite Icon11
  • https://doi.org/10.1145/1273647.1273654Copy DOI Icon

Techniques for specifying bug patterns

  • Jul 9, 2007
  • Daniel J Quinlan +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

We present our on-going work to develop techniques for specifying source code signatures of bug patterns. Specifically, we discuss two approaches. The first approach directly analyzes a program in the intermediate representation (IR) of the ROSE compiler infrastructure using ROSE's API. The second analyzes the program using the bddbddb system of Lam, Whaley, et al.. In this approach, we store the IR produced by ROSE as a relational database, express patterns as declarative inference rules on relations in the language Datalog, and bddbddb implements the Datalog programs using binary decision diagram (BDD) techniques. Both approaches readily apply to large-scale applications, since ROSE provides full type analysis, control flow, and other available analysis information. In this paper, we primarily consider bug patterns expressed with respect to the structure of the source code or the control flow, or both. More complex techniques to specify patterns that are functions of data flow properties may be addressed by either of the above approaches, but are not directly treated here. Our Datalog-based work includes explicit support for expressing patterns on the use of the Message Passing Interface (MPI) in parallel distributed memory programs. We show examples of this on-going work as well.

Similar Papers
  • Research Article
  • Citations111

Predicting metamorphic relations for testing scientific software: a machine learning approach using graph kernels

  • Nov 16, 2015
  • Software Testing, Verification and Reliability
  • Upulee Kanewala +2
  • Conference Article
  • Citations4

Predicate Callback Summaries

  • May 01, 2017
  • Danilo Dominguez Perez +1
  • Conference Article
  • Citations24

Control Flow Analysis and Coverage Driven Testing for Web Services

  • Sep 01, 2008
  • Li Li +2
  • Conference Article
  • Citations21

Optimizing intra-task voltage scheduling using data flow analysis

  • Jan 01, 2005
  • Dongkun Shin +1
  • Research Article
  • Citations1

Introducing Temporal Behaviour into Binary Decision Diagrams

  • Jan 01, 2013
  • IFAC Proceedings Volumes
  • Ernest E Edifor +2
  • Book Chapter
  • Citations9

Screening Smartphone Applications Using Behavioral Signatures

  • Jan 01, 2013
  • Suyeon Lee +2
  • Research Article
  • Citations2

Software Weakness Detection in Solidity Smart Contracts Using Control and Data Flow Analysis: A Novel Approach with Graph Neural Networks

  • Aug 10, 2024
  • Electronics
  • Aria Seo +4
  • Conference Article
  • Citations1

Formal Synthesis of Optimal RTOS

  • Aug 01, 2015
  • Toussaint Gautier Tigori Kabland +2
  • Research Article
  • Citations4

A Survey of Performance Analysis Tools for OpenMP and MPI

  • Nov 22, 2016
  • Indian Journal of Science and Technology
  • J Sairabanu +3
  • Research Article
  • Citations16

CPL library — A minimal framework for coupled particle and continuum simulation

  • Nov 25, 2019
  • Computer Physics Communications
  • E.R Smith +5
  • Conference Article
  • Citations263

C-FLAT

  • Oct 24, 2016
  • Tigist Abera +7
  • Conference Article
  • Citations2

BCFA

  • Jun 27, 2020
  • Ramanathan Ramu +3
  • Research Article
  • Citations5

Regression test prioritization leveraging source code similarity with tree kernels

  • Feb 15, 2024
  • Journal of Software: Evolution and Process
  • Francesco Altiero +4
  • Conference Article
  • Citations37

Enabling sophisticated analyses of ×86 binaries with RevGen

  • Jun 01, 2011
  • Vitaly Chipounov +1
  • Research Article
  • Citations2

Whole-program optimization for time and space efficient threads

  • Sep 01, 1996
  • ACM SIGPLAN Notices
  • Dirk Grunwald +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.