Skip to content

Code layout algorithm rework.

Andreas Klebinger requested to merge AndreasK/ghc:loopLevel into master

The gist of this is:

  • Use dominator analysis to determine loop levels.
  • Based on loop information and branching probabilities determine edge frequencies.
  • Use edge frequencies to create a better code layout.

Currently this results in 1.9% better performance at the cost of 2% longer compile times on nofib.

Edited by Andreas Klebinger

Merge request reports