Update LLVM submodule and build files.
Generated via
```
$ python3 ./scripts/git/update_tf_llvm_submodules.py --update_build_files --tensorflow_commit=KEEP
```
And a manual fix-up reverting `"@zlib",` back to `"@zlib_archive//:zlib",`.
TF submodule update seems to require some changes to our Bazel configuration, such as bumping the version of Bazel (https://github.com/google/iree/pull/755) and possibly updating some parts of `WORKSPACE` and `.bazelrc`.
TensorFlow targets (`//integrations/tensorflow/compiler:iree-tf-opt`, `//integrations/tensorflow/compiler/dialect/tf_tensorlist/ir:ir`, etc.) are still broken.
Closes https://github.com/google/iree/pull/830
PiperOrigin-RevId: 296953534
diff --git a/SUBMODULE_VERSIONS b/SUBMODULE_VERSIONS
index 8ef9035..44c6334 100644
--- a/SUBMODULE_VERSIONS
+++ b/SUBMODULE_VERSIONS
@@ -6,7 +6,7 @@
48233ad3d45b314a83474b3704ae09638e3e2621 third_party/glslang
495ced98de99a5895e484b2e09771edb42d3c7ab third_party/google_tracing_framework
f2fb48c3b3d79a75a88a99fba6576b25d42ec528 third_party/googletest
-5feb80e748924606531ba28c97fe65145c65372e third_party/llvm-project
+78be61871704a451a5d9462d7e96ed6c982746d4 third_party/llvm-project
80d452484c5409444b0ec19383faa84bb7a4d351 third_party/pybind11
b73f111094da3e380a1774b56b15f16c90ae8e23 third_party/sdl2
b252a50953ac4375cb1864e94f4b0234db9d215d third_party/spirv_headers
diff --git a/build_tools/bazel/third_party_import/llvm-project/overlay/llvm/BUILD.bazel b/build_tools/bazel/third_party_import/llvm-project/overlay/llvm/BUILD.bazel
index 8c53968..adfd959 100644
--- a/build_tools/bazel/third_party_import/llvm-project/overlay/llvm/BUILD.bazel
+++ b/build_tools/bazel/third_party_import/llvm-project/overlay/llvm/BUILD.bazel
@@ -739,6 +739,7 @@
":intrinsic_enums_gen",
":intrinsics_impl_gen",
":mc",
+ ":object",
":support",
],
)
@@ -1155,6 +1156,7 @@
":intrinsics_impl_gen",
":mc",
":mc_disassembler",
+ ":object",
":support",
],
)
@@ -1889,6 +1891,7 @@
copts = llvm_copts,
deps = [
":config",
+ ":debug_info_dwarf",
":mc",
":support",
],
@@ -3198,6 +3201,7 @@
":code_gen",
":config",
":core",
+ ":coroutines",
":inst_combine",
":instrumentation",
":ipo",
@@ -3284,6 +3288,7 @@
":intrinsic_enums_gen",
":intrinsics_impl_gen",
":mc",
+ ":object",
":powerpc_info",
":powerpc_target_gen",
":support",
diff --git a/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/BUILD.bazel b/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/BUILD.bazel
index e012def..c203330 100644
--- a/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/BUILD.bazel
+++ b/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/BUILD.bazel
@@ -81,15 +81,14 @@
]),
hdrs = glob([
"include/mlir/Pass/*.h",
- ]) + [
- "include/mlir/Analysis/Verifier.h",
- ],
+ ]),
includes = ["include"],
linkopts = [
"-lm",
"-lpthread",
],
deps = [
+ ":Analysis",
":IR",
":Support",
"@llvm-project//llvm:support",
@@ -198,6 +197,21 @@
],
)
+cc_library(
+ name = "LoopOpsTransforms",
+ srcs = ["lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp"],
+ hdrs = ["include/mlir/Dialect/LoopOps/Passes.h"],
+ includes = ["include"],
+ deps = [
+ ":IR",
+ ":LoopOps",
+ ":Pass",
+ ":StandardOps",
+ ":Transforms",
+ ],
+ alwayslink = 1,
+)
+
filegroup(
name = "StdOpsTdFiles",
srcs = [
@@ -667,6 +681,26 @@
)
cc_library(
+ name = "GPUToVulkanTransforms",
+ srcs = [
+ "lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp",
+ ],
+ hdrs = ["include/mlir/Conversion/GPUToVulkan/ConvertGPUToVulkanPass.h"],
+ includes = ["include"],
+ deps = [
+ ":GPUDialect",
+ ":IR",
+ ":LLVMDialect",
+ ":Pass",
+ ":SPIRVDialect",
+ ":SPIRVSerialization",
+ ":StandardOps",
+ ":Support",
+ "@llvm-project//llvm:support",
+ ],
+)
+
+cc_library(
name = "GPUToCUDATransforms",
srcs = [
"lib/Conversion/GPUToCUDA/ConvertKernelFuncToCubin.cpp",
@@ -681,8 +715,8 @@
":Pass",
":Support",
":TargetNVVMIR",
- "@llvm-project//llvm:all_targets",
"@llvm-project//llvm:core",
+ "@llvm-project//llvm:nvptx_code_gen",
"@llvm-project//llvm:support",
"@llvm-project//llvm:target",
],
@@ -733,30 +767,6 @@
],
)
-cc_library(
- name = "GPUToVulkanTransforms",
- srcs = [
- "lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp",
- ],
- hdrs = [
- "include/mlir/Conversion/GPUToVulkan/ConvertGPUToVulkanPass.h",
- ],
- includes = [
- "include",
- ],
- deps = [
- ":GPUDialect",
- ":IR",
- ":LLVMDialect",
- ":Pass",
- ":SPIRVDialect",
- ":StandardOps",
- ":Support",
- ":Transforms",
- ":Translation",
- ],
-)
-
gentbl(
name = "LLVMOpsIncGen",
strip_include_prefix = "include",
@@ -1340,8 +1350,8 @@
":AffineToStandardTransforms",
":GPUDialect",
":IR",
- ":LinalgTransforms",
":LoopOps",
+ ":Pass",
":StandardOps",
":Support",
":TransformUtils",
@@ -1481,7 +1491,6 @@
":IR",
":InferTypeOpInterfaceIncGen",
":LoopOps",
- ":Pass",
":StandardOps",
":Support",
"@llvm-project//llvm:support",
@@ -1664,13 +1673,13 @@
":GPUToNVVMTransforms",
":GPUToROCDLTransforms",
":GPUToSPIRVTransforms",
- ":GPUToVulkanTransforms",
":GPUTransforms",
":IR",
":LLVMDialect",
":LLVMTransforms",
":LinalgToLLVM",
":LinalgToSPIRV",
+ ":LoopOpsTransforms",
":NVVMDialect",
":Parser",
":Pass",
@@ -1684,6 +1693,7 @@
"@llvm-project//mlir/test:TestDialect",
"@llvm-project//mlir/test:TestIR",
"@llvm-project//mlir/test:TestPass",
+ "@llvm-project//mlir/test:TestSPIRV",
"@llvm-project//mlir/test:TestTransforms",
],
)
@@ -1734,6 +1744,7 @@
"include/mlir/InitAllDialects.h",
"include/mlir/InitAllPasses.h",
],
+ defines = ["MLIR_CUDA_CONVERSIONS_ENABLED"],
deps = [
":AffineOps",
":Analysis",
@@ -1752,6 +1763,7 @@
":LinalgToSPIRV",
":LinalgTransforms",
":LoopOps",
+ ":LoopOpsTransforms",
":LoopsToGPUPass",
":NVVMDialect",
":OpenMPDialect",
@@ -1809,6 +1821,7 @@
"@llvm-project//mlir/test:TestDialect",
"@llvm-project//mlir/test:TestIR",
"@llvm-project//mlir/test:TestPass",
+ "@llvm-project//mlir/test:TestSPIRV",
"@llvm-project//mlir/test:TestTransforms",
],
)
diff --git a/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/test/BUILD.bazel b/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/test/BUILD.bazel
index 31b2f28..d156b1e 100644
--- a/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/test/BUILD.bazel
+++ b/build_tools/bazel/third_party_import/llvm-project/overlay/mlir/test/BUILD.bazel
@@ -141,7 +141,6 @@
name = "TestTransforms",
srcs = glob([
"lib/Transforms/*.cpp",
- "Dialect/SPIRV/TestAvailability.cpp",
]),
includes = ["lib/TestDialect"],
deps = [
@@ -169,3 +168,16 @@
"@llvm-project//mlir:VectorToLoops",
],
)
+
+cc_library(
+ name = "TestSPIRV",
+ srcs = glob([
+ "Dialect/SPIRV/*.cpp",
+ ]),
+ deps = [
+ "@llvm-project//mlir:IR",
+ "@llvm-project//mlir:Pass",
+ "@llvm-project//mlir:SPIRVDialect",
+ "@llvm-project//mlir:SPIRVLowering",
+ ],
+)
diff --git a/third_party/llvm-project b/third_party/llvm-project
index 5feb80e..78be618 160000
--- a/third_party/llvm-project
+++ b/third_party/llvm-project
@@ -1 +1 @@
-Subproject commit 5feb80e748924606531ba28c97fe65145c65372e
+Subproject commit 78be61871704a451a5d9462d7e96ed6c982746d4