• Cite Icon145
  • https://doi.org/10.1145/200994.201003Copy DOI Icon

Beyond induction variables

Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Linear induction variable detection is usually associated with the strength reduction optimization. For restructuring compilers, effective data dependence analysis requires that the compiler detect and accurately describe linear and nonlinear induction variables as well as more general sequences. In this article we present a practical technique for detecting a broader class of linear induction variables than is usually recognized, as well as several other sequence forms, including periodic, polynomial, geometric, monotonic, and wrap-around variables. Our method is based on Factored Use-Def (FUD) chains, a demand-driven representation of the popular Static Single Assignment (SSA) form. In this form, strongly connected components of the associated SSA graph correspond to sequences in the source program: we describe a simple yet efficient algorithm for detecting and classifying these sequences. We have implemented this algorithm in Nascent, our restructuring Fortran 90+ compiler, and we present some results showing the effectiveness of our approach.

Similar Papers
  • Conference Article
  • Citations153

Array SSA form and its use in parallelization

  • Jan 01, 1998
  • Kathleen Knobe +1
  • Conference Article
  • Citations1

Recovering the Memory Behavior of Executable Programs

  • Jul 15, 2010
  • Alain Ketterlin +1
  • Research Article
  • Citations28

Optimal register sharing for high-level synthesis of SSA form programs

  • May 01, 2006
  • IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
  • P Brisk +3
  • Research Article
  • Citations10

More precise construction of static single assignment programs using reaching definitions

  • Apr 06, 2020
  • Journal of Systems and Software
  • Abu Naser Masud +1
  • Research Article
  • Citations4

Studying Optimal Spilling in the Light of SSA

  • Jan 09, 2015
  • ACM Transactions on Architecture and Code Optimization
  • Quentin Colombet +2
  • Book Chapter
  • Citations20

Verifying Fast and Sparse SSA-Based Optimizations in Coq

  • Jan 01, 2015
  • Delphine Demange +2
  • Research Article
  • Citations1

An Optimal Linear-Time Algorithm for Interprocedural Register Allocation in High Level Synthesis Using SSA Form

  • Jul 01, 2010
  • IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
  • Philip Brisk +2
  • Conference Article
  • Citations14

Pointer analysis of multithreaded Java programs

  • Mar 09, 2003
  • Mangala Gowri Nanda +1
  • Book Chapter
  • Citations2

Accurate Data and Context Management in Message-Passing Programs

  • Jan 01, 2000
  • Dhruva R Chakrabarti +1
  • Research Article
  • Citations20

Optimizing Code Generation from SSA Form: A Comparison Between Two Formal Correctness Proofs in Isabelle/HOL

  • Nov 25, 2005
  • Electronic Notes in Theoretical Computer Science
  • Jan Olaf Blech +3
  • Conference Article
  • Citations8

Interpreting programs in static single assignment form

  • Jun 07, 2004
  • Jeffery Von Ronne +2
  • Research Article
  • Citations4

Static Single Assignment Form for Message-Passing Programs

  • Apr 01, 2001
  • International Journal of Parallel Programming
  • Dhruva R Chakrabarti +1
  • PDF
  • Research Article
  • Citations5

An Approach for Detecting Feasible Paths Based on Minimal SSA Representation and Symbolic Execution

  • Jun 10, 2021
  • Applied Sciences
  • Abdalla Wasef Marashdih +2
  • Conference Article
  • Citations1

Array Bounds Check Elimination for Java Based on Sparse Representation

  • Jan 01, 2009
  • Keqiao Yang +2
  • Research Article
  • Citations16

Efficient accommodation of may-alias information in SSA form

  • Jun 01, 1993
  • ACM SIGPLAN Notices
  • Ron Cytron +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.