[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