diff options
author | Anton Korobeynikov <asl@math.spbu.ru> | 2007-09-07 11:39:35 +0000 |
---|---|---|
committer | Anton Korobeynikov <asl@math.spbu.ru> | 2007-09-07 11:39:35 +0000 |
commit | 8806c7b1f5317a9679a5779ffc08c552f2091bce (patch) | |
tree | 71d3b284ef1e1fdc5c2bcdbe95ae203ab83072d1 /lib/CodeGen/IntrinsicLowering.cpp | |
parent | 0fe4b5a113625f0b3f88a92ec8c482527b72af02 (diff) |
Split eh.select / eh.typeid.for intrinsics into i32/i64 versions. This is needed, because they just "mark" register
liveins and we let frontend solve type issue, not lowering code :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41763 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/IntrinsicLowering.cpp')
-rw-r--r-- | lib/CodeGen/IntrinsicLowering.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/CodeGen/IntrinsicLowering.cpp b/lib/CodeGen/IntrinsicLowering.cpp index ab55710b6e..42b09c2d3a 100644 --- a/lib/CodeGen/IntrinsicLowering.cpp +++ b/lib/CodeGen/IntrinsicLowering.cpp @@ -710,11 +710,13 @@ void IntrinsicLowering::LowerIntrinsicCall(CallInst *CI) { break; // Simply strip out debugging intrinsics case Intrinsic::eh_exception: - case Intrinsic::eh_selector: + case Intrinsic::eh_selector_i32: + case Intrinsic::eh_selector_i64: CI->replaceAllUsesWith(Constant::getNullValue(CI->getType())); break; - case Intrinsic::eh_typeid_for: + case Intrinsic::eh_typeid_for_i32: + case Intrinsic::eh_typeid_for_i64: // Return something different to eh_selector. CI->replaceAllUsesWith(ConstantInt::get(CI->getType(), 1)); break; |