Magic-sets transformation for the analysis of Java']Java bytecode

被引:0
|
作者
Payet, Etienne [1 ]
Spot, Fausto [2 ]
机构
[1] Univ Reunion, IREMIA, St Denis, France
[2] Univ Verona, Dipartimento Informat, I-37100 Verona, Italy
来源
STATIC ANALYSIS, PROCEEDINGS | 2007年 / 4634卷
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Denotational static analysis of Java bytecode has a nice and clean compositional definition and an efficient implementation with binary decision diagrams. But it models only the functional i.e., input/output behaviour of a program P, not enough if one needs P's internal behaviours i.e., from the input to some internal program points. We overcome this limitation with a technique used up to now for logic programs only. It adds new magic blocks of code to P, whose functional behaviours are the internal behaviours of P. We prove this transformation correct with an operational semantics. We define an equivalent denotational semantics, whose denotations for the magic blocks are hence the internal behaviours of P. We implement our transformation and instantiate it with abstract domains modelling sharing of two variables and non-cyclicity of variables. We get a static analyser for full Java bytecode that is faster and scales better than another operational pair-sharing analyser and a constraint-based pointer analyser.
引用
收藏
页码:452 / +
页数:3
相关论文
共 50 条
  • [21] Modeling the Java']Java Bytecode Verifier
    Reynolds, Mark C.
    SCIENCE OF COMPUTER PROGRAMMING, 2013, 78 (03) : 327 - 342
  • [22] Java']Java bytecode verification: An overview
    Leroy, X
    COMPUTER AIDED VERIFICATION, PROCEEDINGS, 2001, 2102 : 265 - 285
  • [23] Deadlock Detection of Java']Java Bytecode
    Laneve, Cosimo
    Garcia, Abel
    LOGIC-BASED PROGRAM SYNTHESIS AND TRANSFORMATION (LOPSTR 2017), 2018, 10855 : 37 - 53
  • [24] Integrated Java']Java Bytecode Verification
    Gal, Andreas
    Probst, Christian W.
    Franz, Michael
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 131 : 27 - 38
  • [25] Reverse execution of Java']Java bytecode
    Cook, JJ
    COMPUTER JOURNAL, 2002, 45 (06): : 608 - 619
  • [26] Towards a General Framework for Formal Reasoning about Java']Java Bytecode Transformation
    Lounas, Razika
    Mezghiche, Mohamed
    Lanet, Jean-Louis
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2013, (122): : 63 - 73
  • [27] AUTOMATED TERMINATION ANALYSIS OF JAVA']JAVA BYTECODE BY TERM REWRITING
    Otto, Carsten
    Brockschmidt, Marc
    von Essen, Christian
    Giesl, Juergen
    PROCEEDINGS OF THE 21ST INTERNATIONAL CONFERENCE ON REWRITING TECHNIQUES AND APPLICATIONS (RTA'10), 2010, 6 : 259 - 275
  • [28] Removing Useless Variables in Cost Analysis of Java']Java Bytecode
    Albert, E.
    Arenas, P.
    Genaim, S.
    Puebla, G.
    Zanardini, D.
    APPLIED COMPUTING 2008, VOLS 1-3, 2008, : 368 - +
  • [29] Mobile code security by Java']Java bytecode dependence analysis
    Bian, G
    Nakayama, K
    Kobayashi, Y
    Maekawa, M
    IEEE INTERNATIONAL SYMPOSIUM ON COMMUNICATIONS AND INFORMATION TECHNOLOGIES 2004 (ISCIT 2004), PROCEEDINGS, VOLS 1 AND 2: SMART INFO-MEDIA SYSTEMS, 2004, : 923 - 926
  • [30] An Efficient, Parametric Fixpoint Algorithm for Analysis of Java']Java Bytecode
    Mendez, Mario
    Navas, Jorge
    Hermenegildo, Manuel V.
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 190 (01) : 51 - 66