From 192623ec93444785a100d64a5a7218dec4d36d1e Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sat, 17 May 2003 22:26:33 +0000 Subject: Add support for setjmp/longjmp primitives Patch checked in for Bill Wendling :) llvm-svn: 6241 --- llvm/lib/VMCore/Function.cpp | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) (limited to 'llvm/lib/VMCore/Function.cpp') diff --git a/llvm/lib/VMCore/Function.cpp b/llvm/lib/VMCore/Function.cpp index 0d5f90b45df..89195a34a42 100644 --- a/llvm/lib/VMCore/Function.cpp +++ b/llvm/lib/VMCore/Function.cpp @@ -164,20 +164,16 @@ unsigned Function::getIntrinsicID() const { return 0; // All intrinsics start with 'llvm.' switch (getName()[5]) { + case 'l': + if (getName() == "llvm.longjmp") return LLVMIntrinsic::longjmp; + break; + case 's': + if (getName() == "llvm.setjmp") return LLVMIntrinsic::setjmp; + break; case 'v': - if (getName().size() >= 9) { - switch (getName()[8]) { - case 's': - if (getName() == "llvm.va_start") return LLVMIntrinsic::va_start; - break; - case 'e': - if (getName() == "llvm.va_end") return LLVMIntrinsic::va_end; - break; - case 'c': - if (getName() == "llvm.va_copy") return LLVMIntrinsic::va_copy; - break; - } - } + if (getName() == "llvm.va_copy") return LLVMIntrinsic::va_copy; + if (getName() == "llvm.va_end") return LLVMIntrinsic::va_end; + if (getName() == "llvm.va_start") return LLVMIntrinsic::va_start; break; } // The "llvm." namespace is reserved! -- cgit v1.2.3