[Mlir-commits] [mlir] Reland "[mlir][spirv] Fix UpdateVCEPass to deduce the correct set of capabilities" (PR #151502)
Davide Grohmann
llvmlistbot at llvm.org
Fri Aug 1 03:06:56 PDT 2025
================
@@ -95,6 +95,14 @@ static LogicalResult checkAndUpdateCapabilityRequirements(
return success();
}
+static void addAllImpliedCapabilities(SetVector<spirv::Capability> &caps) {
+ for (unsigned i = 0; i < caps.size(); ++i) {
+ spirv::Capability cap = caps[i];
+ ArrayRef<spirv::Capability> impliedCaps = getDirectImpliedCapabilities(cap);
+ caps.insert_range(impliedCaps);
+ }
----------------
davidegrohmann wrote:
I went back to the original solution before using only one SetVector.
If you do not want to modify the input, then you need another SetVector to collect the new deduced capabilities that need to be processed for calculating the fix point. But that seems a bit too much copying around data for no real benefit.
https://github.com/llvm/llvm-project/pull/151502
More information about the Mlir-commits
mailing list