2020/04/29 by Elvira Albert, Jesús Correas, Albert, Elvira +7 · 1 citation
Computer Science · Decision Sciences · #Auction Theory and Applications #Blockchain Technology Applications and Security #Distributed systems and fault tolerance #FOS: Computer and information sciences #Programming Languages (cs.PL) #cs.PL
paper · pdf · doi:10.48550/arxiv.2004.14437
openalex publication_date 2020/04/29 · arxiv created 2020/10/05 · arxiv updated 2020/10/06 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
The EVM language is a simple stack-based language with words of 256 bits, with one significant difference between the EVM and other virtual machine languages (like Java Bytecode or CLI for .Net programs): the use of the stack for saving the jump addresses instead of having it explicit in the code of the jumping instructions. Static analyzers need the complete control flow graph (CFG) of the EVM program in order to be able to represent all its execution paths. This report addresses the problem of obtaining a precise and complete stack-sensitive CFG by means of a static analysis, cloning the blocks that might be executed using different states of the execution stack. The soundness of the analysis presented is proved.