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 | 94c46a0e5fae77e8e68c6d1abf442a1327bf1fb6 (patch) | |
tree | 71d3b284ef1e1fdc5c2bcdbe95ae203ab83072d1 /include | |
parent | df62edc6259244f01f165827d18c9badb29e1caa (diff) | |
download | external_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 'include')
-rw-r--r-- | include/llvm/Intrinsics.td | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/include/llvm/Intrinsics.td b/include/llvm/Intrinsics.td index 6f21a1c..bb9e9c7 100644 --- a/include/llvm/Intrinsics.td +++ b/include/llvm/Intrinsics.td @@ -218,10 +218,14 @@ def int_dbg_declare : Intrinsic<[llvm_void_ty, llvm_descriptor_ty, //===------------------ Exception Handling Intrinsics----------------------===// // -def int_eh_exception : Intrinsic<[llvm_ptr_ty]>; -def int_eh_selector : Intrinsic<[llvm_i32_ty, llvm_ptr_ty, llvm_ptr_ty, - llvm_vararg_ty]>; -def int_eh_typeid_for : Intrinsic<[llvm_i32_ty, llvm_ptr_ty]>; +def int_eh_exception : Intrinsic<[llvm_ptr_ty]>; +def int_eh_selector_i32 : Intrinsic<[llvm_i32_ty, llvm_ptr_ty, llvm_ptr_ty, + llvm_vararg_ty]>; +def int_eh_selector_i64 : Intrinsic<[llvm_i64_ty, llvm_ptr_ty, llvm_ptr_ty, + llvm_vararg_ty]>; + +def int_eh_typeid_for_i32 : Intrinsic<[llvm_i32_ty, llvm_ptr_ty]>; +def int_eh_typeid_for_i64 : Intrinsic<[llvm_i64_ty, llvm_ptr_ty]>; def int_eh_return : Intrinsic<[llvm_void_ty, llvm_i32_ty, llvm_ptr_ty]>, GCCBuiltin<"__builtin_eh_return">; |