[llvm] [bazel] Fix LLVM plugin tests under Analysis. (PR #142999)
Chenguang Wang via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 5 09:17:41 PDT 2025
https://github.com/wecing created https://github.com/llvm/llvm-project/pull/142999
Those tests were broken on bazel as a side effect of 8830e380.
This commit is tested with this command on Linux:
bazelisk test \
@llvm-project//llvm/unittests:analysis_tests \
@llvm-project//llvm/unittests:plugin_inline_advisor_analysis_test \
@llvm-project//llvm/unittests:plugin_inline_order_analysis_test
>From 6d428dde64db0a116780c5dd8ff76f0a677c89b1 Mon Sep 17 00:00:00 2001
From: Chenguang Wang <w3cing at gmail.com>
Date: Thu, 5 Jun 2025 09:14:40 -0700
Subject: [PATCH] [bazel] Fix LLVM plugin tests under Analysis.
Those tests were broken on bazel as a side effect of 8830e380.
This commit is tested with this command on Linux:
bazelisk test \
@llvm-project//llvm/unittests:analysis_tests \
@llvm-project//llvm/unittests:plugin_inline_advisor_analysis_test \
@llvm-project//llvm/unittests:plugin_inline_order_analysis_test
---
.../llvm/unittests/BUILD.bazel | 80 +++++++++++++++++++
1 file changed, 80 insertions(+)
diff --git a/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel b/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
index 8ae197a64620d..142b39823ed63 100644
--- a/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
@@ -33,6 +33,80 @@ cc_test(
],
)
+cc_library(
+ name = "inline_advisor_plugin",
+ srcs = glob(["Analysis/InlineAdvisorPlugin/*.cpp"]),
+ deps = [
+ "//llvm:Analysis",
+ "//llvm:Core",
+ "//llvm:Passes",
+ "//llvm:Support",
+ ],
+)
+
+cc_shared_library(
+ name = "inline_advisor_plugin_shared",
+ shared_lib_name = "InlineAdvisorPlugin.so",
+ deps = [":inline_advisor_plugin"],
+)
+
+cc_test(
+ name = "plugin_inline_advisor_analysis_test",
+ srcs = ["Analysis/PluginInlineAdvisorAnalysisTest.cpp"],
+ data = [
+ ":inline_advisor_plugin_shared",
+ ],
+ deps = [
+ "//llvm:Analysis",
+ "//llvm:AsmParser",
+ "//llvm:Core",
+ "//llvm:Passes",
+ "//llvm:Support",
+ "//llvm:TestingSupport",
+ "//llvm:attributes_gen",
+ "//llvm:config",
+ "//third-party/unittest:gtest",
+ "//third-party/unittest:gtest_main",
+ ],
+)
+
+cc_library(
+ name = "inline_order_plugin",
+ srcs = glob(["Analysis/InlineOrderPlugin/*.cpp"]),
+ deps = [
+ "//llvm:Analysis",
+ "//llvm:Core",
+ "//llvm:Passes",
+ "//llvm:Support",
+ ],
+)
+
+cc_shared_library(
+ name = "inline_order_plugin_shared",
+ shared_lib_name = "InlineOrderPlugin.so",
+ deps = [":inline_order_plugin"],
+)
+
+cc_test(
+ name = "plugin_inline_order_analysis_test",
+ srcs = ["Analysis/PluginInlineOrderAnalysisTest.cpp"],
+ data = [
+ ":inline_order_plugin_shared",
+ ],
+ deps = [
+ "//llvm:Analysis",
+ "//llvm:AsmParser",
+ "//llvm:Core",
+ "//llvm:Passes",
+ "//llvm:Support",
+ "//llvm:TestingSupport",
+ "//llvm:attributes_gen",
+ "//llvm:config",
+ "//third-party/unittest:gtest",
+ "//third-party/unittest:gtest_main",
+ ],
+)
+
cc_test(
name = "analysis_tests",
size = "small",
@@ -45,6 +119,12 @@ cc_test(
"Analysis/TFUtilsTest.cpp",
"Analysis/TrainingLoggerTest.cpp",
"Analysis/MLModelRunnerTest.cpp",
+ # These tests dynamically load Plugins which both pull in
+ # llvm/lib/Analysis/ProfileSummaryInfo.cpp, which registers flags;
+ # if built into the same cc_test target, those flags will be
+ # registered twice and cause runtime failures.
+ "Analysis/PluginInlineAdvisorAnalysisTest.cpp",
+ "Analysis/PluginInlineOrderAnalysisTest.cpp",
],
),
deps = [
More information about the llvm-commits
mailing list