arrow
返回

Decompilation of Java bytecode to Prolog by partial evaluation

delete2009-10-01
delete19
PRE
AI
M
Miguel Gómez‐Zamalloa *
E
Elvira Albert
G
Germán Puebla
DOI:10.1016/j.infsof.2009.04.010delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Reasoning about Java bytecode (JBC) is complicated due to its unstructured control-flow, the use of three-address code combined with the use of an operand stack, etc. Therefore, many static analyzers and model checkers for JBC first convert the code into a higher-level representation. In contrast to traditional decompilation, such representation is often not Java source, but rather some intermediate language which is a good input for the subsequent phases of the tool. Interpretive decompilation consists in partially evaluating an interpreter for the compiled language (in this case JBC) written in a high-level language with respect to the code to be decompiled. There have been proofs-of-concept that interpretive decompilation is feasible, but there remain important open issues when it comes to decompile a real language such as JBC. This paper presents, to the best of our knowledge, the first modular scheme to enable interpretive decompilation of a realistic programming language to a high-level representation, namely of JBC to Prolog. We introduce two notions of optimality, which together require that decompilation does not generate code more than once for each program point. We demonstrate the impact of our modular approach and optimality issues on a series of realistic benchmarks. Decompilation times and decompiled program sizes are! linear with the size of the input bytecode program. This demonstrates empirically the scalability, of modular decompilation of JBC by partial evaluation. (C) 2009 Elsevier B.V. All rights reserved.
Keyword:
Program transformation
Partial evaluation
Decompilation
Interpreters
Java bytecode
Logic programming
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Information and Software Technology 封面图
Information and Software Technology
IF:
4.3
论文数:
3.8K
被引数:
7.7K

机构

U
Universidad Politecnica de Madrid
学者数:
1.4W
论文数: 1.2W
被引数: 10
C
Complutense University of Madrid
学者数:
2.6W
论文数: 2.2W
被引数: 31
引用论文

引用论文

err分享
err收藏
err分享
err收藏
p-Cresyl glucuronide is a major metabolite of p-cresol in mouse: in contrast to p-cresyl sulphate, p-cresyl glucuronide fails to promote insulin resistance
err2017-08-03
err0
errOAAI
errLaetitia Koppe; Pascaline M Alix; Marine L Croze; Stéphane Chambert; Raymond Vanholder; Griet Glorieux; Denis Fouque; Christophe O Soulage
err分享
err收藏
Hybrid Fabrication of Biomimetic Meniscus Scaffold by 3D Printing and Parallel Electrospinning
err2019-01-01
err0
errOAAI
errDilshan Sooriyaarachchi; Jiaxin Wu; Aixin Feng; Maksud Islam; George Z Tan
err分享
err收藏
Regional balance between glutamate+glutamine and GABA+ in the resting human brain
err2020-10-01
err0
errOAAI
errAdam Steel; Mark Mikkelsen; Richard A.E. Edden; Caroline E. Robertson
err分享
err收藏
没有更多内容