[LLVMdev] Specify dominator for BasicBlock to avoid "Instruction does not dominate all uses!"
Xinfinity
xinfinity_a at yahoo.com
Tue Oct 12 05:24:55 PDT 2010
Hi, I tried adding the PHI nodes in BB_unique, and it works for the simple
case described here, but in case the nodes were declared in some
predecessors of ExitBB1 and used in ExitBB1_redirect and its successors, it
won't work, unless I create entries for all of them in BB_unique.
B1 (declares PHI_1) B3
| |
B2 |
| |
ExitBB1 ExitBB2
|
Succ1 (uses PHI_1)
becomes:
B1 (declares PHI_1) B3
| |
B2 |
| |
ExitBB1 ExitBB2
| |
-------------------------------------------------------
|
BB_unique
/ \
ExitBB1_redirect ExitBB2_redirect
|
Succ1 (uses PHI_1)
Devang Patel wrote:
>
>
>
> One approach is to use insert PHI nodes in BB_unique for values defined in
> ExitBB1 and use these phi nodes in ExitBB1_redirect.
>
>
>
> Devang
>
>
>
I will use the pass -reg2mem, as suggested by ether, to avoid to PHI nodes
altogether.
Thanks,
Alexandra
-
--
View this message in context: http://old.nabble.com/Specify-dominator-for-BasicBlock-to-avoid-%22Instruction-does-not-dominate-all-uses%21%22-tp29935454p29942642.html
Sent from the LLVM - Dev mailing list archive at Nabble.com.
More information about the llvm-dev
mailing list