<div dir="ltr">A lot of these use cases could be handled by a tiny helper class Hex such that `OS << Hex(84);` formats in hex (also ideally supporting something like `OS << Hex(84, /*Width=*/8);`).<div><br></div>
<div>YAMLIO has a class like that a class for its output (but I think it is YAMLIO specific)</div><div><br></div><div>-- Sean Silva</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Aug 8, 2014 at 5:00 AM, Tim Northover <span dir="ltr"><<a href="mailto:tnorthover@apple.com" target="_blank">tnorthover@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: tnorthover<br>
Date: Fri Aug  8 07:00:09 2014<br>
New Revision: 215196<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=215196&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=215196&view=rev</a><br>
Log:<br>
llvm-objdump: use portable format specifiers for info.<br>
<br>
ARM bots (& others, I think, now that I look) were failing because we<br>
were using incorrect printf-style format specifiers. They were wrong<br>
on almost any platform, actually, just mostly harmlessly so.<br>
<br>
Modified:<br>
    llvm/trunk/tools/llvm-objdump/MachODump.cpp<br>
<br>
Modified: llvm/trunk/tools/llvm-objdump/MachODump.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/MachODump.cpp?rev=215196&r1=215195&r2=215196&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/MachODump.cpp?rev=215196&r1=215195&r2=215196&view=diff</a><br>

==============================================================================<br>
--- llvm/trunk/tools/llvm-objdump/MachODump.cpp (original)<br>
+++ llvm/trunk/tools/llvm-objdump/MachODump.cpp Fri Aug  8 07:00:09 2014<br>
@@ -629,27 +629,27 @@ printMachOCompactUnwindSection(const Mac<br>
   // Finally, we're ready to print the data we've gathered.<br>
   outs() << "Contents of __compact_unwind section:\n";<br>
   for (auto &Entry : CompactUnwinds) {<br>
-    outs() << "  Entry at offset " << format("0x%x", Entry.OffsetInSection)<br>
+    outs() << "  Entry at offset " << format("0x" PRIx32, Entry.OffsetInSection)<br>
            << ":\n";<br>
<br>
     // 1. Start of the region this entry applies to.<br>
     outs() << "    start:                "<br>
-           << format("0x%x", Entry.FunctionAddr) << ' ';<br>
+           << format("0x%" PRIx64, Entry.FunctionAddr) << ' ';<br>
     printUnwindRelocDest(Obj, Symbols, Entry.FunctionReloc,<br>
                          Entry.FunctionAddr);<br>
     outs() << '\n';<br>
<br>
     // 2. Length of the region this entry applies to.<br>
     outs() << "    length:               "<br>
-           << format("0x%x", Entry.Length) << '\n';<br>
+           << format("0x%" PRIx32, Entry.Length) << '\n';<br>
     // 3. The 32-bit compact encoding.<br>
     outs() << "    compact encoding:     "<br>
-           << format("0x%08x", Entry.CompactEncoding) << '\n';<br>
+           << format("0x%08" PRIx32, Entry.CompactEncoding) << '\n';<br>
<br>
     // 4. The personality function, if present.<br>
     if (Entry.PersonalityReloc.getObjectFile()) {<br>
       outs() << "    personality function: "<br>
-             << format("0x%x", Entry.PersonalityAddr) << ' ';<br>
+             << format("0x%" PRIx64, Entry.PersonalityAddr) << ' ';<br>
       printUnwindRelocDest(Obj, Symbols, Entry.PersonalityReloc,<br>
                            Entry.PersonalityAddr);<br>
       outs() << '\n';<br>
@@ -658,7 +658,7 @@ printMachOCompactUnwindSection(const Mac<br>
     // 5. This entry's language-specific data area.<br>
     if (Entry.LSDAReloc.getObjectFile()) {<br>
       outs() << "    LSDA:                 "<br>
-             << format("0x%x", Entry.LSDAAddr) << ' ';<br>
+             << format("0x%" PRIx64, Entry.LSDAAddr) << ' ';<br>
       printUnwindRelocDest(Obj, Symbols, Entry.LSDAReloc, Entry.LSDAAddr);<br>
       outs() << '\n';<br>
     }<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br></div>