ALIVE-INFER: Data-Driven Precondition Inference for Peephole Optimizations in LLVM
Peephole optimizations are a common source of compiler bugs. Compiler developers typically transform an incorrect peephole optimization into a valid one by strengthening the precondition. This process is challenging and tedious. This paper proposes, PInfer, a data-driven approach for inferring preconditions for peephole optimizations expressed in Alive. PInfer generates positive and negatives examples for an optimization, enumerates predicates on-demand, and learns a set of predicates that separate the positive and negative examples. PInfer repeats this process until it finds a precondition that ensures the validity of the optimization. PInfer reports both the weakest precondition and a set of succinct partial preconditions to the developer. The PInfer prototype successfully generates either the partial precondition or the weakest precondition for 164 out of 174 peephole optimizations in the Alive suite. It also generates preconditions that are weaker than LLVM’s precondition for 73 optimizations. We also demonstrate the applicability of this technique to generalize 54 concrete expression directed acyclic graphs generated by an LLVM IR-based super optimizer.
Mon 19 Jun Times are displayed in time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:50 - 12:30: Compiler OptimizationsPLDI Research Papers at Aula Master Chair(s): Uday BondhugulaIndian Institute of Science | |||
10:50 - 11:15 Talk | Cache Locality Optimization for Recursive Programs PLDI Research Papers | ||
11:15 - 11:40 Talk | Fusing Effectful Comprehensions PLDI Research Papers | ||
11:40 - 12:05 Talk | Generalizations of the Theory and Deployment of Triangular Inequality for Compiler-Based Strength Reduction PLDI Research Papers Yufei DingNorth Carolina State University, Lin NingNorth Carolina State University, Hui GuanNorth Carolina State University, Xipeng ShenNorth Carolina State University Media Attached | ||
12:05 - 12:30 Talk | ALIVE-INFER: Data-Driven Precondition Inference for Peephole Optimizations in LLVM PLDI Research Papers Media Attached |