[Support] Lazy load of dbghlp.dll on Windows
authorLeny Kholodov <lkholodov@accesssoftek.com>
Thu, 2 Jul 2015 14:34:57 +0000 (14:34 +0000)
committerLeny Kholodov <lkholodov@accesssoftek.com>
Thu, 2 Jul 2015 14:34:57 +0000 (14:34 +0000)
commit479dc2c0fe2e3052c57393dd658ea135bf1786d0
tree60ea32a2cc59801283b37ac5b48c506592276f77
parent7edba9eec394eb20e217c688969690364e81c483
[Support] Lazy load of dbghlp.dll on Windows

This patch changes linkage with dbghlp.dll for clang from static (at load time)
to on demand (at the first use of required functions). Clang uses dbghlp.dll
only in minor use-cases. First of all in case of crash and in case of plugin load.
The dbghlp.dll library can be absent on system. In this case clang will fail
to load. With lazy load of dbghlp.dll clang can work even if dbghlp.dll
is not available.

Differential Revision: http://reviews.llvm.org/D10737

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241271 91177308-0d34-0410-b5e6-96231b3b80d8
autoconf/configure.ac
cmake/config-ix.cmake
include/llvm/Config/config.h.cmake
include/llvm/Config/config.h.in
lib/Support/CMakeLists.txt
lib/Support/Windows/DynamicLibrary.inc
lib/Support/Windows/Signals.inc
tools/llvm-symbolizer/LLVMSymbolize.cpp