It seems that allocas need to have liveness information added else when NanoJIT's spills registers it may overwrite stack slots.
There are two situations:
1) Phi instructions generate allocas - these should be handled when a jump goes back to a prior block. Any phi related allocas in the target block must be marked live.
2) For allocas arising from local var declarations that were not converted to pseudos, we can add liveness instructions for all the allocas, as we do not have better information at present.
It seems that allocas need to have liveness information added else when NanoJIT's spills registers it may overwrite stack slots.
There are two situations: 1) Phi instructions generate allocas - these should be handled when a jump goes back to a prior block. Any phi related allocas in the target block must be marked live. 2) For allocas arising from local var declarations that were not converted to pseudos, we can add liveness instructions for all the allocas, as we do not have better information at present.