This is an archive of the discontinued LLVM Phabricator instance.

Fix compilation with MinGW-w64 GCC 4.8.2 64-bit SEH
ClosedPublic

Authored by net147 on Dec 10 2013, 10:50 PM.

Details

Reviewers
yaron.keren
Group Reviewers
deleted
Summary

There are no register_frame and deregister_frame functions when using structured exception handling.

Diff Detail

Event Timeline

This is right, MingW SEH does not have these functions.

See also this discussion:

http://clang-developers.42468.n3.nabble.com/clang-3-3-does-not-build-with-gcc-4-8-with-Windows-SEH-exception-td4032754.html

2013/12/11 Jonathan Liu <net147@gmail.com>

Hi #llvm,

There are no register_frame and deregister_frame functions when using
structured exception handling.

http://llvm-reviews.chandlerc.com/D2378

Files:

lib/ExecutionEngine/RTDyldMemoryManager.cpp

Index: lib/ExecutionEngine/RTDyldMemoryManager.cpp

  • lib/ExecutionEngine/RTDyldMemoryManager.cpp

+++ lib/ExecutionEngine/RTDyldMemoryManager.cpp
@@ -34,7 +34,7 @@

// Determine whether we can register EH tables.
#if (defined(GNUC) && !defined(ARM_EABI) && !defined(ia64) &&
\

  • !defined(USING_SJLJ_EXCEPTIONS))

+ !defined(SEH) && !defined(USING_SJLJ_EXCEPTIONS))
#define HAVE_EHTABLE_SUPPORT 1
#else
#define HAVE_EHTABLE_SUPPORT 0


llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

yaron.keren accepted this revision.Dec 17 2013, 12:52 AM

Committed revision 197483.

yaron.keren closed this revision.Apr 17 2014, 11:56 PM

Done, change already in code.