[llvm-dev] Opt Bisect layering

David Blaikie via llvm-dev llvm-dev at lists.llvm.org
Wed Mar 21 12:09:14 PDT 2018


So I'm poking around trying to improve the layering of LLVM (using an
internal strict modular build as a motivation/tool to identify issues) &
came across a layering violation in the OptBisect implementation.

This feature is implemented in lib/IR, but includes several headers from
include/llvm/Analysis - which would create a circular dependency if not for
the fact that all the headers it includes are header-only (templates).

Any ideas about how this could/should be fixed? Perhaps these analyses
should be moved into somewhere more common - but I don't know there's
anywhere more (or less) common than lib/IR itself (since I assume they
depend on IR & that's where OptBisect is, so they can't be lower/higher
than that).

Does that sound OK? Anyone have other/better ideas?

- Dave
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180321/04d2fb3b/attachment.html>


More information about the llvm-dev mailing list