From c1d52e5c53ef7eeaabedbe092a8da0d6e02e1ef0 Mon Sep 17 00:00:00 2001 From: Erik Eckstein Date: Fri, 11 Nov 2016 22:21:39 +0000 Subject: [PATCH] FunctionComparator: don't rely on argument evaluation order. 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. llvm-svn: 286648 --- llvm/lib/Transforms/Utils/FunctionComparator.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/llvm/lib/Transforms/Utils/FunctionComparator.cpp b/llvm/lib/Transforms/Utils/FunctionComparator.cpp index 6884b40..1cb75b4 100644 --- a/llvm/lib/Transforms/Utils/FunctionComparator.cpp +++ b/llvm/lib/Transforms/Utils/FunctionComparator.cpp @@ -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, -- 2.7.4