[PGO] Fix the type of the formated variable
authorPetar Jovanovic <petar.jovanovic@mips.com>
Tue, 5 Feb 2019 18:09:28 +0000 (18:09 +0000)
committerPetar Jovanovic <petar.jovanovic@mips.com>
Tue, 5 Feb 2019 18:09:28 +0000 (18:09 +0000)
Change the format type of Value to PRIu64 since it is a uint64_t.
The problem was detected on mips boards building 32-bit binaries,
where it was printing junk values and causing test failure.

Patch by Milos Stojanovic.

Differential Revision: https://reviews.llvm.org/D57583

llvm-svn: 353194

llvm/tools/llvm-profdata/llvm-profdata.cpp

index 05267fc..a8d94e8 100644 (file)
@@ -642,7 +642,7 @@ static void traverseAllValueSites(const InstrProfRecord &Func, uint32_t VK,
     for (uint32_t V = 0; V < NV; V++) {
       OS << "\t[ " << format("%2u", I) << ", ";
       if (Symtab == nullptr)
-        OS << format("%4u", VD[V].Value);
+        OS << format("%4" PRIu64, VD[V].Value);
       else
         OS << Symtab->getFuncName(VD[V].Value);
       OS << ", " << format("%10" PRId64, VD[V].Count) << " ] ("