This patch will expand the isel instruction into an if-then-else sequence.
The expansion is done late, after instruction scheduling, as the isel instruction does terminate basic blocks, allowing for larger scopes for scheduling.
There are still some performance problems that I'm investigating. Specifically, there is a significant slowdown in SPEC2k6 hmmer (roughly 40%).
So, there will likely be another version of this patch necessary before committing. However, any feedback on the current patch is appreciated.
Please note here that this pass is intended to be run post-RA only.