This is an automated email from the ASF dual-hosted git repository.
tqchen pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tvm.git
The following commit(s) were added to refs/heads/main by this push:
new df33d73cec [LLVM] Fix for getHostCPUFeatures API change (#17199)
df33d73cec is described below
commit df33d73ceca1d0c4ba280cfbcce504b232111d4c
Author: Anirudh Sundar Subramaniam <[email protected]>
AuthorDate: Fri Jul 26 19:08:27 2024 +0530
[LLVM] Fix for getHostCPUFeatures API change (#17199)
This patch fixes a minor API change in latest LLVM.
---
src/target/llvm/codegen_llvm.cc | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/target/llvm/codegen_llvm.cc b/src/target/llvm/codegen_llvm.cc
index 6098a3f32f..4c5bea8c9b 100644
--- a/src/target/llvm/codegen_llvm.cc
+++ b/src/target/llvm/codegen_llvm.cc
@@ -2315,6 +2315,16 @@
TVM_REGISTER_GLOBAL("tvm.codegen.llvm.GetHostCPUName").set_body_typed([]() -> st
TVM_REGISTER_GLOBAL("tvm.codegen.llvm.GetHostCPUFeatures")
.set_body_typed([]() -> Map<String, IntImm> {
+#if TVM_LLVM_VERSION >= 200
+ Map<String, IntImm> ret;
+ auto features = llvm::sys::getHostCPUFeatures();
+ for (auto it = features.begin(); it != features.end(); ++it) {
+ std::string name = it->getKey().str();
+ bool value = it->getValue();
+ ret.Set(name, IntImm(DataType::Bool(), value));
+ }
+ return ret;
+#else
llvm::StringMap<bool> features;
if (llvm::sys::getHostCPUFeatures(features)) {
Map<String, IntImm> ret;
@@ -2325,6 +2335,7 @@ TVM_REGISTER_GLOBAL("tvm.codegen.llvm.GetHostCPUFeatures")
}
return ret;
}
+#endif
LOG(WARNING) << "Current version of LLVM does not support feature
detection on your CPU";
return {};
});