|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/ADT/Optional.h 144 T value;
172 T &getValue() LLVM_LVALUE_FUNCTION noexcept {
176 T const &getValue() const LLVM_LVALUE_FUNCTION noexcept {
181 T &&getValue() && noexcept {
206 ::new ((void *)std::addressof(value)) T(std::move(y));
216 optional_detail::OptionalStorage<T> Storage;
219 using value_type = T;
224 Optional(const T &y) : Storage(optional_detail::in_place_t{}, y) {}
227 Optional(T &&y) : Storage(optional_detail::in_place_t{}, std::move(y)) {}
230 Optional &operator=(T &&y) {
241 static inline Optional create(const T *y) {
245 Optional &operator=(const T &y) {
253 const T *getPointer() const { return &Storage.getValue(); }
254 T *getPointer() { return &Storage.getValue(); }
255 const T &getValue() const LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
256 T &getValue() LLVM_LVALUE_FUNCTION { return Storage.getValue(); }
260 const T *operator->() const { return getPointer(); }
261 T *operator->() { return getPointer(); }
262 const T &operator*() const LLVM_LVALUE_FUNCTION { return getValue(); }
263 T &operator*() LLVM_LVALUE_FUNCTION { return getValue(); }
266 constexpr T getValueOr(U &&value) const LLVM_LVALUE_FUNCTION {
271 T &&getValue() && { return std::move(Storage.getValue()); }
272 T &&operator*() && { return std::move(Storage.getValue()); }
275 T getValueOr(U &&value) && {
include/llvm/ADT/StringSwitch.h 48 Optional<T> Result;
67 StringSwitch &Case(StringLiteral S, T Value) {
74 StringSwitch& EndsWith(StringLiteral S, T Value) {
81 StringSwitch& StartsWith(StringLiteral S, T Value) {
88 StringSwitch &Cases(StringLiteral S0, StringLiteral S1, T Value) {
93 T Value) {
98 StringLiteral S3, T Value) {
103 StringLiteral S3, StringLiteral S4, T Value) {
109 T Value) {
115 StringLiteral S6, T Value) {
121 StringLiteral S6, StringLiteral S7, T Value) {
128 T Value) {
135 StringLiteral S9, T Value) {
140 StringSwitch &CaseLower(StringLiteral S, T Value) {
147 StringSwitch &EndsWithLower(StringLiteral S, T Value) {
154 StringSwitch &StartsWithLower(StringLiteral S, T Value) {
161 StringSwitch &CasesLower(StringLiteral S0, StringLiteral S1, T Value) {
166 T Value) {
171 StringLiteral S3, T Value) {
176 StringLiteral S3, StringLiteral S4, T Value) {
181 R Default(T Value) {
181 R Default(T Value) {
188 operator R() {
include/llvm/Analysis/EHPersonalities.h 41 EHPersonality classifyEHPersonality(const Value *Pers);
43 StringRef getEHPersonalityName(EHPersonality Pers);
45 EHPersonality getDefaultEHPersonality(const Triple &T);
49 inline bool isAsynchronousEHPersonality(EHPersonality Pers) {
53 case EHPersonality::MSVC_X86SEH:
54 case EHPersonality::MSVC_Win64SEH:
64 inline bool isFuncletEHPersonality(EHPersonality Pers) {
66 case EHPersonality::MSVC_CXX:
67 case EHPersonality::MSVC_X86SEH:
68 case EHPersonality::MSVC_Win64SEH:
69 case EHPersonality::CoreCLR:
79 inline bool isScopedEHPersonality(EHPersonality Pers) {
81 case EHPersonality::MSVC_CXX:
82 case EHPersonality::MSVC_X86SEH:
83 case EHPersonality::MSVC_Win64SEH:
84 case EHPersonality::CoreCLR:
85 case EHPersonality::Wasm_CXX:
95 inline bool isNoOpWithoutInvoke(EHPersonality Pers) {
97 case EHPersonality::Unknown:
include/llvm/CodeGen/MachineFunction.h 343 EHPersonality PersonalityTypeCache = EHPersonality::Unknown;
343 EHPersonality PersonalityTypeCache = EHPersonality::Unknown;
include/llvm/Support/type_traits.h 91 T t;
122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
122 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<const F &>(), std::true_type{});
130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
130 static auto get(F*) -> decltype(std::declval<F &>() = std::declval<F &&>(), std::true_type{});
145 std::is_copy_constructible<detail::trivial_helper<T>>::value;
147 !std::is_copy_constructible<T>::value;
151 std::is_move_constructible<detail::trivial_helper<T>>::value;
153 !std::is_move_constructible<T>::value;
157 is_copy_assignable<detail::trivial_helper<T>>::value;
159 !is_copy_assignable<T>::value;
163 is_move_assignable<detail::trivial_helper<T>>::value;
165 !is_move_assignable<T>::value;
169 std::is_destructible<detail::trivial_helper<T>>::value;
lib/Analysis/EHPersonalities.cpp 21 EHPersonality llvm::classifyEHPersonality(const Value *Pers) {
25 return EHPersonality::Unknown;
27 .Case("__gnat_eh_personality", EHPersonality::GNU_Ada)
28 .Case("__gxx_personality_v0", EHPersonality::GNU_CXX)
29 .Case("__gxx_personality_seh0", EHPersonality::GNU_CXX)
30 .Case("__gxx_personality_sj0", EHPersonality::GNU_CXX_SjLj)
31 .Case("__gcc_personality_v0", EHPersonality::GNU_C)
32 .Case("__gcc_personality_seh0", EHPersonality::GNU_C)
33 .Case("__gcc_personality_sj0", EHPersonality::GNU_C_SjLj)
34 .Case("__objc_personality_v0", EHPersonality::GNU_ObjC)
35 .Case("_except_handler3", EHPersonality::MSVC_X86SEH)
36 .Case("_except_handler4", EHPersonality::MSVC_X86SEH)
37 .Case("__C_specific_handler", EHPersonality::MSVC_Win64SEH)
38 .Case("__CxxFrameHandler3", EHPersonality::MSVC_CXX)
39 .Case("ProcessCLRException", EHPersonality::CoreCLR)
40 .Case("rust_eh_personality", EHPersonality::Rust)
41 .Case("__gxx_wasm_personality_v0", EHPersonality::Wasm_CXX)
42 .Default(EHPersonality::Unknown);
45 StringRef llvm::getEHPersonalityName(EHPersonality Pers) {
47 case EHPersonality::GNU_Ada: return "__gnat_eh_personality";
48 case EHPersonality::GNU_CXX: return "__gxx_personality_v0";
49 case EHPersonality::GNU_CXX_SjLj: return "__gxx_personality_sj0";
50 case EHPersonality::GNU_C: return "__gcc_personality_v0";
51 case EHPersonality::GNU_C_SjLj: return "__gcc_personality_sj0";
52 case EHPersonality::GNU_ObjC: return "__objc_personality_v0";
53 case EHPersonality::MSVC_X86SEH: return "_except_handler3";
54 case EHPersonality::MSVC_Win64SEH: return "__C_specific_handler";
55 case EHPersonality::MSVC_CXX: return "__CxxFrameHandler3";
56 case EHPersonality::CoreCLR: return "ProcessCLRException";
57 case EHPersonality::Rust: return "rust_eh_personality";
58 case EHPersonality::Wasm_CXX: return "__gxx_wasm_personality_v0";
59 case EHPersonality::Unknown: llvm_unreachable("Unknown EHPersonality!");
65 EHPersonality llvm::getDefaultEHPersonality(const Triple &T) {
66 return EHPersonality::GNU_C;
70 EHPersonality Personality = classifyEHPersonality(F->getPersonalityFn());
lib/CodeGen/AsmPrinter/WinException.cpp 73 EHPersonality Per = EHPersonality::Unknown;
73 EHPersonality Per = EHPersonality::Unknown;
95 if (Per == EHPersonality::MSVC_X86SEH && !hasEHFunclets) {
125 EHPersonality Per = EHPersonality::Unknown;
125 EHPersonality Per = EHPersonality::Unknown;
140 if (Per == EHPersonality::MSVC_Win64SEH && MF->hasEHFunclets())
153 if (Per == EHPersonality::MSVC_Win64SEH)
155 else if (Per == EHPersonality::MSVC_X86SEH)
157 else if (Per == EHPersonality::MSVC_CXX)
159 else if (Per == EHPersonality::CoreCLR)
256 EHPersonality Per = EHPersonality::Unknown;
256 EHPersonality Per = EHPersonality::Unknown;
272 if (Per == EHPersonality::MSVC_CXX && shouldEmitPersonality &&
280 } else if (Per == EHPersonality::MSVC_Win64SEH && MF->hasEHFunclets() &&
lib/CodeGen/DwarfEHPrepare.cpp 198 EHPersonality Pers = classifyEHPersonality(Fn.getPersonalityFn());
lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp 102 EHPersonality Personality = classifyEHPersonality(
107 if (Personality == EHPersonality::MSVC_CXX)
111 else if (Personality == EHPersonality::CoreCLR)
125 if (Personality == EHPersonality::Wasm_CXX) {
316 else if (Personality == EHPersonality::Wasm_CXX) {
lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp 1579 auto Pers = classifyEHPersonality(FuncInfo.Fn->getPersonalityFn());
1580 bool IsMSVCCXX = Pers == EHPersonality::MSVC_CXX;
1581 bool IsCoreCLR = Pers == EHPersonality::CoreCLR;
1583 bool IsWasmCXX = Pers == EHPersonality::Wasm_CXX;
1601 auto Pers = classifyEHPersonality(FuncInfo.Fn->getPersonalityFn());
1638 auto Pers = classifyEHPersonality(FuncInfo.Fn->getPersonalityFn());
1639 if (Pers != EHPersonality::Wasm_CXX) {
1688 EHPersonality Personality =
1690 bool IsMSVCCXX = Personality == EHPersonality::MSVC_CXX;
1691 bool IsCoreCLR = Personality == EHPersonality::CoreCLR;
1692 bool IsWasmCXX = Personality == EHPersonality::Wasm_CXX;
7080 auto Pers = classifyEHPersonality(FuncInfo.Fn->getPersonalityFn());
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp 1233 auto Pers = classifyEHPersonality(PersonalityFn);
1262 if (Pers == EHPersonality::Wasm_CXX) {
lib/CodeGen/StackProtector.cpp 100 EHPersonality Personality = classifyEHPersonality(Fn.getPersonalityFn());
lib/CodeGen/WinEHPrepare.cpp 93 EHPersonality Personality = EHPersonality::Unknown;
93 EHPersonality Personality = EHPersonality::Unknown;
994 if (Personality == EHPersonality::MSVC_CXX && CleanupPad) {
lib/Target/AArch64/AArch64FrameLowering.cpp 989 EHPersonality Per = classifyEHPersonality(F.getPersonalityFn());
lib/Target/X86/X86FrameLowering.cpp 983 EHPersonality Personality = EHPersonality::Unknown;
983 EHPersonality Personality = EHPersonality::Unknown;
987 MF.hasEHFunclets() && Personality == EHPersonality::CoreCLR;
1563 EHPersonality Personality =
1565 if (Personality == EHPersonality::CoreCLR) {
3180 classifyEHPersonality(F.getPersonalityFn()) != EHPersonality::MSVC_CXX)
lib/Target/X86/X86ISelLowering.cpp 3511 EHPersonality Personality = classifyEHPersonality(F.getPersonalityFn());
3512 if (Personality == EHPersonality::CoreCLR) {
4050 EHPersonality Pers =
4053 : EHPersonality::Unknown;
22683 case EHPersonality::MSVC_X86SEH: return 24;
22684 case EHPersonality::MSVC_CXX: return 16;
24291 if (classifyEHPersonality(PersonalityFn) == EHPersonality::CoreCLR)
lib/Target/X86/X86WinEHState.cpp 69 bool isStateStoreNeeded(EHPersonality Personality, CallSite CS);
91 EHPersonality Personality = EHPersonality::Unknown;
91 EHPersonality Personality = EHPersonality::Unknown;
198 Personality = EHPersonality::Unknown;
285 if (Personality == EHPersonality::MSVC_CXX) {
306 } else if (Personality == EHPersonality::MSVC_X86SEH) {
474 if (Personality == EHPersonality::MSVC_CXX) {
478 } else if (Personality == EHPersonality::MSVC_X86SEH) {
624 bool WinEHStatePass::isStateStoreNeeded(EHPersonality Personality,
lib/Transforms/InstCombine/InstructionCombining.cpp 2771 static bool isCatchAll(EHPersonality Personality, Constant *TypeInfo) {
2773 case EHPersonality::GNU_C:
2774 case EHPersonality::GNU_C_SjLj:
2775 case EHPersonality::Rust:
2779 case EHPersonality::Unknown:
2781 case EHPersonality::GNU_Ada:
2785 case EHPersonality::GNU_CXX:
2786 case EHPersonality::GNU_CXX_SjLj:
2787 case EHPersonality::GNU_ObjC:
2788 case EHPersonality::MSVC_X86SEH:
2789 case EHPersonality::MSVC_Win64SEH:
2790 case EHPersonality::MSVC_CXX:
2791 case EHPersonality::CoreCLR:
2792 case EHPersonality::Wasm_CXX:
2809 EHPersonality Personality =
lib/Transforms/Instrumentation/GCOVProfiling.cpp 617 EHPersonality Personality = classifyEHPersonality(F.getPersonalityFn());
lib/Transforms/Utils/EscapeEnumerator.cpp 24 EHPersonality Pers = getDefaultEHPersonality(T);
lib/Transforms/Utils/InlineFunction.cpp 1619 EHPersonality Personality = classifyEHPersonality(CallerPersonality);
1629 if (Personality == EHPersonality::MSVC_CXX) {
lib/Transforms/Utils/SimplifyCFG.cpp 4197 EHPersonality::CoreCLR)
usr/include/c++/7.4.0/bits/move.h 46 inline _GLIBCXX_CONSTEXPR _Tp*
47 __addressof(_Tp& __r) _GLIBCXX_NOEXCEPT
98 move(_Tp&& __t) noexcept
136 inline _GLIBCXX17_CONSTEXPR _Tp*
137 addressof(_Tp& __r) noexcept
143 const _Tp* addressof(const _Tp&&) = delete;
143 const _Tp* addressof(const _Tp&&) = delete;
usr/include/c++/7.4.0/type_traits 215 : public __is_void_helper<typename remove_cv<_Tp>::type>::type
326 : public __is_integral_helper<typename remove_cv<_Tp>::type>::type
354 : public __is_floating_point_helper<typename remove_cv<_Tp>::type>::type
581 : public __or_<is_lvalue_reference<_Tp>,
582 is_rvalue_reference<_Tp>>::type
588 : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
588 : public __or_<is_integral<_Tp>, is_floating_point<_Tp>>::type
601 : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
601 : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
602 is_void<_Tp>>>::type
611 : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
611 : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
611 : public __or_<is_arithmetic<_Tp>, is_enum<_Tp>, is_pointer<_Tp>,
612 is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
612 is_member_pointer<_Tp>, is_null_pointer<_Tp>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
777 : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
777 : public __and_<is_array<_Tp>, __not_<extent<_Tp>>>
825 : public __is_destructible_safe<_Tp>::type
984 typedef decltype(__test<_Tp, _Arg>(0)) type;
989 : public __and_<is_destructible<_Tp>,
990 __is_direct_constructible_impl<_Tp, _Arg>>
1072 __is_direct_constructible_ref_cast<_Tp, _Arg>,
1073 __is_direct_constructible_new_safe<_Tp, _Arg>
1079 : public __is_direct_constructible_new<_Tp, _Arg>::type
1119 : public __is_direct_constructible<_Tp, _Arg>
1130 : public __is_constructible_impl<_Tp, _Args...>::type
1142 : public is_constructible<_Tp, const _Tp&>
1142 : public is_constructible<_Tp, const _Tp&>
1148 : public __is_copy_constructible_impl<_Tp>
1160 : public is_constructible<_Tp, _Tp&&>
1160 : public is_constructible<_Tp, _Tp&&>
1166 : public __is_move_constructible_impl<_Tp>
1554 { typedef _Tp type; };
1563 { typedef _Tp type; };
1574 remove_const<typename remove_volatile<_Tp>::type>::type type;
1633 { typedef _Tp type; };
1659 { typedef _Tp&& type; };