If-conversion in SSA form

8Citations
Citations of this article
6Readers
Mendeley users who have this article in their library.

This article is free to access.

Abstract

Predicated execution has become a standard feature in modern high-performance microprocessors, and is supported by compilers through if-conversion. The static single assignment (SSA) form has been demonstrated to be a very successful intermediate representation in modern compilers. Traditionally, SSA optimizations preceed the if-conversion because the classical SSA form is not adapted for if-converted programs. Recently, the ψ-SSA extension of the classical SSA form has been proposed for optimizing predicated code. However, up until now, the ifconversion itself has not been applicable to programs in SSA form. As a result, optimizers that want to use SSA before and ψ-SSA after the if-conversion would have to translate the program out of the SSA form before performing the if-conversion, and to rebuild the &-SSA from scratch after the if-conversion. In this paper, we propose a simple model of ifconversion in SSA form such that if-conversion results in the ψ-SSA. We implemented our if-conversion method in the Open64/ORC compiler code generator, and evaluated the size of the U'-SSA form resulting from if-conversion on a set of MediaBench programs. © Springer-Verlag 2004.

Cite

CITATION STYLE

APA

Stoutchinin, A., & Gao, G. (2004). If-conversion in SSA form. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 3149, 336–345. https://doi.org/10.1007/978-3-540-27866-5_43

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free