We gratefully acknowledge support from
the Simons Foundation and member institutions.
Full-text links:

Download:

Current browse context:

cs.SE

Change to browse by:

cs

References & Citations

DBLP - CS Bibliography

Bookmark

(what is this?)
CiteULike logo BibSonomy logo Mendeley logo del.icio.us logo Digg logo Reddit logo

Computer Science > Software Engineering

Title: Java JIT Testing with Template Extraction

Abstract: We present LeJit, a template-based framework for testing Java just-in-time (JIT) compilers. Like recent template-based frameworks, LeJit executes a template -- a program with holes to be filled -- to generate concrete programs given as inputs to Java JIT compilers. LeJit automatically generates template programs from existing Java code by converting expressions to holes, as well as generating necessary glue code (i.e., code that generates instances of non-primitive types) to make generated templates executable. We have successfully used LeJit to test a range of popular Java JIT compilers, revealing five bugs in HotSpot, nine bugs in OpenJ9, and one bug in GraalVM. All of these bugs have been confirmed by Oracle and IBM developers, and 11 of these bugs were previously unknown, including two CVEs (Common Vulnerabilities and Exposures). Our comparison with several existing approaches shows that LeJit is complementary to them and is a powerful technique for ensuring Java JIT compiler correctness.
Comments: 23 pages, 6 figures, 8 tables, accepted in FSE 2024 (Research Papers track)
Subjects: Software Engineering (cs.SE)
DOI: 10.1145/3643777
Cite as: arXiv:2403.11281 [cs.SE]
  (or arXiv:2403.11281v2 [cs.SE] for this version)

Submission history

From: Zhiqiang Zang [view email]
[v1] Sun, 17 Mar 2024 17:39:27 GMT (128kb,D)
[v2] Fri, 26 Apr 2024 07:14:31 GMT (128kb,D)

Link back to: arXiv, form interface, contact.