From faa7506f18a603ba97862c86c49ce946cdf2d0dd Mon Sep 17 00:00:00 2001 From: Teresa Johnson Date: Thu, 11 Aug 2016 20:38:39 +0000 Subject: [PATCH] Fix type truncation warnings Avoid type truncation warnings from a 32-bit bot due to size_t not being unsigned long long, by converting the variables and constants to unsigned. This was introduced by r278338 and caused warnings here: http://bb.pgr.jp/builders/i686-mingw32-RA-on-linux/builds/15527/steps/build_llvmclang/logs/warnings%20%287%29 llvm-svn: 278406 --- llvm/include/llvm/LTO/Config.h | 4 ++-- llvm/include/llvm/LTO/LTO.h | 10 +++++----- llvm/include/llvm/LTO/LTOBackend.h | 3 +-- llvm/lib/LTO/LTO.cpp | 16 ++++++++-------- llvm/lib/LTO/LTOBackend.cpp | 11 ++++++----- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/llvm/include/llvm/LTO/Config.h b/llvm/include/llvm/LTO/Config.h index 41830f4..2bda285 100644 --- a/llvm/include/llvm/LTO/Config.h +++ b/llvm/include/llvm/LTO/Config.h @@ -84,7 +84,7 @@ struct Config { /// /// Note that in out-of-process backend scenarios, none of the hooks will be /// called for ThinLTO tasks. - typedef std::function ModuleHookFn; + typedef std::function ModuleHookFn; /// This module hook is called after linking (regular LTO) or loading /// (ThinLTO) the module, before modifying it. @@ -191,7 +191,7 @@ struct Config { /// return a output stream to write the native object to. /// /// Stream callbacks must be thread safe. -typedef std::function(size_t Task)> +typedef std::function(unsigned Task)> AddStreamFn; /// A derived class of LLVMContext that initializes itself according to a given diff --git a/llvm/include/llvm/LTO/LTO.h b/llvm/include/llvm/LTO/LTO.h index 548edd8..aa92bc8 100644 --- a/llvm/include/llvm/LTO/LTO.h +++ b/llvm/include/llvm/LTO/LTO.h @@ -291,7 +291,7 @@ public: /// Returns an upper bound on the number of tasks that the client may expect. /// This may only be called after all IR object files have been added. For a /// full description of tasks see LTOBackend.h. - size_t getMaxTasks() const; + unsigned getMaxTasks() const; /// Runs the LTO pipeline. This function calls the supplied AddStream function /// to add native object files to the link. @@ -343,16 +343,16 @@ private: /// that we use partition 0 for all parallel LTO code generation partitions. /// Any partitioning of the combined LTO object is done internally by the /// LTO backend. - size_t Partition = Unknown; + unsigned Partition = Unknown; /// Special partition numbers. enum { /// A partition number has not yet been assigned to this global. - Unknown = -1ull, + Unknown = -1u, /// This global is either used by more than one partition or has an /// external reference, and therefore cannot be internalized. - External = -2ull, + External = -2u, }; }; @@ -364,7 +364,7 @@ private: void addSymbolToGlobalRes(object::IRObjectFile *Obj, SmallPtrSet &Used, const InputFile::Symbol &Sym, SymbolResolution Res, - size_t Partition); + unsigned Partition); Error addRegularLTO(std::unique_ptr Input, ArrayRef Res); diff --git a/llvm/include/llvm/LTO/LTOBackend.h b/llvm/include/llvm/LTO/LTOBackend.h index fd7d063..964884b 100644 --- a/llvm/include/llvm/LTO/LTOBackend.h +++ b/llvm/include/llvm/LTO/LTOBackend.h @@ -39,12 +39,11 @@ Error backend(Config &C, AddStreamFn AddStream, std::unique_ptr M); /// Runs a ThinLTO backend. -Error thinBackend(Config &C, size_t Task, AddStreamFn AddStream, Module &M, +Error thinBackend(Config &C, unsigned Task, AddStreamFn AddStream, Module &M, ModuleSummaryIndex &CombinedIndex, const FunctionImporter::ImportMapTy &ImportList, const GVSummaryMapTy &DefinedGlobals, MapVector &ModuleMap); - } } diff --git a/llvm/lib/LTO/LTO.cpp b/llvm/lib/LTO/LTO.cpp index 282e127..c12a8ee 100644 --- a/llvm/lib/LTO/LTO.cpp +++ b/llvm/lib/LTO/LTO.cpp @@ -185,7 +185,7 @@ LTO::LTO(Config Conf, ThinBackend Backend, void LTO::addSymbolToGlobalRes(IRObjectFile *Obj, SmallPtrSet &Used, const InputFile::Symbol &Sym, - SymbolResolution Res, size_t Partition) { + SymbolResolution Res, unsigned Partition) { GlobalValue *GV = Obj->getSymbolGV(Sym.I->getRawDataRefImpl()); auto &GlobalRes = GlobalResolutions[Sym.getName()]; @@ -345,7 +345,7 @@ Error LTO::addThinLTO(std::unique_ptr Input, return Error(); } -size_t LTO::getMaxTasks() const { +unsigned LTO::getMaxTasks() const { CalledGetMaxTasks = true; return RegularLTO.ParallelCodeGenParallelismLevel + ThinLTO.ModuleMap.size(); } @@ -408,7 +408,7 @@ public: ModuleToDefinedGVSummaries(ModuleToDefinedGVSummaries) {} virtual ~ThinBackendProc() {} - virtual Error start(size_t Task, MemoryBufferRef MBRef, + virtual Error start(unsigned Task, MemoryBufferRef MBRef, StringMap &ImportLists, MapVector &ModuleMap) = 0; virtual Error wait() = 0; @@ -430,7 +430,7 @@ public: BackendThreadPool(ThinLTOParallelismLevel) {} Error - runThinLTOBackendThread(AddStreamFn AddStream, size_t Task, + runThinLTOBackendThread(AddStreamFn AddStream, unsigned Task, MemoryBufferRef MBRef, ModuleSummaryIndex &CombinedIndex, const FunctionImporter::ImportMapTy &ImportList, @@ -446,7 +446,7 @@ public: ImportList, DefinedGlobals, ModuleMap); } - Error start(size_t Task, MemoryBufferRef MBRef, + Error start(unsigned Task, MemoryBufferRef MBRef, StringMap &ImportLists, MapVector &ModuleMap) override { StringRef ModulePath = MBRef.getBufferIdentifier(); @@ -529,7 +529,7 @@ public: return NewPath.str(); } - Error start(size_t Task, MemoryBufferRef MBRef, + Error start(unsigned Task, MemoryBufferRef MBRef, StringMap &ImportLists, MapVector &ModuleMap) override { StringRef ModulePath = MBRef.getBufferIdentifier(); @@ -629,8 +629,8 @@ Error LTO::runThinLTO(AddStreamFn AddStream) { // ParallelCodeGenParallelismLevel, as tasks 0 through // ParallelCodeGenParallelismLevel-1 are reserved for parallel code generation // partitions. - size_t Task = RegularLTO.ParallelCodeGenParallelismLevel; - size_t Partition = 1; + unsigned Task = RegularLTO.ParallelCodeGenParallelismLevel; + unsigned Partition = 1; for (auto &Mod : ThinLTO.ModuleMap) { if (Error E = BackendProc->start(Task, Mod.second, ImportLists, diff --git a/llvm/lib/LTO/LTOBackend.cpp b/llvm/lib/LTO/LTOBackend.cpp index 5e06a06..33d4f39 100644 --- a/llvm/lib/LTO/LTOBackend.cpp +++ b/llvm/lib/LTO/LTOBackend.cpp @@ -46,7 +46,7 @@ Error Config::addSaveTemps(std::string OutputFileName, auto setHook = [&](std::string PathSuffix, ModuleHookFn &Hook) { // Keep track of the hook provided by the linker, which also needs to run. ModuleHookFn LinkerHook = Hook; - Hook = [=](size_t Task, Module &M) { + Hook = [=](unsigned Task, Module &M) { // If the linker's hook returned false, we need to pass that result // through. if (LinkerHook && !LinkerHook(Task, M)) @@ -115,7 +115,8 @@ createTargetMachine(Config &C, StringRef TheTriple, const Target *TheTarget) { C.CodeModel, C.CGOptLevel)); } -bool opt(Config &C, TargetMachine *TM, size_t Task, Module &M, bool IsThinLto) { +bool opt(Config &C, TargetMachine *TM, unsigned Task, Module &M, + bool IsThinLto) { M.setDataLayout(TM->createDataLayout()); legacy::PassManager passes; @@ -143,7 +144,7 @@ bool opt(Config &C, TargetMachine *TM, size_t Task, Module &M, bool IsThinLto) { return true; } -void codegen(Config &C, TargetMachine *TM, AddStreamFn AddStream, size_t Task, +void codegen(Config &C, TargetMachine *TM, AddStreamFn AddStream, unsigned Task, Module &M) { if (C.PreCodeGenModuleHook && !C.PreCodeGenModuleHook(Task, M)) return; @@ -234,8 +235,8 @@ Error lto::backend(Config &C, AddStreamFn AddStream, return Error(); } -Error lto::thinBackend(Config &C, size_t Task, AddStreamFn AddStream, Module &M, - ModuleSummaryIndex &CombinedIndex, +Error lto::thinBackend(Config &C, unsigned Task, AddStreamFn AddStream, + Module &M, ModuleSummaryIndex &CombinedIndex, const FunctionImporter::ImportMapTy &ImportList, const GVSummaryMapTy &DefinedGlobals, MapVector &ModuleMap) { -- 2.7.4