[PATCH] D14996: [WinEH] Avoid infinite loop in BranchFolding for multiple single block funclets

Andy Kaylor via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 30 11:06:43 PST 2015


andrew.w.kaylor added a comment.

In http://reviews.llvm.org/D14996#298570, @JosephTremoulet wrote:

> It seems odd to me that the fix specifically checks for EHFuncletEntry blocks.  Isn't this a more general problem with the algorithm?  I.e., wouldn't it fail for any two blocks that can't have fall-through to or from them, and won't it still fail with your fix if the same function has a single-block funclet and a non-funclet block that can't have fall-through to or from it?


I agree that it seems like this could be a generic problem, but I've only seen it happen with the new Windows EH constructs.

I'll poke at it a bit and see if I can come up with something that will fail with non-EH blocks as well as a generalized way to avoid the problem.


Repository:
  rL LLVM

http://reviews.llvm.org/D14996





More information about the llvm-commits mailing list