summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2011-05-11 16:31:24 +0000
committerAndrew Trick <atrick@apple.com>2011-05-11 16:31:24 +0000
commit55aeb55aa3aa71289e4a37acb0af9fb56be7e3f6 (patch)
tree758aeac15e42cfcf1518f6bbf7198a7e7c72d15c /llvm/include
parent2b5e8504c8ebefc62e4239087e4b06545bd8c9d9 (diff)
downloadbcm5719-llvm-55aeb55aa3aa71289e4a37acb0af9fb56be7e3f6.tar.gz
bcm5719-llvm-55aeb55aa3aa71289e4a37acb0af9fb56be7e3f6.zip
Bugpoint support for miscompilations that result in a crash.
This change allows bugpoint to pinpoint the "opt" pass and bitcode segment responsible for a crash caused by miscompilation. At least it works well for me now, without having to create any custom execution wrappers. llvm-svn: 131186
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/Support/Program.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/include/llvm/Support/Program.h b/llvm/include/llvm/Support/Program.h
index 96b35660f96..986c53e908d 100644
--- a/llvm/include/llvm/Support/Program.h
+++ b/llvm/include/llvm/Support/Program.h
@@ -96,9 +96,11 @@ namespace sys {
///< expires, the child is killed and this call returns. If zero,
///< this function will wait until the child finishes or forever if
///< it doesn't.
- std::string* ErrMsg ///< If non-zero, provides a pointer to a string
+ std::string* ErrMsg, ///< If non-zero, provides a pointer to a string
///< instance in which error messages will be returned. If the string
///< is non-empty upon return an error occurred while waiting.
+ const char *SignalPrefix ///< If non-zero, provides a prefix to be
+ ///< prepended to ErrMsg if the process is terminated abnormally.
);
/// This function terminates the program.
@@ -137,7 +139,8 @@ namespace sys {
const sys::Path** redirects = 0,
unsigned secondsToWait = 0,
unsigned memoryLimit = 0,
- std::string* ErrMsg = 0);
+ std::string* ErrMsg = 0,
+ const char *SignalPrefix = 0);
/// A convenience function equivalent to Program prg; prg.Execute(..);
/// @see Execute
OpenPOWER on IntegriCloud