• DocumentCode
    2995191
  • Title

    GSM: An Efficient Code Generation Algorithm for Dynamic Binary Translator

  • Author

    Chen, Xuhao ; Zheng, Zhong ; Shen, Li ; Chen, Wei ; Wang, Zhiying

  • Author_Institution
    Sch. of Comput., Nat. Univ. of Defense Technol., Changsha, China
  • fYear
    2011
  • fDate
    9-11 Dec. 2011
  • Firstpage
    231
  • Lastpage
    235
  • Abstract
    Dynamic binary translation is an effective way to address binary compatibility problem. Embedded systems and other novel RISC ISAs are developing fast without consideration of the binary compatibility with off-the-shelf x86 applications, making dynamic binary translator (DBT) from CISC to RISC more important. However, dynamic code generation is still inefficient due to the code expansion. Conventional code generators in DBTs use one-to-many mapping scheme between source and target code which cannot take full advantage of the target ISA. We propose a novel lightweight code generation algorithm GSM (Greedy Sub graph Mapping), which can generate compact code with low overhead using many-to-one mapping. GSM is implemented and evaluated in a DBT prototype system called TransARM. Experimental results demonstrate that GSM generates higher quality target code compared to a conventional implementation, which brings code expansion rate close to 1.3. Moreover, GSM causes slightly extra overhead and negligible slowdown of translation, and enables 10% performance improvement for target code execution.
  • Keywords
    embedded systems; graph theory; greedy algorithms; program compilers; program interpreters; reduced instruction set computing; CISC; GSM; RISC ISA; TransARM; binary compatibility problem; code generation algorithm; dynamic binary translator; embedded systems; greedy subgraph mapping; one-to-many mapping scheme; source code; target code; Algorithm design and analysis; GSM; Heuristic algorithms; Optimization; Reduced instruction set computing; code generation; data flow graph; dynamic binary translation; greedy subgraph mapping; many-to-one mapping;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Architectures, Algorithms and Programming (PAAP), 2011 Fourth International Symposium on
  • Conference_Location
    Tianjin
  • Print_ISBN
    978-1-4577-1808-3
  • Type

    conf

  • DOI
    10.1109/PAAP.2011.34
  • Filename
    6128508