Sometimes, the register allocator will give subpar solutions when it comes to move coalescing. To work around this, we added a pass in the vibes-as peephole optimizer to remove a lot of these redundant copy operations, but only at the intra-block level. This PR improves the algorithm to do it across blocks.
Sometimes, the register allocator will give subpar solutions when it comes to move coalescing. To work around this, we added a pass in the
vibes-as
peephole optimizer to remove a lot of these redundant copy operations, but only at the intra-block level. This PR improves the algorithm to do it across blocks.