You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I believe Koopa IR allows br instructions where both branches target the same basic block.
True.
I am interested when they carry different arguments:
I actually overlooked this issue before, my fault.
This can be handled in two ways:
When there is a branch instruction with two identical target basic blocks and two sets of BB parameters, it performs a selection first, passes selected values as BB parameters, and then transfers the control flow to the target block:
From the example you provided, it seems that your understanding is based on the first approach. However, since the basic block parameter is an alternative way of representing Phi functions, I would prefer to disable this usage for the sake of IR semantic orthogonality.
Thanks for your feedback. I'll add some additional checks in koopa/libkoopa later.
I believe Koopa IR allows
br
instructions where both branches target the same basic block. I am interested when they carry different arguments:libkoopa cannot faithfully lower it to LLVM IR:
The text was updated successfully, but these errors were encountered: