]> granicus.if.org Git - llvm/commitdiff
FunctionComparator: don't rely on argument evaluation order.
authorErik Eckstein <eeckstein@apple.com>
Fri, 11 Nov 2016 22:21:39 +0000 (22:21 +0000)
committerErik Eckstein <eeckstein@apple.com>
Fri, 11 Nov 2016 22:21:39 +0000 (22:21 +0000)
This is a follow-up on the recent refactoring of the FunctionMerge pass.
It should fix a fail of the new FunctionComparator unittest whe compiling with MSVC.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@286648 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Utils/FunctionComparator.cpp

index 6884b403e925fefdb42cc63087cb574d4735abd4..1cb75b49c0169e3f916de8e54a2c723a4b3e6090 100644 (file)
@@ -355,7 +355,9 @@ int FunctionComparator::cmpConstants(const Constant *L,
 }
 
 int FunctionComparator::cmpGlobalValues(GlobalValue *L, GlobalValue *R) const {
-  return cmpNumbers(GlobalNumbers->getNumber(L), GlobalNumbers->getNumber(R));
+  uint64_t LNumber = GlobalNumbers->getNumber(L);
+  uint64_t RNumber = GlobalNumbers->getNumber(R);
+  return cmpNumbers(LNumber, RNumber);
 }
 
 /// cmpType - compares two types,