Cited by 159Logic, programming, and type systemsParallel Computing and Optimization TechniquesEmbedded Systems Design Techniques

Superoptimizer: a look at the smallest program

Open access
Massalin, Henry·1987·Proceedings of the second international conference on Architectual support for programming languages and operating systems

Abstract

Given an instruction set, the superoptimizer finds the shortest program to compute a function. Startling programs have been generated, many of them engaging in convoluted bit-fiddling bearing little resemblance to the source programs which defined the functions. The key idea in the superoptimizer is a probabilistic test that makes exhaustive searches practical for programs of useful size. The search space is defined by the processor's instruction set, which may include the whole set, but it is typically restricted to a subset. By constraining the instructions and observing the effect on the output program, one can gain insight into the design of instruction sets. In addition, superoptimized programs may be used by peephole optimizers to improve the quality of generated code, or by assembly language programmers to improve manually written code.

Integrity signals

Registry

Crossref · 10.1145/36206.36194

Cites

3 of 3 references verified0 citation errors · 0 not checkable

Statistics

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

Claims the paper makes

We couldn’t retrieve this paper’s full text, 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?

  • Searching semantically equivalent code requires extra code compilation and execution costs, which is unrealistic in a large database.

    “Searching semantically equivalent code requires extra code compilation and execution costs (Massalin, 1987; Churchill et al., 2019), which is unrealistic in a large database.”

    From ReACC: A Retrieval-Augmented Code Completion Framework (2022) · cites this paper as Massalin, 1987

Cites

Flagged first, then by citations

Cited by

Sorted by citations

Authors
Massalin, H.
Affiliations
Columbia University (US)
Corresponding author
Massalin, Henry
Venue
Proceedings of the second international conference on Architectual support for programming languages and operating systems
Publisher
ACM
Published
1987-10
Pages
122-126
OpenAlex
W4301666354
Cited by
154
References
3
Citations by year
2026: 4 · 2025: 6 · 2024: 4 · 2023: 5 · 2022: 5 · 2021: 11 · 2020: 4 · 2019: 4 · 2018: 6 · 2017: 5 · 2016: 15 · 2015: 12 · 2014: 6 · 2013: 10
FWCI
1.27
Type
conference paper
Language
en
Open access
Locations
International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) (publishedVersion)
Topics
  • Physical Sciences › Computer Science › Artificial Intelligence › Logic, programming, and type systems
  • Physical Sciences › Computer Science › Hardware and Architecture › Parallel Computing and Optimization Techniques
  • Physical Sciences › Computer Science › Hardware and Architecture › Embedded Systems Design Techniques
Keywords
superoptimization, instruction set design, exhaustive search, probabilistic search, program synthesis, peephole optimization, assembly language, bit manipulation, code generation

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