A Two-Phase Optimization Approach for Condition Codes in a Machine Adaptable Dynamic Binary Translator
Los Angeles, CA
March 31, 2009 to April 2, 2009
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/CSIE.2009.275
Condition codes (CCs) are special architected bits that characterize instruction results. Reducing the overhead of emulating condition codes is a critical performance issue in binary translation. In this paper, we propose a two-phase optimization approach for condition codes, which has been implemented in Crossbit—a machine adaptable dynamic binary translator (DBT). First, redundant flag computing code in a basic block is reduced based on the information collected by Crossbit when the block is identified. Then, lazy evaluation technique is used inter basic blocks, which make the condition codes emulation more efficient. Experimental results show that this method works much better than the straightforward emulation method—it eliminate the code size more than 20% and have a performance gain nearly 40% in Crossbit. The data proves that the approach is effective to remove the redundant code and to increase the performance of the translated code.
Zheng Yuyu, Chu Chao, Liang Alei, "A Two-Phase Optimization Approach for Condition Codes in a Machine Adaptable Dynamic Binary Translator", CSIE, 2009, 2009 WRI World Congress on Computer Science and Information Engineering, CSIE, 2009 WRI World Congress on Computer Science and Information Engineering, CSIE 2009, pp. 29-32, doi:10.1109/CSIE.2009.275