summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp8
-rw-r--r--llvm/lib/Support/Windows/explicit_symbols.inc6
2 files changed, 13 insertions, 1 deletions
diff --git a/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp b/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp
index 7d0fa0f91e6..4e0b8587c61 100644
--- a/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp
+++ b/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp
@@ -73,7 +73,13 @@ static Error LoadDIA(CComPtr<IDiaDataSource> &DiaDataSource) {
#if !defined(_MSC_VER)
return llvm::make_error<PDBError>(pdb_error_code::dia_failed_loading);
#else
- const wchar_t *msdia_dll = L"msdia140.dll";
+ const wchar_t *msdia_dll = nullptr;
+#if _MSC_VER >= 1900 && _MSC_VER < 2000
+ msdia_dll = L"msdia140.dll"; // VS2015
+#elif _MSC_VER >= 1800
+ msdia_dll = L"msdia120.dll"; // VS2013
+#else
+#error "Unknown Visual Studio version."
#endif
HRESULT HR;
diff --git a/llvm/lib/Support/Windows/explicit_symbols.inc b/llvm/lib/Support/Windows/explicit_symbols.inc
index 0a4fda1d4e8..bbbf7ea6a77 100644
--- a/llvm/lib/Support/Windows/explicit_symbols.inc
+++ b/llvm/lib/Support/Windows/explicit_symbols.inc
@@ -90,6 +90,12 @@
INLINE_DEF_FLOAT_SYMBOL(tanf, 1)
INLINE_DEF_FLOAT_SYMBOL(tanhf, 1)
+ // These were added in VS 2013.
+#if (1800 <= _MSC_VER && _MSC_VER < 1900)
+ INLINE_DEF_FLOAT_SYMBOL(copysignf, 2)
+ INLINE_DEF_FLOAT_SYMBOL(fminf, 2)
+ INLINE_DEF_FLOAT_SYMBOL(fmaxf, 2)
+#endif
#undef INLINE_DEF_FLOAT_SYMBOL
#endif
OpenPOWER on IntegriCloud