summaryrefslogtreecommitdiffstats
path: root/include/llvm/System/Host.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/llvm/System/Host.h')
-rw-r--r--include/llvm/System/Host.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/llvm/System/Host.h b/include/llvm/System/Host.h
index 6de1a4a..4fbf5c1 100644
--- a/include/llvm/System/Host.h
+++ b/include/llvm/System/Host.h
@@ -14,6 +14,7 @@
#ifndef LLVM_SYSTEM_HOST_H
#define LLVM_SYSTEM_HOST_H
+#include "llvm/ADT/StringMap.h"
#include <string>
namespace llvm {
@@ -47,6 +48,18 @@ namespace sys {
///
/// \return - The host CPU name, or empty if the CPU could not be determined.
std::string getHostCPUName();
+
+ /// getHostCPUFeatures - Get the LLVM names for the host CPU features.
+ /// The particular format of the names are target dependent, and suitable for
+ /// passing as -mattr to the target which matches the host.
+ ///
+ /// \param Features - A string mapping feature names to either
+ /// true (if enabled) or false (if disabled). This routine makes no guarantees
+ /// about exactly which features may appear in this map, except that they are
+ /// all valid LLVM feature names.
+ ///
+ /// \return - True on success.
+ bool getHostCPUFeatures(StringMap<bool> &Features);
}
}
OpenPOWER on IntegriCloud