mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-29 10:25:12 +00:00
Add support for the sig(set|long)jmp intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7951 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -1139,6 +1139,7 @@ void CWriter::visitCallInst(CallInst &I) {
|
||||
return;
|
||||
|
||||
case LLVMIntrinsic::setjmp:
|
||||
case LLVMIntrinsic::sigsetjmp:
|
||||
// This instrinsic should never exist in the program, but until we get
|
||||
// setjmp/longjmp transformations going on, we should codegen it to
|
||||
// something reasonable. This will allow code that never calls longjmp
|
||||
@@ -1146,7 +1147,9 @@ void CWriter::visitCallInst(CallInst &I) {
|
||||
Out << "0";
|
||||
return;
|
||||
case LLVMIntrinsic::longjmp:
|
||||
// Treat longjmp the same as setjmp
|
||||
case LLVMIntrinsic::siglongjmp:
|
||||
// Longjmp is not implemented, and never will be. It would cause an
|
||||
// exception throw.
|
||||
Out << "abort()";
|
||||
return;
|
||||
}
|
||||
|
Reference in New Issue
Block a user