1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/cmake/unwind.h
David Tenty b66408647d [CMake][ExecutionEngine] add HAVE_(DE)REGISTER_FRAME as a config.h macros
The macro HAVE_EHTABLE_SUPPORT is used by parts of ExecutionEngine to tell __register_frame/__deregister_frame is available to register the
FDE for a generated (JIT) code. It's currently set by a slowly growing set of macro tests in the respective headers, which is updated now and then when it fails to link on some platform or another due to the symbols being missing (see for example https://bugs.llvm.org/show_bug.cgi?id=5715).

This change converts the macro in two HAVE_(DE)REGISTER_FRAME config.h macros (like most of the other HAVE_* macros) and set's them based on whether CMake can actually find a definition for these symbols to link to at configuration time.

Reviewed By: hubert.reinterpretcast

Differential Revision: https://reviews.llvm.org/D87114
2020-11-10 13:09:44 -05:00

8 lines
410 B
C

// NOLINT: llvm-header-guard
// __register_frame() is used with dynamically generated code to register the
// FDE for a generated (JIT) code. This header provides protypes, since the gcc
// version of unwind.h may not, so CMake can check if the corresponding symbols
// exist in the runtime.
extern void __register_frame(const void *fde); // NOLINT
extern void __deregister_frame(const void *fde); // NOLINT