Cited by 49Software Testing and Debugging TechniquesSoftware Engineering ResearchLogic, programming, and type systems

An Empirical Study of Bugs in WebAssembly Compilers

Romano, Alan, Liu, Xinyue, Kwon, Yonghwi, Wang, Weihang·2021·2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE)

Abstract

WebAssembly is the newest programming language for the Web. It defines a portable bytecode format for use as a compilation target for programs developed in high-level languages such as C, C++, and Rust. As a result, WebAssembly binaries are generally created by WebAssembly compilers rather than being written manually. To port native code to the Web, WebAssembly compilers need to address the differences between the source and target languages and dissimilarities in their execution environments. A deep understanding of the bugs in WebAssembly compilers can help compiler developers determine where to focus development and testing efforts. In this paper, we conduct two empirical studies to understand the characteristics of the bugs found in WebAssembly compilers. First, we perform a qualitative analysis of bugs in Emscripten, the most widely-used WebAssembly compiler. We investigate 146 bug reports in Emscripten related to the unique challenges WebAssembly compilers encounter compared with traditional compilers. Second, we provide a quantitative analysis of 1,054 bugs in three open-source WebAssembly compilers, AssemblyScript, Emscripten, and Rustc/Wasm-Bindgen. We analyze these bugs along three dimensions: lifecycle, impact, and sizes of bug-inducing inputs and bug fixes. These studies deepen our understanding of WebAssembly compiler bugs. We hope that the findings of our study will shed light on opportunities to design practical tools for testing and debugging WebAssembly compilers.

Integrity signals

Registry

Crossref · 10.1109/ase51524.2021.9678776

Cites

36 of 36 references verified0 citation errors · 0 not checkable

Statistics

Recomputing p-values needs the paper’s full text.

Claims the paper makes

This paper’s full text isn’t openly available, so its claims and self-check weren’t run. The registry and citation checks still apply.

Claims other papers make about this one

Each is checked against this paper’s own text: does it say what the citing paper says it does?

  • Traditional benchmarking faces challenges like benchmark manipulation, where systems are engineered to perform exceptionally well on specific benchmarks without delivering proportional real-world performance.

    “However, traditional benchmarking faces challenges like benchmark manipulation, where systems are engineered to perform exceptionally well on specific benchmarks without delivering proportional real-world performance [20].”

Cites

Flagged first, then by citations

Cited by

Sorted by citations

Authors
Romano, A., Liu, X., Kwon, Y., & Wang, W.
Affiliations
  • University at Buffalo, State University of New York (US)
  • University of Virginia (US)
Venue
2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE)
Publisher
IEEE
Published
2021-11
Pages
42-54
OpenAlex
W4206578767
Cited by
49
References
36
Citations by year
2026: 7 · 2025: 17 · 2024: 11 · 2023: 11 · 2022: 3
FWCI
4.70
Type
conference paper
Language
en
Open access
closed
Locations
IEEE/ACM International Conference on Automated Software Engineering (ASE) (publishedVersion)
Topics
  • Physical Sciences › Computer Science › Software › Software Testing and Debugging Techniques
  • Physical Sciences › Computer Science › Information Systems › Software Engineering Research
  • Physical Sciences › Computer Science › Artificial Intelligence › Logic, programming, and type systems
Keywords
WebAssembly, compiler bugs, Emscripten, bug reports, compiler testing

About these checks

Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.

Statistics and arithmetic are recomputed, not judged.

Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.

What counts as a claim ›How we measure confidence ›How we check this ›

Are you an author, or do you see a problem with this page? Request a review