[llvm-branch-commits] [llvm-branch] r142614 - /llvm/branches/release_30/lib/Support/Windows/Signals.inc

Bill Wendling isanbard at gmail.com
Thu Oct 20 13:33:11 PDT 2011


Author: void
Date: Thu Oct 20 15:33:11 2011
New Revision: 142614

URL: http://llvm.org/viewvc/llvm-project?rev=142614&view=rev
Log:
Patch to build win64 LLVM on Mingw. Patch by Ruben Van Boxem.

Modified:
    llvm/branches/release_30/lib/Support/Windows/Signals.inc

Modified: llvm/branches/release_30/lib/Support/Windows/Signals.inc
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/release_30/lib/Support/Windows/Signals.inc?rev=142614&r1=142613&r2=142614&view=diff
==============================================================================
--- llvm/branches/release_30/lib/Support/Windows/Signals.inc (original)
+++ llvm/branches/release_30/lib/Support/Windows/Signals.inc Thu Oct 20 15:33:11 2011
@@ -41,10 +41,11 @@
  #pragma GCC diagnostic ignored "-Wformat"
  #pragma GCC diagnostic ignored "-Wformat-extra-args"
 
- // MinGW does not have updated support for the 64-bit versions of the DebugHlp
- // APIs. So we will have to load them manually. The structures and method
- // signatures were pulled from DbgHelp.h in the Windows Platform SDK, and
- // adjusted for brevity.
+ #if !defined(__MINGW64_VERSION_MAJOR)
+ // MinGW.org does not have updated support for the 64-bit versions of the
+ // DebugHlp APIs. So we will have to load them manually. The structures and
+ // method signatures were pulled from DbgHelp.h in the Windows Platform SDK,
+ // and adjusted for brevity.
  typedef struct _IMAGEHLP_LINE64 {
    DWORD    SizeOfStruct;
    PVOID    Key;
@@ -147,6 +148,7 @@
   }
   return StackWalk64 != NULL;
 }
+ #endif // !defined(__MINGW64_VERSION_MAJOR)
 #endif // __MINGW32__
 
 // Forward declare.
@@ -207,8 +209,8 @@
 #endif
 
 static void RegisterHandler() {
-#if __MINGW32__
-  // On MinGW, we need to load up the symbols explicitly, because the
+#if __MINGW32__ && !defined(__MINGW64_VERSION_MAJOR)
+  // On MinGW.org, we need to load up the symbols explicitly, because the
   // Win32 framework they include does not have support for the 64-bit
   // versions of the APIs we need.  If we cannot load up the APIs (which
   // would be unexpected as they should exist on every version of Windows





More information about the llvm-branch-commits mailing list