diff options
Diffstat (limited to 'llvm/lib/CodeGen/CodeGenPrepare.cpp')
-rw-r--r-- | llvm/lib/CodeGen/CodeGenPrepare.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/CodeGenPrepare.cpp b/llvm/lib/CodeGen/CodeGenPrepare.cpp index 088062afa..d5fbd4c 100644 --- a/llvm/lib/CodeGen/CodeGenPrepare.cpp +++ b/llvm/lib/CodeGen/CodeGenPrepare.cpp @@ -4672,8 +4672,8 @@ class TypePromotionHelper { static void addPromotedInst(InstrToOrigTy &PromotedInsts, Instruction *ExtOpnd, bool IsSExt) { ExtType ExtTy = IsSExt ? SignExtension : ZeroExtension; - InstrToOrigTy::iterator It = PromotedInsts.find(ExtOpnd); - if (It != PromotedInsts.end()) { + auto [It, Inserted] = PromotedInsts.try_emplace(ExtOpnd); + if (!Inserted) { // If the new extension is same as original, the information in // PromotedInsts[ExtOpnd] is still correct. if (It->second.getInt() == ExtTy) @@ -4684,7 +4684,7 @@ class TypePromotionHelper { // BothExtension. ExtTy = BothExtension; } - PromotedInsts[ExtOpnd] = TypeIsSExt(ExtOpnd->getType(), ExtTy); + It->second = TypeIsSExt(ExtOpnd->getType(), ExtTy); } /// Utility function to query the original type of instruction \p Opnd |