forked from OSchip/llvm-project
CodeGen: simplify EH personality selection (NFC)
Fix a typo in the comment, reorder to ensure that the ordering matches across the ObjC/ObjC++ cases. NFCI. llvm-svn: 317146
This commit is contained in:
parent
43252d5390
commit
8f6d944721
|
@ -165,26 +165,27 @@ static const EHPersonality &getCXXPersonality(const llvm::Triple &T,
|
|||
static const EHPersonality &getObjCXXPersonality(const llvm::Triple &T,
|
||||
const LangOptions &L) {
|
||||
switch (L.ObjCRuntime.getKind()) {
|
||||
// In the fragile ABI, just use C++ exception handling and hope
|
||||
// they're not doing crazy exception mixing.
|
||||
case ObjCRuntime::FragileMacOSX:
|
||||
return getCXXPersonality(T, L);
|
||||
|
||||
// The ObjC personality defers to the C++ personality for non-ObjC
|
||||
// handlers. Unlike the C++ case, we use the same personality
|
||||
// function on targets using (backend-driven) SJLJ EH.
|
||||
case ObjCRuntime::MacOSX:
|
||||
case ObjCRuntime::iOS:
|
||||
case ObjCRuntime::WatchOS:
|
||||
return EHPersonality::NeXT_ObjC;
|
||||
return getObjCPersonality(T, L);
|
||||
|
||||
// In the fragile ABI, just use C++ exception handling and hope
|
||||
// they're not doing crazy exception mixing.
|
||||
case ObjCRuntime::FragileMacOSX:
|
||||
return getCXXPersonality(T, L);
|
||||
case ObjCRuntime::GNUstep:
|
||||
return EHPersonality::GNU_ObjCXX;
|
||||
|
||||
// The GCC runtime's personality function inherently doesn't support
|
||||
// mixed EH. Use the C++ personality just to avoid returning null.
|
||||
// mixed EH. Use the ObjC personality just to avoid returning null.
|
||||
case ObjCRuntime::GCC:
|
||||
case ObjCRuntime::ObjFW:
|
||||
return getObjCPersonality(T, L);
|
||||
case ObjCRuntime::GNUstep:
|
||||
return EHPersonality::GNU_ObjCXX;
|
||||
}
|
||||
llvm_unreachable("bad runtime kind");
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue