Changed reg allocator to try mapping phi sources/result to the same reg.

The current registor allocator is pretty greedy in how it chooses to
allocate registers. This change makes it attempt to try to map the
sources and result of a phi to the same register if one of them already
has a mapping and that mapping is compatible with the others. This saves
on some register shuffling when the original greedy method got unlucky.

Change-Id: I8afa430ce2ba8d034a9c0452a247d5943bc9cf37
2 files changed