aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/IntrinsicLowering.cpp
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2007-09-07 11:39:35 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2007-09-07 11:39:35 +0000
commit94c46a0e5fae77e8e68c6d1abf442a1327bf1fb6 (patch)
tree71d3b284ef1e1fdc5c2bcdbe95ae203ab83072d1 /lib/CodeGen/IntrinsicLowering.cpp
parentdf62edc6259244f01f165827d18c9badb29e1caa (diff)
downloadexternal_llvm-94c46a0e5fae77e8e68c6d1abf442a1327bf1fb6.zip
external_llvm-94c46a0e5fae77e8e68c6d1abf442a1327bf1fb6.tar.gz
external_llvm-94c46a0e5fae77e8e68c6d1abf442a1327bf1fb6.tar.bz2
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.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/CodeGen/IntrinsicLowering.cpp b/lib/CodeGen/IntrinsicLowering.cpp
index ab55710..42b09c2 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;