diff options
Diffstat (limited to 'include/llvm/Support')
-rw-r--r-- | include/llvm/Support/ErrorHandling.h | 4 | ||||
-rw-r--r-- | include/llvm/Support/InstVisitor.h | 4 | ||||
-rw-r--r-- | include/llvm/Support/PassNameParser.h | 3 |
3 files changed, 6 insertions, 5 deletions
diff --git a/include/llvm/Support/ErrorHandling.h b/include/llvm/Support/ErrorHandling.h index c7e4297f00..1a401eb7c0 100644 --- a/include/llvm/Support/ErrorHandling.h +++ b/include/llvm/Support/ErrorHandling.h @@ -46,11 +46,11 @@ namespace llvm { /// This function calls abort(). /// Call this after assert(0), so that compiler knows the path is not /// reachable. - void llvm_unreachable(void) NORETURN; + void llvm_unreachable(const char *msg=0) NORETURN; } #ifndef NDEBUG -#define LLVM_UNREACHABLE(msg) do {cerr<<msg<<"\n";llvm_unreachable();}while(0) +#define LLVM_UNREACHABLE(msg) llvm_unreachable(msg) #else #define LLVM_UNREACHABLE(msg) llvm_unreachable() #endif diff --git a/include/llvm/Support/InstVisitor.h b/include/llvm/Support/InstVisitor.h index 768f4877ad..2fa8c4793c 100644 --- a/include/llvm/Support/InstVisitor.h +++ b/include/llvm/Support/InstVisitor.h @@ -14,6 +14,7 @@ #include "llvm/Function.h" #include "llvm/Instructions.h" #include "llvm/Module.h" +#include "llvm/Support/ErrorHandling.h" namespace llvm { @@ -113,8 +114,7 @@ public: // RetTy visit(Instruction &I) { switch (I.getOpcode()) { - default: assert(0 && "Unknown instruction type encountered!"); - abort(); + default: LLVM_UNREACHABLE("Unknown instruction type encountered!"); // Build the switch statement using the Instruction.def file... #define HANDLE_INST(NUM, OPCODE, CLASS) \ case Instruction::OPCODE: return \ diff --git a/include/llvm/Support/PassNameParser.h b/include/llvm/Support/PassNameParser.h index e489e0a6f0..12c124074d 100644 --- a/include/llvm/Support/PassNameParser.h +++ b/include/llvm/Support/PassNameParser.h @@ -24,6 +24,7 @@ #define LLVM_SUPPORT_PASS_NAME_PARSER_H #include "llvm/Support/CommandLine.h" +#include "llvm/Support/ErrorHandling.h" #include "llvm/Pass.h" #include <algorithm> #include <cstring> @@ -67,7 +68,7 @@ public: if (findOption(P->getPassArgument()) != getNumOptions()) { cerr << "Two passes with the same argument (-" << P->getPassArgument() << ") attempted to be registered!\n"; - abort(); + llvm_unreachable(); } addLiteralOption(P->getPassArgument(), P, P->getPassName()); } |