An Efficient Code Expansion from EM to SPARC Code


The Transactions of the Korea Information Processing Society (1994 ~ 2000), Vol. 4, No. 10, pp. 2596-2604, Oct. 1997
10.3745/KIPSTE.1997.4.10.2596,   PDF Download:

Abstract

There are two kinds of backends in ACK : code generator(full-fledged backend) and code expander(fast backend). Code generators generate target code using string pattern matching and code expanders generate target code using macro expansion. ACK translates EM to SPARC code using code expander. The corresponding SPARC code sequences for a EM code are generated and then push-pop optimization is performed. But, there is the problem of maintaining hybrid stack. And code expander is not considered to passes parameters of a procedure call through register windows. The purpose of this paper is to improve SPARC code quality. We suggest a method of SPARC cod generation using EM tree. Our method is divided into two phases : EM tree building phase and code expansion phase. The EM tree building phase creates the EM tree and code expansion phase translates it into SPARC code. EM tree is designed to pass parameters of a procedure call through register windows. To remove hybrid stack, we extract an additional information from EM code. We improved many disadvantages that arise from code expander in ACK.


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]
O. S. Man and Y. Y. Shick, "An Efficient Code Expansion from EM to SPARC Code," The Transactions of the Korea Information Processing Society (1994 ~ 2000), vol. 4, no. 10, pp. 2596-2604, 1997. DOI: 10.3745/KIPSTE.1997.4.10.2596.

[ACM Style]
Oh Se Man and Yun Young Shick. 1997. An Efficient Code Expansion from EM to SPARC Code. The Transactions of the Korea Information Processing Society (1994 ~ 2000), 4, 10, (1997), 2596-2604. DOI: 10.3745/KIPSTE.1997.4.10.2596.