Displaying 1 result from an estimated 1 matches for "analysebranch".
Did you mean:
_analyzebranch
2013 Feb 06
0
[LLVMdev] Incorrect Simple pattern matching in lib/CodeGen/IfConversion.cpp
...like this:
// Simple (split, no rejoin):
// EBB
// | \_
// | |
// | TBB---> exit
// |
// FBB
The IfConverter::ValidSimple method (lib/CodeGen/IfConversion.cpp:461)
checks if TBB matches this pattern. It basically does this by simply
checking if AnalyseBranch fails on that block (IfConversion.cpp:640).
This fails if TBB contains something that AnalyseBranch is not able to
understand but is still a branch and may have fallthrough edges.
In my case, TBB ends with a predicated indirect branch, which comes from
a jumptable-jump that has been if-converte...