[llvm] r242892 - [GMR] Only look in the associated allocs map for an underlying value if
Chandler Carruth
chandlerc at gmail.com
Wed Jul 22 04:43:25 PDT 2015
Author: chandlerc
Date: Wed Jul 22 06:43:24 2015
New Revision: 242892
URL: http://llvm.org/viewvc/llvm-project?rev=242892&view=rev
Log:
[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.
Modified:
llvm/trunk/lib/Analysis/IPA/GlobalsModRef.cpp
Modified: llvm/trunk/lib/Analysis/IPA/GlobalsModRef.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/IPA/GlobalsModRef.cpp?rev=242892&r1=242891&r2=242892&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/IPA/GlobalsModRef.cpp (original)
+++ llvm/trunk/lib/Analysis/IPA/GlobalsModRef.cpp Wed Jul 22 06:43:24 2015
@@ -599,10 +599,10 @@ AliasResult GlobalsModRef::alias(const M
// 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
More information about the llvm-commits
mailing list