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 {};
     });

Reply via email to