@@ -110,7 +110,7 @@ static void createRefCountOpForPayload(SILBuilder &Builder, SILInstruction *I,
110
110
111
111
namespace {
112
112
113
- class BBToDataflowStateMap ;
113
+ class EnumCaseDataflowContext ;
114
114
115
115
using EnumBBCaseList =
116
116
llvm::SmallVector<std::pair<SILBasicBlock *, EnumElementDecl *>, 2 >;
@@ -179,24 +179,24 @@ class BBEnumTagDataflowState
179
179
// / first predecessor BB.
180
180
// /
181
181
// / We will be performing an intersection in a later step of the merging.
182
- bool initWithFirstPred (BBToDataflowStateMap &BBToStateMap,
182
+ bool initWithFirstPred (EnumCaseDataflowContext &BBToStateMap,
183
183
SILBasicBlock *FirstPredBB);
184
184
185
185
// / Top level merging function for predecessors.
186
- void mergePredecessorStates (BBToDataflowStateMap &BBToStateMap);
186
+ void mergePredecessorStates (EnumCaseDataflowContext &BBToStateMap);
187
187
188
188
// /
189
- void mergeSinglePredTermInfoIntoState (BBToDataflowStateMap &BBToStateMap,
189
+ void mergeSinglePredTermInfoIntoState (EnumCaseDataflowContext &BBToStateMap,
190
190
SILBasicBlock *Pred);
191
191
};
192
192
193
193
// / Map all blocks to BBEnumTagDataflowState in RPO order.
194
- class BBToDataflowStateMap {
194
+ class EnumCaseDataflowContext {
195
195
PostOrderFunctionInfo *PO;
196
196
std::vector<BBEnumTagDataflowState> BBToStateVec;
197
197
198
198
public:
199
- BBToDataflowStateMap (PostOrderFunctionInfo *PO) : PO(PO), BBToStateVec() {
199
+ EnumCaseDataflowContext (PostOrderFunctionInfo *PO) : PO(PO), BBToStateVec() {
200
200
BBToStateVec.resize (PO->size ());
201
201
unsigned RPOIdx = 0 ;
202
202
for (SILBasicBlock *BB : PO->getReversePostOrder ()) {
@@ -303,7 +303,7 @@ void BBEnumTagDataflowState::handlePredCondSelectEnum(CondBranchInst *CondBr) {
303
303
}
304
304
305
305
bool BBEnumTagDataflowState::initWithFirstPred (
306
- BBToDataflowStateMap &BBToStateMap, SILBasicBlock *FirstPredBB) {
306
+ EnumCaseDataflowContext &BBToStateMap, SILBasicBlock *FirstPredBB) {
307
307
// Try to look up the state for the first pred BB.
308
308
BBEnumTagDataflowState *FirstPredState = BBToStateMap.getBBState (FirstPredBB);
309
309
@@ -333,7 +333,7 @@ bool BBEnumTagDataflowState::initWithFirstPred(
333
333
}
334
334
335
335
void BBEnumTagDataflowState::mergeSinglePredTermInfoIntoState (
336
- BBToDataflowStateMap &BBToStateMap, SILBasicBlock *Pred) {
336
+ EnumCaseDataflowContext &BBToStateMap, SILBasicBlock *Pred) {
337
337
// Grab the terminator of our one predecessor and if it is a switch enum, mix
338
338
// it into this state.
339
339
TermInst *PredTerm = Pred->getTerminator ();
@@ -350,7 +350,7 @@ void BBEnumTagDataflowState::mergeSinglePredTermInfoIntoState(
350
350
}
351
351
352
352
void BBEnumTagDataflowState::mergePredecessorStates (
353
- BBToDataflowStateMap &BBToStateMap) {
353
+ EnumCaseDataflowContext &BBToStateMap) {
354
354
355
355
// If we have no predecessors, there is nothing to do so return early...
356
356
if (getBB ()->pred_empty ()) {
@@ -1595,7 +1595,7 @@ static bool processFunction(SILFunction *F, AliasAnalysis *AA,
1595
1595
1596
1596
bool Changed = false ;
1597
1597
1598
- BBToDataflowStateMap BBToStateMap (PO);
1598
+ EnumCaseDataflowContext BBToStateMap (PO);
1599
1599
for (unsigned RPOIdx = 0 , RPOEnd = BBToStateMap.size (); RPOIdx < RPOEnd;
1600
1600
++RPOIdx) {
1601
1601
0 commit comments