[Mlir-commits] [mlir] [mlir] Declare promised interfaces for all dialects (PR #78368)
Mehdi Amini
llvmlistbot at llvm.org
Fri Feb 23 15:00:52 PST 2024
joker-eph wrote:
Breaking circular dependencies is commonly done by splitting a library in two.
But I'm not sure what kind of circular dependency are we talking about really here:
> Are we okay with having #include "mlir/Dialects/Bufferization from mlir/IR, for example?
This is not precise enough, if this is ` #include "mlir/Dialects/Bufferization/Interface.h` which itself does not include anything else, then there is no circular dependency here.
It's only a circular dependency if you want to think exclusively in terms of "mlir/Dialects/Bufferization" is a single node for the purpose of your conceptual "dependency graph".
However changing the prefix for the "splitter" interface to `mlir/Dialects/Bufferization_Interface/" would fix this (assuming no dependency from Bufferization_Interface to Bufferization), but that's only because of a self-imposed constraint on the granularity you want to look at.
https://github.com/llvm/llvm-project/pull/78368
More information about the Mlir-commits
mailing list