On Fri Nov 24 12:41:21 2023 +0000, Giovanni Mascellani wrote:
I'm not sure I understand the computation here. I guess `!i` is got the branch instruction, then there is the label, but where the remaining 2 comes from? Also, why do you need to emit a branch? Aren't block already supposed to be terminated?
I added comments for these. Another reason for the branch is the backend currently doesn't support a label at the start of block 0. The branch conveniently works around that and ensures phi incomings from block 0 work.