[clang] 4935419 - Remove clang::Codegen::EHPadEndScope as unused
David Blaikie via cfe-commits
cfe-commits at lists.llvm.org
Tue Jun 23 15:19:14 PDT 2020
Author: David Blaikie
Date: 2020-06-23T15:18:49-07:00
New Revision: 4935419d779bdc6cc2f1c2f9e78821ad550d3b56
URL: https://github.com/llvm/llvm-project/commit/4935419d779bdc6cc2f1c2f9e78821ad550d3b56
DIFF: https://github.com/llvm/llvm-project/commit/4935419d779bdc6cc2f1c2f9e78821ad550d3b56.diff
LOG: Remove clang::Codegen::EHPadEndScope as unused
Unused since r255423 / D15140 / 4e52d6f811a2269e946c19e77245148bd9221f99
Found indirectly by assessing -debug-info-kind=constructors and
observing the EHPadEndScope type was never emitted because the
constructor is never called. (all credit to Amy Huang for identifying
this issue)
Added:
Modified:
clang/lib/CodeGen/CGCleanup.h
clang/lib/CodeGen/CGException.cpp
Removed:
################################################################################
diff --git a/clang/lib/CodeGen/CGCleanup.h b/clang/lib/CodeGen/CGCleanup.h
index a2b3f71a2f86..ef4f6b9ec133 100644
--- a/clang/lib/CodeGen/CGCleanup.h
+++ b/clang/lib/CodeGen/CGCleanup.h
@@ -102,7 +102,7 @@ class EHScope {
};
public:
- enum Kind { Cleanup, Catch, Terminate, Filter, PadEnd };
+ enum Kind { Cleanup, Catch, Terminate, Filter };
EHScope(Kind kind, EHScopeStack::stable_iterator enclosingEHScope)
: CachedLandingPad(nullptr), CachedEHDispatchBlock(nullptr),
@@ -487,17 +487,6 @@ class EHTerminateScope : public EHScope {
}
};
-class EHPadEndScope : public EHScope {
-public:
- EHPadEndScope(EHScopeStack::stable_iterator enclosingEHScope)
- : EHScope(PadEnd, enclosingEHScope) {}
- static size_t getSize() { return sizeof(EHPadEndScope); }
-
- static bool classof(const EHScope *scope) {
- return scope->getKind() == PadEnd;
- }
-};
-
/// A non-stable pointer into the scope stack.
class EHScopeStack::iterator {
char *Ptr;
@@ -535,10 +524,6 @@ class EHScopeStack::iterator {
case EHScope::Terminate:
Size = EHTerminateScope::getSize();
break;
-
- case EHScope::PadEnd:
- Size = EHPadEndScope::getSize();
- break;
}
Ptr += llvm::alignTo(Size, ScopeStackAlignment);
return *this;
diff --git a/clang/lib/CodeGen/CGException.cpp b/clang/lib/CodeGen/CGException.cpp
index de3d1b129146..2494f38b3159 100644
--- a/clang/lib/CodeGen/CGException.cpp
+++ b/clang/lib/CodeGen/CGException.cpp
@@ -651,9 +651,6 @@ CodeGenFunction::getEHDispatchBlock(EHScopeStack::stable_iterator si) {
case EHScope::Terminate:
dispatchBlock = getTerminateHandler();
break;
-
- case EHScope::PadEnd:
- llvm_unreachable("PadEnd unnecessary for Itanium!");
}
scope.setCachedEHDispatchBlock(dispatchBlock);
}
@@ -695,9 +692,6 @@ CodeGenFunction::getFuncletEHDispatchBlock(EHScopeStack::stable_iterator SI) {
case EHScope::Terminate:
DispatchBlock->setName("terminate");
break;
-
- case EHScope::PadEnd:
- llvm_unreachable("PadEnd dispatch block missing!");
}
EHS.setCachedEHDispatchBlock(DispatchBlock);
return DispatchBlock;
@@ -713,7 +707,6 @@ static bool isNonEHScope(const EHScope &S) {
case EHScope::Filter:
case EHScope::Catch:
case EHScope::Terminate:
- case EHScope::PadEnd:
return false;
}
@@ -780,9 +773,6 @@ llvm::BasicBlock *CodeGenFunction::EmitLandingPad() {
case EHScope::Terminate:
return getTerminateLandingPad();
- case EHScope::PadEnd:
- llvm_unreachable("PadEnd unnecessary for Itanium!");
-
case EHScope::Catch:
case EHScope::Cleanup:
case EHScope::Filter:
@@ -848,9 +838,6 @@ llvm::BasicBlock *CodeGenFunction::EmitLandingPad() {
case EHScope::Catch:
break;
-
- case EHScope::PadEnd:
- llvm_unreachable("PadEnd unnecessary for Itanium!");
}
EHCatchScope &catchScope = cast<EHCatchScope>(*I);
More information about the cfe-commits
mailing list