[Bazel] Adjust according to c76e2800e3d78fa6e8618431a6893f66f2fd3496
diff --git a/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel b/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
index 657497f..e23fcac 100644
--- a/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
@@ -8218,6 +8218,53 @@
 )
 
 cc_library(
+    name = "IRDLToCpp",
+    srcs = [
+        "lib/Target/IRDLToCpp/IRDLToCpp.cpp",
+        "lib/Target/IRDLToCpp/TemplatingUtils.h",
+    ],
+    hdrs = [
+        "include/mlir/Target/IRDLToCpp/IRDLToCpp.h",
+    ],
+    includes = ["include"],
+    textual_hdrs = glob(["lib/Target/IRDLToCpp/Templates/*.txt"]),
+    deps = [
+        ":IRDLDialect",
+        ":Support",
+        "//llvm:Support",
+    ],
+)
+
+cc_binary(
+    name = "irdl-to-cpp",
+    srcs = [
+        "tools/mlir-irdl-to-cpp/mlir-irdl-to-cpp.cpp",
+    ],
+    deps = [
+        ":IR",
+        ":IRDLDialect",
+        ":IRDLToCpp",
+        ":ParseUtilities",
+        ":Support",
+        "//llvm:Support",
+    ],
+)
+
+cc_library(
+    name = "IRDLToCppTranslationRegistration",
+    srcs = ["lib/Target/IRDLToCpp/TranslationRegistration.cpp"],
+    hdrs = ["include/mlir/Target/IRDLToCpp/TranslationRegistration.h"],
+    includes = ["include"],
+    deps = [
+        ":IR",
+        ":IRDLDialect",
+        ":IRDLToCpp",
+        ":TranslateLib",
+        "//llvm:Support",
+    ],
+)
+
+cc_library(
     name = "ToLLVMIRTranslation",
     srcs = [
         "lib/Target/LLVMIR/AttrKindDetail.h",
@@ -8667,6 +8714,7 @@
     hdrs = ["include/mlir/InitAllTranslations.h"],
     deps = [
         ":FromLLVMIRTranslationRegistration",
+        ":IRDLToCppTranslationRegistration",
         ":SPIRVTranslateRegistration",
         ":TargetCpp",
         ":TargetSMTLIB",
@@ -8898,6 +8946,7 @@
         "//mlir/test:TestFuncToLLVM",
         "//mlir/test:TestGPU",
         "//mlir/test:TestIR",
+        "//mlir/test:TestIRDLToCpp",
         "//mlir/test:TestLLVM",
         "//mlir/test:TestLinalg",
         "//mlir/test:TestLoopLikeInterface",
diff --git a/utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel b/utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
index d227910..30a1416 100644
--- a/utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
@@ -256,6 +256,34 @@
     ],
 )
 
+genrule(
+    name = "test_irdl_to_cpp_gen",
+    srcs = ["lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp.irdl.mlir"],
+    outs = ["lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp.irdl.mlir.cpp.inc"],
+    cmd = "$(location //mlir:irdl-to-cpp) lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp.irdl.mlir -o $@",
+    tools = ["//mlir:irdl-to-cpp"],
+)
+
+cc_library(
+    name = "TestIRDLToCpp",
+    srcs = glob(["lib/Dialect/TestIRDLToCpp/*.cpp"]) + ["lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp.irdl.mlir.cpp.inc"],
+    hdrs = glob(["lib/Dialect/TestIRDLToCpp/*.h"]),
+    includes = ["lib/Dialect/TestIRDLToCpp"],
+    deps = [
+        ":test_irdl_to_cpp_gen",
+        "//llvm:Support",
+        "//mlir:BuiltinToLLVMIRTranslation",
+        "//mlir:IR",
+        "//mlir:InferTypeOpInterface",
+        "//mlir:LLVMToLLVMIRTranslation",
+        "//mlir:Pass",
+        "//mlir:ToLLVMIRTranslation",
+        "//mlir:TransformUtils",
+        "//mlir:Transforms",
+        "//mlir:TranslateLib",
+    ],
+)
+
 td_library(
     name = "TransformDialectTdFiles",
     srcs = glob(["lib/Dialect/Transform/*.td"]),