[clang] [CIR] Add missing MLIR TableGen dependencies to CIR CMake targets (PR #187692)
Morris Hafner via cfe-commits
cfe-commits at lists.llvm.org
Wed Oct 21 13:58:38 PDT 2026
https://github.com/mmha updated https://github.com/llvm/llvm-project/pull/187692
>From 422e405a8d8072a7566067e644e388b6fdfee38d Mon Sep 17 00:00:00 2001
From: Morris Hafner <mhafner at nvidia.com>
Date: Fri, 20 Mar 2026 12:08:24 +0000
Subject: [PATCH] [CIR] Add missing MLIR TableGen dependencies to CIR CMake
targets
CIR targets include MLIR headers that depend on TableGen-generated .inc
files (BuiltinLocationAttributes.h.inc, BytecodeOpInterface.h.inc), but
do not declare build dependencies on the corresponding TableGen targets.
This causes intermittent build failures with parallel builds when the
.inc files have not yet been generated by the time CIR sources compile.
Add MLIRBuiltinLocationAttributesIncGen and MLIRBytecodeOpInterfaceIncGen
to DEPENDS in all affected CIR CMake targets:
- clangCIRLoweringCommon
- clangCIRLoweringDirectToLLVM
- clangCIRFrontendAction
- MLIRCIRInterfaces
- MLIRCIR (Dialect/IR)
- MLIRCIRTransforms
- MLIRCIRTargetLowering
- CIROpenACCSupport
- clangCIR (CodeGen)
---
clang/lib/CIR/CodeGen/CMakeLists.txt | 2 ++
clang/lib/CIR/Dialect/IR/CMakeLists.txt | 2 ++
clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt | 2 ++
clang/lib/CIR/Dialect/Transforms/CMakeLists.txt | 2 ++
.../lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt | 2 ++
clang/lib/CIR/FrontendAction/CMakeLists.txt | 2 ++
clang/lib/CIR/Interfaces/CMakeLists.txt | 2 ++
clang/lib/CIR/Lowering/CMakeLists.txt | 4 ++++
clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt | 2 ++
9 files changed, 20 insertions(+)
diff --git a/clang/lib/CIR/CodeGen/CMakeLists.txt b/clang/lib/CIR/CodeGen/CMakeLists.txt
index 6d84faf70d11da..fdb2c66eb1f749 100644
--- a/clang/lib/CIR/CodeGen/CMakeLists.txt
+++ b/clang/lib/CIR/CodeGen/CMakeLists.txt
@@ -68,6 +68,8 @@ add_clang_library(clangCIR
DEPENDS
MLIRCIR
MLIRCIROpInterfacesIncGen
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
LINK_LIBS
clangAST
diff --git a/clang/lib/CIR/Dialect/IR/CMakeLists.txt b/clang/lib/CIR/Dialect/IR/CMakeLists.txt
index bea09ab9ba03f9..34345d765c67c6 100644
--- a/clang/lib/CIR/Dialect/IR/CMakeLists.txt
+++ b/clang/lib/CIR/Dialect/IR/CMakeLists.txt
@@ -14,6 +14,8 @@ add_clang_library(MLIRCIR
MLIRCIREnumsGen
MLIRCIROpInterfacesIncGen
MLIRCIRLoopOpInterfaceIncGen
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
LINK_COMPONENTS
TargetParser
diff --git a/clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt b/clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt
index de27f4cb27c594..83b9d90b041b33 100644
--- a/clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt
+++ b/clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt
@@ -4,6 +4,8 @@ add_clang_library(CIROpenACCSupport
DEPENDS
MLIRCIRTypeConstraintsIncGen
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
LINK_LIBS PUBLIC
MLIRIR
diff --git a/clang/lib/CIR/Dialect/Transforms/CMakeLists.txt b/clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
index 42fceb0590efda..968382bf9f516e 100644
--- a/clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
+++ b/clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
@@ -21,6 +21,8 @@ add_clang_library(MLIRCIRTransforms
DEPENDS
MLIRCIRPassIncGen
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
LINK_COMPONENTS
ABI
diff --git a/clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt b/clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
index e6785de3143059..7bad234541d354 100644
--- a/clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
+++ b/clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
@@ -11,6 +11,8 @@ add_clang_library(MLIRCIRTargetLowering
DEPENDS
clangBasic
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
LINK_COMPONENTS
TargetParser
diff --git a/clang/lib/CIR/FrontendAction/CMakeLists.txt b/clang/lib/CIR/FrontendAction/CMakeLists.txt
index d19496939af60b..f83e5b04b9ada5 100644
--- a/clang/lib/CIR/FrontendAction/CMakeLists.txt
+++ b/clang/lib/CIR/FrontendAction/CMakeLists.txt
@@ -13,6 +13,8 @@ add_clang_library(clangCIRFrontendAction
DEPENDS
MLIRCIROpsIncGen
MLIRCIROpInterfacesIncGen
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
MLIRBuiltinOpsIncGen
LINK_LIBS
diff --git a/clang/lib/CIR/Interfaces/CMakeLists.txt b/clang/lib/CIR/Interfaces/CMakeLists.txt
index 43a35d2516e834..960dd0dcca5f4c 100644
--- a/clang/lib/CIR/Interfaces/CMakeLists.txt
+++ b/clang/lib/CIR/Interfaces/CMakeLists.txt
@@ -13,6 +13,8 @@ add_clang_library(MLIRCIRInterfaces
MLIRCIRTypeInterfacesIncGen
MLIRCIRLoopOpInterfaceIncGen
MLIRCIROpInterfacesIncGen
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
MLIRCIROpsIncGen
MLIRCIRTypeConstraintsIncGen
# CIR interface headers include generated core MLIR interfaces without
diff --git a/clang/lib/CIR/Lowering/CMakeLists.txt b/clang/lib/CIR/Lowering/CMakeLists.txt
index 2713af9ba3d6c8..93ca5436d96f92 100644
--- a/clang/lib/CIR/Lowering/CMakeLists.txt
+++ b/clang/lib/CIR/Lowering/CMakeLists.txt
@@ -7,6 +7,10 @@ add_clang_library(clangCIRLoweringCommon
CIRPasses.cpp
LoweringHelpers.cpp
+ DEPENDS
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
+
LINK_LIBS
clangCIR
MLIRCIR
diff --git a/clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt b/clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
index 4b9186e5fedba8..ff68221ad59df8 100644
--- a/clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
+++ b/clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
@@ -13,6 +13,8 @@ add_clang_library(clangCIRLoweringDirectToLLVM
CIRLowering
MLIRCIREnumsGen
MLIRCIROpsIncGen
+ MLIRBuiltinLocationAttributesIncGen
+ MLIRBytecodeOpInterfaceIncGen
MLIRCIROpInterfacesIncGen
LINK_LIBS
More information about the cfe-commits
mailing list