Please use this identifier to cite or link to this item:
https://research.matf.bg.ac.rs/handle/123456789/3036| Title: | Extensible Java Bytecode Data-Flow Analysis JVMCI Framework | Authors: | Stefanović, Aleksandar Ristović, Ivan Vujošević Janičić, Milena |
Affiliations: | Informatics and Computer Science Informatics and Computer Science Informatics and Computer Science |
Keywords: | Static analysis;bytecode analysis;Java;GraalVM | Issue Date: | 2025 | Rank: | M64 | Publisher: | Beograd : Matematički fakultet | Related Publication(s): | XV Simpozijum "Matematika i primene" : Knjiga apstrakata | Conference: | Simpozijum "Matematika i primene" (15 ; 2025 ; Beograd) | Abstract: | Static program analysis is the analysis of programs without their execution. It has various applications, including error detection, code optimization, code style compliance checking, and formatting In the area of compiler development, an often-used static analysis technique is data-flow analysis [1]. Based on the provided abstract program state representation, instruction transfer functions, and the control-flow merge function, a data-flow analysis computes an abstract execution state at each point of the program. We present an extensible, intraprocedural data-flow analysis framework for Java bytecode and its implementation within GraalVM Native Image [2], an ahead-of-time compiler for Java programs. Unlike existing and widely used Java bytecode manipulation and analysis libraries, such as ASM 4.0 [3], the implemented framework relies on the Java Virtual Machine Compiler Interface (JVMCI) for access to method bytecode. The framework is currently used for static resolution of reflective method invocations in GraalVM [4, 5], and arbitrary forward data-flow analyses can be implemented on top of it. |
URI: | https://research.matf.bg.ac.rs/handle/123456789/3036 |
| Appears in Collections: | Research outputs |
Show full item record
Google ScholarTM
Check
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.