[LLVMdev] conditional flow resulting in "Instruction does not dominate all uses!"
Rafael EspĂndola
rafael.espindola at gmail.com
Mon Nov 4 08:25:51 PST 2013
On 4 November 2013 08:19, Henrique Santos
<henrique.nazare.santos at gmail.com> wrote:
> Well, what I had in mind was actually something like the following:
>
> entry:
> result0 = invoke func0 to defer_block unwind landing0
>
> landing0:
> landingpad
> result1 = invoke func1 to defer_block unwind landing1
>
> landing1:
> landingpad
> br defer_block
>
> defer_block:
> result = phi [ result0, entry ], [ result1, landing0 ], [ null, landing1 ]
> ...
>
> This doesn't have landing pads with multiple predecessors like he said,
> but I don't think that would make much difference.
> The "defer block", however, is the target of multiple invokes.
> I hope this makes sense. : )
It does. Do we produce an error/assert in this case?
Cheers,
Rafael
More information about the llvm-dev
mailing list