Write a Blog >>
PLDI 2021
Sun 20 - Sat 26 June 2021 PLDI
Fri 25 Jun 2021 09:15 - 09:20 at PLDI-B - Talks 5B: Defect Detection and Repair
Fri 25 Jun 2021 21:15 - 21:20 at PLDI-B - Talks 5B: Defect Detection and Repair

JavaScript (JS) is a popular, platform-independent programming language. To ensure the interoperability of JS programs across different platforms, the implementation of a JS engine should conform to the ECMAScript standard. However, doing so is challenging as there are many subtle definitions of API behaviors, and the definitions keep evolving.

We present COMFORT, a new compiler fuzzing framework for detecting JS engine bugs and behaviors that deviate from the ECMAScript standard. COMFORT leverages the recent advance in deep learning-based language models to automatically generate JS test code. As a departure from prior fuzzers, COMFORT utilizes the well-structured ECMAScript specifications to automatically generate test data along with the test programs to expose bugs that could be overlooked by the developers or manually written test cases. COMFORT then applies differential testing methodologies on the generated test cases to expose standard conformance bugs. We apply COMFORT to ten mainstream JS engines. In 200 hours of automated concurrent testing runs, we discover bugs in all tested JS engines. We had identified 158 unique JS engine bugs, of which 129 have been verified, and 115 have already been fixed by the developers. Furthermore, 21 of the COMFORT-generated test cases have been added to Test262, the official ECMAScript conformance test suite.

Fri 25 Jun

Displayed time zone: Eastern Time (US & Canada) change

09:00 - 09:40
Talks 5B: Defect Detection and RepairPLDI at PLDI-B +12h
09:00
5m
Talk
Test-Case Reduction and Deduplication Almost for Free with Transformation-Based Compiler Testing
PLDI
Alastair F. Donaldson Imperial College London, Paul Thomson Google, Vasyl Teliman National Technical University of Ukraine, Stefano Milizia Imperial College London, André Perez Maselco Federal University of ABC, Antoni Karpiński Warsaw University of Technology
DOI
09:05
5m
Talk
Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction
PLDI
Gefei Zuo University of Michigan, Jiacheng Ma University of Michigan, Andrew Quinn University of Michigan, Pramod Bhatotia TU Munich, Pedro Fonseca Purdue University, Baris Kasikci University of Michigan
DOI
09:10
5m
Talk
Concolic Program Repair
PLDI
Ridwan Salihin Shariffdeen National University of Singapore, Yannic Noller National University of Singapore, Lars Grunske Humboldt University of Berlin, Abhik Roychoudhury National University of Singapore
DOI Pre-print
09:15
5m
Talk
Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing
PLDI
Guixin Ye Northwest University, Zhanyong Tang Northwest University, Shin Hwei Tan Southern University of Science and Technology, Dingyi Fang Northwest University, Xiaoyang Sun University of Leeds, Lizhong Bian Alipay, Songfang Huang Alibaba DAMO Academy, Haibo Wang University of Leeds, Zheng Wang University of Leeds, UK
DOI
09:20
5m
Talk
Path-Sensitive Sparse Analysis without Path Conditions
PLDI
Qingkai Shi Hong Kong University of Science and Technology, Peisen Yao Hong Kong University of Science and Technology, Rongxin Wu Xiamen University, Charles Zhang Hong Kong University of Science and Technology
DOI
09:25
5m
Talk
Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring
PLDI
Kia Rahmani Purdue University, Kartik Nagar IIT Madras, Benjamin Delaware Purdue University, Suresh Jagannathan Purdue University
DOI
09:30
5m
Talk
SyRust: Automatic Testing of Rust Libraries with Semantic-Aware Program Synthesis
PLDI
Yoshiki Takashima Carnegie Mellon University, Ruben Martins Carnegie Mellon University, Limin Jia Carnegie Mellon University, Corina S. Păsăreanu Carnegie Mellon University
DOI
09:35
5m
Talk
When Threads Meet Events: Efficient and Precise Static Race Detection with Origins
PLDI
Bozhen Liu Texas A&M University, Peiming Liu Texas A&M University, Yanze Li Texas A&M University, Chia-Che Tsai Texas A&M University, Dilma Da Silva Texas A&M University, Jeff Huang Texas A&M University
DOI
21:00 - 21:40
Talks 5B: Defect Detection and RepairPLDI at PLDI-B
21:00
5m
Talk
Test-Case Reduction and Deduplication Almost for Free with Transformation-Based Compiler Testing
PLDI
Alastair F. Donaldson Imperial College London, Paul Thomson Google, Vasyl Teliman National Technical University of Ukraine, Stefano Milizia Imperial College London, André Perez Maselco Federal University of ABC, Antoni Karpiński Warsaw University of Technology
DOI
21:05
5m
Talk
Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction
PLDI
Gefei Zuo University of Michigan, Jiacheng Ma University of Michigan, Andrew Quinn University of Michigan, Pramod Bhatotia TU Munich, Pedro Fonseca Purdue University, Baris Kasikci University of Michigan
DOI
21:10
5m
Talk
Concolic Program Repair
PLDI
Ridwan Salihin Shariffdeen National University of Singapore, Yannic Noller National University of Singapore, Lars Grunske Humboldt University of Berlin, Abhik Roychoudhury National University of Singapore
DOI Pre-print
21:15
5m
Talk
Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing
PLDI
Guixin Ye Northwest University, Zhanyong Tang Northwest University, Shin Hwei Tan Southern University of Science and Technology, Dingyi Fang Northwest University, Xiaoyang Sun University of Leeds, Lizhong Bian Alipay, Songfang Huang Alibaba DAMO Academy, Haibo Wang University of Leeds, Zheng Wang University of Leeds, UK
DOI
21:20
5m
Talk
Path-Sensitive Sparse Analysis without Path Conditions
PLDI
Qingkai Shi Hong Kong University of Science and Technology, Peisen Yao Hong Kong University of Science and Technology, Rongxin Wu Xiamen University, Charles Zhang Hong Kong University of Science and Technology
DOI
21:25
5m
Talk
Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring
PLDI
Kia Rahmani Purdue University, Kartik Nagar IIT Madras, Benjamin Delaware Purdue University, Suresh Jagannathan Purdue University
DOI
21:30
5m
Talk
SyRust: Automatic Testing of Rust Libraries with Semantic-Aware Program Synthesis
PLDI
Yoshiki Takashima Carnegie Mellon University, Ruben Martins Carnegie Mellon University, Limin Jia Carnegie Mellon University, Corina S. Păsăreanu Carnegie Mellon University
DOI
21:35
5m
Talk
When Threads Meet Events: Efficient and Precise Static Race Detection with Origins
PLDI
Bozhen Liu Texas A&M University, Peiming Liu Texas A&M University, Yanze Li Texas A&M University, Chia-Che Tsai Texas A&M University, Dilma Da Silva Texas A&M University, Jeff Huang Texas A&M University
DOI