diff --git a/llvm/test/CMakeLists.txt b/llvm/test/CMakeLists.txt --- a/llvm/test/CMakeLists.txt +++ b/llvm/test/CMakeLists.txt @@ -89,6 +89,7 @@ llvm-rc llvm-readobj llvm-readelf + llvm-reduce llvm-rtdyld llvm-size llvm-split diff --git a/llvm/tools/llvm-reduce/deltas/Delta.h b/llvm/tools/llvm-reduce/deltas/Delta.h --- a/llvm/tools/llvm-reduce/deltas/Delta.h +++ b/llvm/tools/llvm-reduce/deltas/Delta.h @@ -28,8 +28,8 @@ using namespace llvm; struct Chunk { - int begin; - int end; + unsigned begin; + unsigned end; /// Operator when populating CurrentChunks in Generic Delta Pass friend bool operator!=(const Chunk &C1, const Chunk &C2) { @@ -66,7 +66,7 @@ /// Other implementations of the Delta Debugging algorithm can also be found in /// the CReduce, Delta, and Lithium projects. void runDeltaPass( - TestRunner &Test, int Targets, + TestRunner &Test, unsigned Targets, std::function(std::vector, Module *)> ExtractChunksFromModule); diff --git a/llvm/tools/llvm-reduce/deltas/Delta.cpp b/llvm/tools/llvm-reduce/deltas/Delta.cpp --- a/llvm/tools/llvm-reduce/deltas/Delta.cpp +++ b/llvm/tools/llvm-reduce/deltas/Delta.cpp @@ -85,7 +85,7 @@ if (C.end - C.begin == 0) NewChunks.push_back(C); else { - int Half = (C.begin + C.end) / 2; + unsigned Half = (C.begin + C.end) / 2; NewChunks.push_back({C.begin, Half}); NewChunks.push_back({Half + 1, C.end}); SplitOne = true; @@ -100,7 +100,7 @@ } void llvm::runDeltaPass( - TestRunner &Test, int Targets, + TestRunner &Test, unsigned Targets, std::function(std::vector, Module *)> ExtractChunksFromModule) { if (!Targets) diff --git a/llvm/tools/llvm-reduce/deltas/RemoveFunctions.cpp b/llvm/tools/llvm-reduce/deltas/RemoveFunctions.cpp --- a/llvm/tools/llvm-reduce/deltas/RemoveFunctions.cpp +++ b/llvm/tools/llvm-reduce/deltas/RemoveFunctions.cpp @@ -23,7 +23,7 @@ // Get functions inside desired chunks std::set FuncsToKeep; - int I = 0, FunctionCount = 1; + unsigned I = 0, FunctionCount = 1; for (auto &F : *Clone) { if (!F.isDeclaration() && I < ChunksToKeep.size()) { if (FunctionCount >= ChunksToKeep[I].begin && diff --git a/llvm/tools/llvm-reduce/deltas/RemoveGlobalVars.cpp b/llvm/tools/llvm-reduce/deltas/RemoveGlobalVars.cpp --- a/llvm/tools/llvm-reduce/deltas/RemoveGlobalVars.cpp +++ b/llvm/tools/llvm-reduce/deltas/RemoveGlobalVars.cpp @@ -21,7 +21,7 @@ // Get GVs inside desired chunks std::set GVsToKeep; - int I = 0, GVCount = 1; + unsigned I = 0, GVCount = 1; for (auto &GV : Clone->globals()) { if (GV.hasInitializer() && I < ChunksToKeep.size()) { if (GVCount >= ChunksToKeep[I].begin && GVCount <= ChunksToKeep[I].end)