[PATCH] D33037: [IfConversion] Keep the CFG updated incrementally in IfConvertTriangle
Matthias Braun via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu May 11 10:58:03 PDT 2017
MatzeB added a comment.
In https://reviews.llvm.org/D33037#751973, @uabelho wrote:
> Btw, without the fix we get the following result from IfConversion for the testcase:
>
> body: |
>
> bb.0:
>
> bb.1:
> successors: %bb.2(0x40000000), %bb.1(0x00000000)
>
> BX_RET 14, 0
>
> bb.2:
>
>
> ...
>
> So bb.1 has both bb.2 and itself as successors, even if it only contains an unconditional return.
This is indeed wrong (but hard to catch with the MachineVerifier so it probably went unnoticed).
I leave the patch review to @iteratee.
================
Comment at: test/CodeGen/MIR/ARM/PR32721_ifcvt_triangle_unanalyzable.mir:6
+ bb.0:
+ successors: %bb.2
+
----------------
FYI: The latest MIR parser can finally deduce the successor lists in most cases if you leave them out. It should work for this test.
https://reviews.llvm.org/D33037
More information about the llvm-commits
mailing list