LLVM: include/llvm/IR/EHPersonalities.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9#ifndef LLVM_IR_EHPERSONALITIES_H
10#define LLVM_IR_EHPERSONALITIES_H
11
15
16namespace llvm {
21
39
40
41
42
44
46
48
49
50
52
53
54 switch (Pers) {
57 return true;
58 default:
59 return false;
60 }
62}
63
64
65
67 switch (Pers) {
72 return true;
73 default:
74 return false;
75 }
77}
78
79
80
82 switch (Pers) {
88 return true;
89 default:
90 return false;
91 }
93}
94
95
96
98 switch (Pers) {
100 return false;
101
102 default:
103 return true;
104 }
106}
107
109
111
112
113
114
115
117
118}
119
120#endif
This file defines the DenseMap class.
LLVM Basic Block Representation.
TinyPtrVector - This class is specialized for cases where there are normally 0 or 1 element in a vect...
Triple - Helper class for working with autoconf configuration names.
LLVM Value Representation.
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
This is an optimization pass for GlobalISel generic memory operations.
LLVM_ABI StringRef getEHPersonalityName(EHPersonality Pers)
LLVM_ABI DenseMap< BasicBlock *, ColorVector > colorEHFunclets(Function &F)
If an EH funclet personality is in use (see isFuncletEHPersonality), this will recompute which blocks...
bool isScopedEHPersonality(EHPersonality Pers)
Returns true if this personality uses scope-style EH IR instructions: catchswitch,...
Definition EHPersonalities.h:81
bool isNoOpWithoutInvoke(EHPersonality Pers)
Return true if this personality may be safely removed if there are no invoke instructions remaining i...
Definition EHPersonalities.h:97
LLVM_ABI bool canSimplifyInvokeNoUnwind(const Function *F)
EHPersonality
Definition EHPersonalities.h:22
@ CoreCLR
Definition EHPersonalities.h:33
@ MSVC_X86SEH
Definition EHPersonalities.h:30
@ GNU_ObjC
Definition EHPersonalities.h:29
@ GNU_C
Definition EHPersonalities.h:25
@ GNU_Ada
Definition EHPersonalities.h:24
@ MSVC_TableSEH
Definition EHPersonalities.h:31
@ Wasm_CXX
Definition EHPersonalities.h:35
@ GNU_CXX_SjLj
Definition EHPersonalities.h:28
@ Unknown
Definition EHPersonalities.h:23
@ MSVC_CXX
Definition EHPersonalities.h:32
@ GNU_CXX
Definition EHPersonalities.h:27
@ XL_CXX
Definition EHPersonalities.h:36
@ ZOS_CXX
Definition EHPersonalities.h:37
@ GNU_C_SjLj
Definition EHPersonalities.h:26
@ Rust
Definition EHPersonalities.h:34
LLVM_ABI EHPersonality classifyEHPersonality(const Value *Pers)
See if the given exception handling personality function is one that we understand.
bool isFuncletEHPersonality(EHPersonality Pers)
Returns true if this is a personality function that invokes handler funclets (which must return to it...
Definition EHPersonalities.h:66
bool isAsynchronousEHPersonality(EHPersonality Pers)
Returns true if this personality function catches asynchronous exceptions.
Definition EHPersonalities.h:51
TinyPtrVector< BasicBlock * > ColorVector
Definition EHPersonalities.h:110
LLVM_ABI EHPersonality getDefaultEHPersonality(const Triple &T)