Skip to content

Latest commit

 

History

History
2175 lines (2025 loc) · 116 KB

compilers.correctness.md

File metadata and controls

2175 lines (2025 loc) · 116 KB

C++ links: compilers - correctness

See also:

Contents


General

Debugging

Debugging of compilers bugs

See also: Section 6.3 (Compiler Bug Debugging) in "A Survey of Compiler Testing"; Compilers Correctness: Testing: Reduction; Debugging: Readings: Delta Debugging

Debugging: 2023

Debugging: 2022

  • LocSeq: Automated Localization for Compiler Optimization Sequence Bugs of LLVM
  • Modeling Code Manipulation in JIT Compilers
    • SOAP 2022: ACM SIGPLAN International Workshop on the State Of the Art in Program Analysis
    • HeuiChan Lim, Xiyu Kang, Saumya Debray
    • https://doi.org/10.1145/3520313.3534656
    • "This paper discusses a different approach to analyzing JIT compiler optimization behaviors, based on using dynamic analysis to construct abstract models of the JIT compiler’s optimizer and back end. By comparing the models obtained for buggy and non-buggy executions of the JIT compiler, we can pinpoint the components of the JIT compiler’s internal representation that have been affected by the bug; this can then be mapped back to identify the buggy code."

Debugging: 2021

Debugging: 2020

History

Lectures


Calculation

Calculation: 2020s

Calculation: 2010s

Calculation: 2000s

  • From Interpreter to Compiler and Virtual Machine: A Functional Derivation

Calculation: 1990s

Calculation: 1980s

Calculation: 1970s


Type Preservation

Type Preservation: Intrinsically Typed Compilation

Type Preservation: Testing


Testing

See also: Testing

Testing: Readings

Testing: Readings: 2024

Testing: Readings: 2023

Testing: Readings: 2022

Testing: Readings: 2021

Testing: Readings: 2020

Testing: Readings: 2017

Testing: Readings: Fuzzing

See also: Testing: Fuzzing

Testing: Readings: Fuzzing: 2023

Testing: Readings: Fuzzing: 2022

Testing: Readings: Fuzzing: 2021

Testing: Readings: Fuzzing: 2020

Testing: Readings: Fuzzing: 2019

Testing: Readings: Fuzzing: 2018

Testing: Readings: Fuzzing: 2017

Testing: Readings: Fuzzing: 2014

Testing: Readings: Fuzzing: 2013

Testing: Readings: Generation

Testing: Readings: Performance Optimization

Testing: Readings: Performance Optimization: 2024

Testing: Readings: Performance Optimization: 2023

Testing: Readings: Performance Optimization: Loops

Testing: Readings: Performance Optimization: Vectorization

Testing: Readings: Reduction

See also: Testing: Reduction

Testing: Readings: Reduction: LLVM

Testing: Software

Testing: Software: Generation

Testing: Software: Performance Optimization

Testing: Software: Performance Optimization: Parallelization

Testing: Software: Performance Optimization: Vectorization

Testing: Software: Reduction

Testing: Talks

Testing: Talks: Performance Optimization


Validation

Validation: Including translation validation, equivalence checking.

Validation: 2024

Validation: 2022

Validation: 2021

Validation: 2020

Validation: 2019

Validation: 2017

Validation: 2016

Validation: 2011-1978


Verification

Verification: 2024

Verification: 2023

Verification: 2022

Verification: 2021

Verification: 2020

Verification: Talks