Skip to content

Commit 003b95a

Browse files
committed
[LegalizeTypes] Remove double map lookup in DAGTypeLegalizer::PerformExpensiveChecks. NFC
Remove repeated checks for ResId being 0.
1 parent 66875db commit 003b95a

File tree

1 file changed

+40
-37
lines changed

1 file changed

+40
-37
lines changed

llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp

Lines changed: 40 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -83,46 +83,49 @@ void DAGTypeLegalizer::PerformExpensiveChecks() {
8383
auto ResId = ValueToIdMap.lookup(Res);
8484

8585
unsigned Mapped = 0;
86-
if (ResId && ReplacedValues.count(ResId)) {
87-
Mapped |= 1;
88-
// Check that remapped values are only used by nodes marked NewNode.
89-
for (SDNode::use_iterator UI = Node.use_begin(), UE = Node.use_end();
90-
UI != UE; ++UI)
91-
if (UI.getUse().getResNo() == i)
92-
assert(UI->getNodeId() == NewNode &&
93-
"Remapped value has non-trivial use!");
94-
95-
// Check that the final result of applying ReplacedValues is not
96-
// marked NewNode.
97-
auto NewValId = ReplacedValues[ResId];
98-
auto I = ReplacedValues.find(NewValId);
99-
while (I != ReplacedValues.end()) {
100-
NewValId = I->second;
86+
if (ResId) {
87+
auto I = ReplacedValues.find(ResId);
88+
if (I != ReplacedValues.end()) {
89+
Mapped |= 1;
90+
// Check that remapped values are only used by nodes marked NewNode.
91+
for (SDNode::use_iterator UI = Node.use_begin(), UE = Node.use_end();
92+
UI != UE; ++UI)
93+
if (UI.getUse().getResNo() == i)
94+
assert(UI->getNodeId() == NewNode &&
95+
"Remapped value has non-trivial use!");
96+
97+
// Check that the final result of applying ReplacedValues is not
98+
// marked NewNode.
99+
auto NewValId = I->second;
101100
I = ReplacedValues.find(NewValId);
101+
while (I != ReplacedValues.end()) {
102+
NewValId = I->second;
103+
I = ReplacedValues.find(NewValId);
104+
}
105+
SDValue NewVal = getSDValue(NewValId);
106+
(void)NewVal;
107+
assert(NewVal.getNode()->getNodeId() != NewNode &&
108+
"ReplacedValues maps to a new node!");
102109
}
103-
SDValue NewVal = getSDValue(NewValId);
104-
(void)NewVal;
105-
assert(NewVal.getNode()->getNodeId() != NewNode &&
106-
"ReplacedValues maps to a new node!");
110+
if (PromotedIntegers.count(ResId))
111+
Mapped |= 2;
112+
if (SoftenedFloats.count(ResId))
113+
Mapped |= 4;
114+
if (ScalarizedVectors.count(ResId))
115+
Mapped |= 8;
116+
if (ExpandedIntegers.count(ResId))
117+
Mapped |= 16;
118+
if (ExpandedFloats.count(ResId))
119+
Mapped |= 32;
120+
if (SplitVectors.count(ResId))
121+
Mapped |= 64;
122+
if (WidenedVectors.count(ResId))
123+
Mapped |= 128;
124+
if (PromotedFloats.count(ResId))
125+
Mapped |= 256;
126+
if (SoftPromotedHalfs.count(ResId))
127+
Mapped |= 512;
107128
}
108-
if (ResId && PromotedIntegers.count(ResId))
109-
Mapped |= 2;
110-
if (ResId && SoftenedFloats.count(ResId))
111-
Mapped |= 4;
112-
if (ResId && ScalarizedVectors.count(ResId))
113-
Mapped |= 8;
114-
if (ResId && ExpandedIntegers.count(ResId))
115-
Mapped |= 16;
116-
if (ResId && ExpandedFloats.count(ResId))
117-
Mapped |= 32;
118-
if (ResId && SplitVectors.count(ResId))
119-
Mapped |= 64;
120-
if (ResId && WidenedVectors.count(ResId))
121-
Mapped |= 128;
122-
if (ResId && PromotedFloats.count(ResId))
123-
Mapped |= 256;
124-
if (ResId && SoftPromotedHalfs.count(ResId))
125-
Mapped |= 512;
126129

127130
if (Node.getNodeId() != Processed) {
128131
// Since we allow ReplacedValues to map deleted nodes, it may map nodes

0 commit comments

Comments
 (0)