summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Config/config.h.cmake15
-rw-r--r--include/llvm/Config/config.h.in15
-rw-r--r--include/llvm/Config/llvm-config.h.cmake15
-rw-r--r--include/llvm/Config/llvm-config.h.in15
-rw-r--r--include/llvm/Support/Host.h41
5 files changed, 101 insertions, 0 deletions
diff --git a/include/llvm/Config/config.h.cmake b/include/llvm/Config/config.h.cmake
index 32d192e455..397df37a07 100644
--- a/include/llvm/Config/config.h.cmake
+++ b/include/llvm/Config/config.h.cmake
@@ -570,6 +570,21 @@
/* Installation directory for data files */
#cmakedefine LLVM_DATADIR "${LLVM_DATADIR}"
+/* Add by default -mabi=abi to all compiler invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_ABI "${LLVM_DEFAULT_TARGET_ABI}"
+
+/* Default float abi to use to all compiler invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_FLOAT "${LLVM_DEFAULT_TARGET_FLOAT}"
+
+/* Default FPU to use to all compiler invocations, in case of hard float. */
+#cmakedefine LLVM_DEFAULT_TARGET_FPU "${LLVM_DEFAULT_TARGET_FPU}"
+
+/* Default hash-style to use to all linker invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_HASHSTYLE "${LLVM_DEFAULT_TARGET_HASHSTYLE}"
+
+/* Default cpu (-mcpu=cpu) to use to all compiler invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_MCPU "${LLVM_DEFAULT_TARGET_MCPU}"
+
/* Target triple LLVM will generate code for by default */
#cmakedefine LLVM_DEFAULT_TARGET_TRIPLE "${LLVM_DEFAULT_TARGET_TRIPLE}"
diff --git a/include/llvm/Config/config.h.in b/include/llvm/Config/config.h.in
index 950e66f275..a5bb4b4abd 100644
--- a/include/llvm/Config/config.h.in
+++ b/include/llvm/Config/config.h.in
@@ -575,6 +575,21 @@
/* Installation directory for data files */
#undef LLVM_DATADIR
+/* Add by default -mabi=abi to all compiler invocations. */
+#undef LLVM_DEFAULT_TARGET_ABI
+
+/* Default float abi to use to all compiler invocations. */
+#undef LLVM_DEFAULT_TARGET_FLOAT
+
+/* Default FPU to use to all compiler invocations, in case of hard float. */
+#undef LLVM_DEFAULT_TARGET_FPU
+
+/* Default hash-style to use to all linker invocations. */
+#undef LLVM_DEFAULT_TARGET_HASHSTYLE
+
+/* Default cpu (-mcpu=cpu) to use to all compiler invocations. */
+#undef LLVM_DEFAULT_TARGET_MCPU
+
/* Target triple LLVM will generate code for by default */
#undef LLVM_DEFAULT_TARGET_TRIPLE
diff --git a/include/llvm/Config/llvm-config.h.cmake b/include/llvm/Config/llvm-config.h.cmake
index c6f2bef210..e03722486b 100644
--- a/include/llvm/Config/llvm-config.h.cmake
+++ b/include/llvm/Config/llvm-config.h.cmake
@@ -25,6 +25,21 @@
/* Installation directory for data files */
#cmakedefine LLVM_DATADIR "${LLVM_DATADIR}"
+/* Add by default -mabi=abi to all compiler invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_ABI "${LLVM_DEFAULT_TARGET_ABI}"
+
+/* Default float abi to use to all compiler invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_FLOAT "${LLVM_DEFAULT_TARGET_FLOAT}"
+
+/* Default FPU to use to all compiler invocations, in case of hard float. */
+#cmakedefine LLVM_DEFAULT_TARGET_FPU "${LLVM_DEFAULT_TARGET_FPU}"
+
+/* Default hash-style to use to all linker invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_HASHSTYLE "${LLVM_DEFAULT_TARGET_HASHSTYLE}"
+
+/* Default cpu (-mcpu=cpu) to use to all compiler invocations. */
+#cmakedefine LLVM_DEFAULT_TARGET_MCPU "${LLVM_DEFAULT_TARGET_MCPU}"
+
/* Target triple LLVM will generate code for by default */
#cmakedefine LLVM_DEFAULT_TARGET_TRIPLE "${LLVM_DEFAULT_TARGET_TRIPLE}"
diff --git a/include/llvm/Config/llvm-config.h.in b/include/llvm/Config/llvm-config.h.in
index a5209fa9b2..0b3f328310 100644
--- a/include/llvm/Config/llvm-config.h.in
+++ b/include/llvm/Config/llvm-config.h.in
@@ -25,6 +25,21 @@
/* Installation directory for data files */
#undef LLVM_DATADIR
+/* Add by default -mabi=abi to all compiler invocations. */
+#undef LLVM_DEFAULT_TARGET_ABI
+
+/* Default float abi to use to all compiler invocations. */
+#undef LLVM_DEFAULT_TARGET_FLOAT
+
+/* Default FPU to use to all compiler invocations, in case of hard float. */
+#undef LLVM_DEFAULT_TARGET_FPU
+
+/* Default hash-style to use to all linker invocations. */
+#undef LLVM_DEFAULT_TARGET_HASHSTYLE
+
+/* Default cpu (-mcpu=cpu) to use to all compiler invocations. */
+#undef LLVM_DEFAULT_TARGET_MCPU
+
/* Target triple LLVM will generate code for by default */
#undef LLVM_DEFAULT_TARGET_TRIPLE
diff --git a/include/llvm/Support/Host.h b/include/llvm/Support/Host.h
index 9a4036a8af..ab52671861 100644
--- a/include/llvm/Support/Host.h
+++ b/include/llvm/Support/Host.h
@@ -46,6 +46,47 @@ namespace sys {
/// CPU_TYPE-VENDOR-KERNEL-OPERATING_SYSTEM
std::string getDefaultTargetTriple();
+ /// getDefaultTargetCpu() - Return the default target cpu for which the
+ /// compiler is configured to generate code for (ie. -mcpu), or "" if empty.
+ std::string getDefaultTargetCpu();
+
+ /// hasDefaultTargetCpu() - Return true if the compiler was configured to
+ /// generate by default code for a given target cpu and false otherwise.
+ bool hasDefaultTargetCpu();
+
+ /// getDefaultTargetFloat() - Return the default target float abi for which
+ /// the compiler is configured to generate code for, or "" if empty.
+ std::string getDefaultTargetFloat();
+
+ /// hasDefaultTargetFloat() - Return true if the compiler was configured to
+ /// generate by default code for a given floating point abi and false
+ /// otherwise.
+ bool hasDefaultTargetFloat();
+
+ /// getDefaultTargetFpu() - Return the default target FPU for which the
+ /// compiler is configured to generate code for, or "" if empty.
+ std::string getDefaultTargetFpu();
+
+ /// hasDefaultTargetFpu() - Return true if the compiler was configured to
+ /// generate by default code for a given FPU and false otherwise.
+ bool hasDefaultTargetFpu();
+
+ /// getDefaultTargetHashStyle() - Return the default target hash-style for
+ /// which the compiler is configured to generated for, or "" if empty.
+ std::string getDefaultTargetHashStyle();
+
+ /// hasDefaultTargetHashStyle() - Return true if the compiler was configured
+ /// to generate by default code with a given hash-style and false otherwise.
+ bool hasDefaultTargetHashStyle();
+
+ /// getDefaultTargetAbi() - Return the default target ABI for which the
+ /// compiler is configured to generate code for, or "" if empty.
+ std::string getDefaultTargetAbi();
+
+ /// hasDefaultTargetAbi() - Return true if the compiler was configured to
+ /// generate code for a given ABI and false otherwise.
+ bool hasDefaultTargetAbi();
+
/// getProcessTriple() - Return an appropriate target triple for generating
/// code to be loaded into the current process, e.g. when using the JIT.
std::string getProcessTriple();