small reworking of the loop-breaker-choosing algorithm
authorSimon Marlow <simonmar@microsoft.com>
Tue, 9 Oct 2007 14:53:05 +0000 (14:53 +0000)
committerSimon Marlow <simonmar@microsoft.com>
Tue, 9 Oct 2007 14:53:05 +0000 (14:53 +0000)
commit1cc3d6d110594517f2c7adc72d7b4f99db287277
treeba68d33d850d6f75afcd7020bd02a14dcf941fa9
parent7f2529748488a004c1b4d748ddce0eecf71656be
small reworking of the loop-breaker-choosing algorithm
Previously inline candidates were given higher preference as
non-loop-breakers than constructor applications, but the reason for
this was that making a wrapper into a loop-breaker is to be avoided at
all costs.  This patch refines the algorithm slightly so that wrappers
are explicitly avoided by giving them a much higher score, and other
inline candidates are given lower scores than constructor
applications.

This makes almost zero difference to a complete nofib run, so it
amounts to just a tidyup.
compiler/simplCore/OccurAnal.lhs