summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAiden Grossman <aidengrossman@google.com>2024-04-26 22:09:34 -0700
committerGitHub <noreply@github.com>2024-04-26 22:09:34 -0700
commit90a959a8c978671467041c865509a0e1823c5115 (patch)
tree6571dbe9132fe3c068738cd9b2e525a5b85a65e7
parent338561657685c1831a53563b1bc36ffc7470239e (diff)
[Bazel] Add llvm-mca unittests (#90309)
This patch refactors the llvm-mca rules slightly so that the source files within the tool source directory but not the library source directory are included in a separate cc_library. This patch also adds the llvm-mca unittests.
-rw-r--r--utils/bazel/llvm-project-overlay/llvm/BUILD.bazel27
-rw-r--r--utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel26
2 files changed, 45 insertions, 8 deletions
diff --git a/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel b/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
index 3223eb92d869..f45f057b63c2 100644
--- a/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
@@ -3111,12 +3111,26 @@ cc_library(
)
cc_library(
- name = "llvm-mca-headers",
+ name = "MCAApplication",
+ srcs = glob([
+ "tools/llvm-mca/Views/*.cpp",
+ ]) + [
+ mca_source
+ for mca_source in glob(["tools/llvm-mca/*.cpp"])
+ if mca_source != "tools/llvm-mca/llvm-mca.cpp"
+ ],
hdrs = glob([
"tools/llvm-mca/*.h",
"tools/llvm-mca/Views/*.h",
]),
strip_include_prefix = "tools/llvm-mca",
+ deps = [
+ ":MC",
+ ":MCA",
+ ":MCParser",
+ ":Support",
+ ":TargetParser",
+ ],
)
cc_library(
@@ -4034,12 +4048,9 @@ cc_binary(
cc_binary(
name = "llvm-mca",
- srcs = glob([
- "tools/llvm-mca/*.cpp",
- "tools/llvm-mca/*.h",
- "tools/llvm-mca/Views/*.cpp",
- "tools/llvm-mca/Views/*.h",
- ]),
+ srcs =[
+ "tools/llvm-mca/llvm-mca.cpp",
+ ],
copts = llvm_copts,
stamp = 0,
deps = [
@@ -4049,10 +4060,10 @@ cc_binary(
":AllTargetsMCAs",
":MC",
":MCA",
+ ":MCAApplication",
":MCParser",
":Support",
":TargetParser",
- ":llvm-mca-headers",
],
)
diff --git a/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel b/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
index dd42f84d16dc..9be26ab551b0 100644
--- a/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
@@ -811,3 +811,29 @@ cc_test(
"//third-party/unittest:gtest_main",
],
)
+
+cc_test(
+ name = "llvm_mca_tests",
+ size = "small",
+ srcs = glob(
+ [
+ "tools/llvm-mca/*.cpp",
+ "tools/llvm-mca/*.h",
+ "tools/llvm-mca/X86/*.cpp",
+ "tools/llvm-mca/X86/*.h",
+ ],
+ allow_empty = False,
+ ),
+ includes = ["tools/llvm-mca"],
+ deps = [
+ "//llvm:MC",
+ "//llvm:MCA",
+ "//llvm:MCAApplication",
+ "//llvm:Support",
+ "//llvm:TargetParser",
+ "//llvm:X86CodeGen",
+ "//llvm:X86UtilsAndDesc",
+ "//third-party/unittest:gtest",
+ "//third-party/unittest:gtest_main",
+ ],
+)