2010
DOI: 10.1002/spe.1028
|View full text |Cite
|
Sign up to set email alerts
|

Safe, multiphase bounds check elimination in Java

Abstract: As part of its type‐safety regime, Java's semantics require precise exceptions at runtime when programs attempt out‐of‐bound array accesses. This paper describes a Java implementation that utilizes a multiphase approach to identifying safe array accesses. This approach reduces runtime overhead by spreading the out‐of‐bounds checking effort across multiple phases of compilation and execution: production of mobile code from source code, just‐in‐time (JIT) compilation in the virtual machine, application method in… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2

Citation Types

0
2
0

Year Published

2014
2014
2017
2017

Publication Types

Select...
1
1
1

Relationship

0
3

Authors

Journals

citations
Cited by 3 publications
(2 citation statements)
references
References 63 publications
(65 reference statements)
0
2
0
Order By: Relevance
“…Bounds check elimination, which reduces the runtime overhead incurred in checking out-of-bounds array accesses for Java, has been extensively studied in the literature [5], [14], [15], [32], [40], [42], [54], [55]. One common approach relies on solving a set of constraints formulated based on the program code [5], [15], [40], [42].…”
Section: Bounds Check Eliminationmentioning
confidence: 99%
See 1 more Smart Citation
“…Bounds check elimination, which reduces the runtime overhead incurred in checking out-of-bounds array accesses for Java, has been extensively studied in the literature [5], [14], [15], [32], [40], [42], [54], [55]. One common approach relies on solving a set of constraints formulated based on the program code [5], [15], [40], [42].…”
Section: Bounds Check Eliminationmentioning
confidence: 99%
“…One common approach relies on solving a set of constraints formulated based on the program code [5], [15], [40], [42]. Another is to speculatively assume that some checks are unnecessary and generate checkfree specialized code, with execution reverted to unoptimized code when the assumption fails [14], [54], [55].…”
Section: Bounds Check Eliminationmentioning
confidence: 99%