Practical and effective higher-order optimizations

  title={Practical and effective higher-order optimizations},
  author={Lars Bergstrom and Matthew Fluet and Matthew Le and John H. Reppy and Nora Sandler},
Inlining is an optimization that replaces a call to a function with that function's body. This optimization not only reduces the overhead of a function call, but can expose additional optimization opportunities to the compiler, such as removing redundant operations or unused conditional branches. Another optimization, copy propagation, replaces a redundant copy of a still-live variable with the original. Copy propagation can reduce the total number of live variables, reducing register pressure… CONTINUE READING