larsk21/compiler-minijava

`PhiResolver` can't handle multiple equal predecessors

Closed this issue · 0 comments

It seems to me that PhiResolver::handlePhisForBlock and related functionality do not work correctly if a block has the same control flow predecessor more than once. There are multiple maps that use labels of predecessor blocks as key. In the example above, this can not work, as the predecessor block is not unique.

This needs to be fixed in PhiResolver, it may also require changes to PermutationSolver.

from #131