diff options
author | José Fonseca <[email protected]> | 2010-08-29 12:05:36 +0100 |
---|---|---|
committer | José Fonseca <[email protected]> | 2010-08-30 13:27:28 +0100 |
commit | e4c3e7f9d8eae05c83f6e1fc54dc63ded3c12d12 (patch) | |
tree | b1388ca59ccdca82ca606733f5289fb8403074d1 /src/gallium/auxiliary/gallivm | |
parent | 7a08dbcf55d4c959907086a5e4851e0cab0b9f67 (diff) |
gallivm: Disable LLVM's pretty stack trace dumper.
By default LLVM adds a signal handler to output a pretty stack trace.
This signal handler is never removed, causing problems when unloading
the shared object where the gallium driver resides.
Thanks to Chris Li for finding this.
Diffstat (limited to 'src/gallium/auxiliary/gallivm')
-rw-r--r-- | src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp index 92f9adfc18d..48baf7c425c 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp @@ -40,6 +40,7 @@ #include <llvm/ExecutionEngine/ExecutionEngine.h> #include <llvm/ExecutionEngine/JITEventListener.h> #include <llvm/Support/CommandLine.h> +#include <llvm/Support/PrettyStackTrace.h> #include "pipe/p_config.h" #include "util/u_debug.h" @@ -161,6 +162,13 @@ lp_set_target_options(void) llvm::cl::ParseCommandLineOptions(2, const_cast<char**>(options)); first = FALSE; } + + /* + * By default LLVM adds a signal handler to output a pretty stack trace. + * This signal handler is never removed, causing problems when unloading the + * shared object where the gallium driver resides. + */ + llvm::DisablePrettyStackTrace = true; } |