From: Chandler Carruth Date: Wed, 22 Jul 2015 11:43:24 +0000 (+0000) Subject: [GMR] Only look in the associated allocs map for an underlying value if X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=commitdiff_plain;h=5b6ebf5b5c2fef2049897f28e9e66bba38c41923 [GMR] Only look in the associated allocs map for an underlying value if it wasn't one of the indirect globals (which clearly cannot be an allocation function call). Also only do a single lookup into this map instead of two. NFC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@242892 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Analysis/IPA/GlobalsModRef.cpp b/lib/Analysis/IPA/GlobalsModRef.cpp index 7713a5b6476..c0fb3cdae1f 100644 --- a/lib/Analysis/IPA/GlobalsModRef.cpp +++ b/lib/Analysis/IPA/GlobalsModRef.cpp @@ -599,10 +599,10 @@ AliasResult GlobalsModRef::alias(const MemoryLocation &LocA, // These pointers may also be from an allocation for the indirect global. If // so, also handle them. - if (AllocsForIndirectGlobals.count(UV1)) - GV1 = AllocsForIndirectGlobals[UV1]; - if (AllocsForIndirectGlobals.count(UV2)) - GV2 = AllocsForIndirectGlobals[UV2]; + if (!GV1) + GV1 = AllocsForIndirectGlobals.lookup(UV1); + if (!GV2) + GV2 = AllocsForIndirectGlobals.lookup(UV2); // Now that we know whether the two pointers are related to indirect globals, // use this to disambiguate the pointers. If the pointers are based on