In:
ACM Transactions on Programming Languages and Systems, Association for Computing Machinery (ACM), Vol. 30, No. 4 ( 2008-07), p. 1-21
Abstract:
Java Virtual Machines (JVMs) traditionally perform bytecode verification by way of an iterative dataflow analysis. Bytecode verification is necessary to ensure type safety because temporary variables in the JVM are not statically typed. We present an alternative verification mechanism that transforms JVM bytecode into Static Single Assignment Form (SSA) and thereby propagates definitions directly to uses. Type checking at control flow merge points can then be performed in a single pass. Our prototype implementation of the new algorithm is faster than the standard JVM bytecode verifier. It has the additional benefit of generating SSA as a side effect, which may be immediately useful for a subsequent dynamic compilation stage.
Type of Medium:
Online Resource
ISSN:
0164-0925
,
1558-4593
DOI:
10.1145/1377492.1377496
Language:
English
Publisher:
Association for Computing Machinery (ACM)
Publication Date:
2008
detail.hit.zdb_id:
445931-3
detail.hit.zdb_id:
2006323-4
Permalink