[PATCH] D44464: OptBisect is improved to be overridden in LLVMContext

Andy Kaylor via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 15 10:21:02 PDT 2018


andrew.w.kaylor added a comment.

In https://reviews.llvm.org/D44464#1037846, @fedor.sergeev wrote:

> I would like to stress that we consider OptBisect to be more than just "bisector", but rather the only
>  available way of skipping optimization passes with an arbitrarily complex control pattern.


I would prefer not to overload the behavior of OptBisect. It's meant to be a simple mechanism that does just this one thing. Perhaps we can generalize the skip mechanism and allow a way to add other callbacks. There is already some code in place for function passes to check for the "opt_none" attribute in addition to calling OptBisect.

With regard to the multithreading issue, I can see how that would work if you are exercising specific control over compilation and you know that each thread is working on an independent job. However, in the more general case where multiple threads are working on a single compilation unit and tasks are assigned to threads as the threads are available, this won't be useful for OptBisect.  I'm not aware of anything that currently compiles in this way, but it's something that has been talked about. My concern here is that I want to avoid giving the impression that OptBisect could support the second case.


https://reviews.llvm.org/D44464





More information about the llvm-commits mailing list