mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-21 21:29:41 +00:00
Until there is a setjmp/longjmp transformation pass, codegen setjmp as a noop
and longjmp as an abort! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6977 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
dbb6cd12eb
commit
c151e4f415
@ -978,6 +978,10 @@ void ISel::visitIntrinsicCall(LLVMIntrinsic::ID ID, CallInst &CI) {
|
|||||||
addDirectMem(BuildMI(BB, X86::MOVrm32, 5), TmpReg2).addReg(TmpReg1);
|
addDirectMem(BuildMI(BB, X86::MOVrm32, 5), TmpReg2).addReg(TmpReg1);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
case LLVMIntrinsic::longjmp:
|
||||||
|
BuildMI(X86::CALLpcrel32, 1).addExternalSymbol("abort", true);
|
||||||
|
case LLVMIntrinsic::setjmp:
|
||||||
|
return;
|
||||||
default: assert(0 && "Unknown intrinsic for X86!");
|
default: assert(0 && "Unknown intrinsic for X86!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -978,6 +978,10 @@ void ISel::visitIntrinsicCall(LLVMIntrinsic::ID ID, CallInst &CI) {
|
|||||||
addDirectMem(BuildMI(BB, X86::MOVrm32, 5), TmpReg2).addReg(TmpReg1);
|
addDirectMem(BuildMI(BB, X86::MOVrm32, 5), TmpReg2).addReg(TmpReg1);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
case LLVMIntrinsic::longjmp:
|
||||||
|
BuildMI(X86::CALLpcrel32, 1).addExternalSymbol("abort", true);
|
||||||
|
case LLVMIntrinsic::setjmp:
|
||||||
|
return;
|
||||||
default: assert(0 && "Unknown intrinsic for X86!");
|
default: assert(0 && "Unknown intrinsic for X86!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user