aiPop features functional abstraction for common
basic blocks (also called 'reverse inlining'):
aiPop identifies multiple occurrences of
instruction sequences
aiPop then creates one representative sequence
aiPop replaces the multiple occurrences by
calls to the representative sequence
It goes without saying that functional abstraction yields the
best results when applied to the entire application.