Conditional Branch Optimization in the Compilers for Superscalar Processors


The Transactions of the Korea Information Processing Society (1994 ~ 2000), Vol. 2, No. 2, pp. 264-276, Mar. 1995
10.3745/KIPSTE.1995.2.2.264,   PDF Download:

Abstract

In this paper, a technique for eliminating conditional branches in the compilers for superscalar processors is presented. The technique consists of three major steps. The first step transforms conditional branches into equivalent expressions using algebraic laws. The second step searches all possible instruction sequences for those expressions using GSO of Granlund/Kenner. Finally an optimal sequence that has the least dynamic count for the target superscalar processor is selected from the GSO output. Experiment result shows that for each conditional branch in the input program matched by one of the optimization patterns, the proposed technique outperforms more than 25% speedup of execution time over the original code when the GNU C compiler and the SuperSPARC processor are used.


Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from September 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
K. M. Ho and C. Wan, "Conditional Branch Optimization in the Compilers for Superscalar Processors," The Transactions of the Korea Information Processing Society (1994 ~ 2000), vol. 2, no. 2, pp. 264-276, 1995. DOI: 10.3745/KIPSTE.1995.2.2.264.

[ACM Style]
Kim Myung Ho and Choi Wan. 1995. Conditional Branch Optimization in the Compilers for Superscalar Processors. The Transactions of the Korea Information Processing Society (1994 ~ 2000), 2, 2, (1995), 264-276. DOI: 10.3745/KIPSTE.1995.2.2.264.