Add more PRI.64 macros for MSVC and use them throughout the codebase.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143799 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Benjamin Kramer 2011-11-05 08:57:40 +00:00
parent 965d2feedd
commit 41a964931a
12 changed files with 54 additions and 21 deletions

View File

@ -167,9 +167,24 @@ typedef signed int ssize_t;
# define UINT64_C(C) C##ui64 # define UINT64_C(C) C##ui64
#endif #endif
#ifndef PRId64
# define PRId64 "I64d"
#endif
#ifndef PRIi64
# define PRIu64 "I64i"
#endif
#ifndef PRIo64
# define PRIx64 "I64o"
#endif
#ifndef PRIu64
# define PRIu64 "I64u"
#endif
#ifndef PRIx64 #ifndef PRIx64
# define PRIx64 "I64x" # define PRIx64 "I64x"
#endif #endif
#ifndef PRIX64
# define PRIX64 "I64X"
#endif
#endif /* _MSC_VER */ #endif /* _MSC_VER */

View File

@ -167,9 +167,24 @@ typedef signed int ssize_t;
# define UINT64_C(C) C##ui64 # define UINT64_C(C) C##ui64
#endif #endif
#ifndef PRId64
# define PRId64 "I64d"
#endif
#ifndef PRIi64
# define PRIu64 "I64i"
#endif
#ifndef PRIo64
# define PRIx64 "I64o"
#endif
#ifndef PRIu64
# define PRIu64 "I64u"
#endif
#ifndef PRIx64 #ifndef PRIx64
# define PRIx64 "I64x" # define PRIx64 "I64x"
#endif #endif
#ifndef PRIX64
# define PRIX64 "I64X"
#endif
#endif /* _MSC_VER */ #endif /* _MSC_VER */

View File

@ -1759,7 +1759,8 @@ static void EmitGlobalConstantImpl(const Constant *CV, unsigned AddrSpace,
case 4: case 4:
case 8: case 8:
if (AP.isVerbose()) if (AP.isVerbose())
AP.OutStreamer.GetCommentOS() << format("0x%llx\n", CI->getZExtValue()); AP.OutStreamer.GetCommentOS() << format("0x%" PRIx64 "\n",
CI->getZExtValue());
AP.OutStreamer.EmitIntValue(CI->getZExtValue(), Size, AddrSpace); AP.OutStreamer.EmitIntValue(CI->getZExtValue(), Size, AddrSpace);
return; return;
default: default:

View File

@ -230,8 +230,8 @@ unsigned DIEInteger::SizeOf(AsmPrinter *AP, unsigned Form) const {
#ifndef NDEBUG #ifndef NDEBUG
void DIEInteger::print(raw_ostream &O) { void DIEInteger::print(raw_ostream &O) {
O << "Int: " << (int64_t)Integer O << "Int: " << (int64_t)Integer << " 0x";
<< format(" 0x%llx", (unsigned long long)Integer); O.write_hex(Integer);
} }
#endif #endif

View File

@ -122,8 +122,9 @@ void DWARFDebugArangeSet::dump(raw_ostream &OS) const {
const uint32_t hex_width = Header.AddrSize * 2; const uint32_t hex_width = Header.AddrSize * 2;
for (DescriptorConstIter pos = ArangeDescriptors.begin(), for (DescriptorConstIter pos = ArangeDescriptors.begin(),
end = ArangeDescriptors.end(); pos != end; ++pos) end = ArangeDescriptors.end(); pos != end; ++pos)
OS << format("[0x%*.*llx -", hex_width, hex_width, pos->Address) OS << format("[0x%*.*" PRIx64 " -", hex_width, hex_width, pos->Address)
<< format(" 0x%*.*llx)\n", hex_width, hex_width, pos->getEndAddress()); << format(" 0x%*.*" PRIx64 ")\n",
hex_width, hex_width, pos->getEndAddress());
} }

View File

@ -100,13 +100,14 @@ void DWARFDebugAranges::dump(raw_ostream &OS) const {
const uint32_t num_ranges = getNumRanges(); const uint32_t num_ranges = getNumRanges();
for (uint32_t i = 0; i < num_ranges; ++i) { for (uint32_t i = 0; i < num_ranges; ++i) {
const Range &range = Aranges[i]; const Range &range = Aranges[i];
OS << format("0x%8.8x: [0x%8.8llx - 0x%8.8llx)\n", range.Offset, OS << format("0x%8.8x: [0x%8.8" PRIx64 " - 0x%8.8" PRIx64 ")\n",
(uint64_t)range.LoPC, (uint64_t)range.HiPC()); range.Offset, (uint64_t)range.LoPC, (uint64_t)range.HiPC());
} }
} }
void DWARFDebugAranges::Range::dump(raw_ostream &OS) const { void DWARFDebugAranges::Range::dump(raw_ostream &OS) const {
OS << format("{0x%8.8x}: [0x%8.8llx - 0x%8.8llx)\n", Offset, LoPC, HiPC()); OS << format("{0x%8.8x}: [0x%8.8" PRIx64 " - 0x%8.8" PRIx64 ")\n",
Offset, LoPC, HiPC());
} }
void DWARFDebugAranges::appendRange(uint32_t offset, uint64_t low_pc, void DWARFDebugAranges::appendRange(uint32_t offset, uint64_t low_pc,

View File

@ -68,7 +68,7 @@ void DWARFDebugLine::Row::reset(bool default_is_stmt) {
} }
void DWARFDebugLine::Row::dump(raw_ostream &OS) const { void DWARFDebugLine::Row::dump(raw_ostream &OS) const {
OS << format("0x%16.16llx %6u %6u", Address, Line, Column) OS << format("0x%16.16" PRIx64 " %6u %6u", Address, Line, Column)
<< format(" %6u %3u ", File, Isa) << format(" %6u %3u ", File, Isa)
<< (IsStmt ? " is_stmt" : "") << (IsStmt ? " is_stmt" : "")
<< (BasicBlock ? " basic_block" : "") << (BasicBlock ? " basic_block" : "")

View File

@ -280,7 +280,7 @@ DWARFFormValue::dump(raw_ostream &OS, const DWARFCompileUnit *cu) const {
case DW_FORM_block4: case DW_FORM_block4:
if (uvalue > 0) { if (uvalue > 0) {
switch (Form) { switch (Form) {
case DW_FORM_block: OS << format("<0x%llx> ", uvalue); break; case DW_FORM_block: OS << format("<0x%" PRIx64 "> ", uvalue); break;
case DW_FORM_block1: OS << format("<0x%2.2x> ", (uint8_t)uvalue); break; case DW_FORM_block1: OS << format("<0x%2.2x> ", (uint8_t)uvalue); break;
case DW_FORM_block2: OS << format("<0x%4.4x> ", (uint16_t)uvalue); break; case DW_FORM_block2: OS << format("<0x%4.4x> ", (uint16_t)uvalue); break;
case DW_FORM_block4: OS << format("<0x%8.8x> ", (uint32_t)uvalue); break; case DW_FORM_block4: OS << format("<0x%8.8x> ", (uint32_t)uvalue); break;
@ -330,11 +330,11 @@ DWARFFormValue::dump(raw_ostream &OS, const DWARFCompileUnit *cu) const {
break; break;
case DW_FORM_ref8: case DW_FORM_ref8:
cu_relative_offset = true; cu_relative_offset = true;
OS << format("cu + 0x%8.8llx", uvalue); OS << format("cu + 0x%8.8" PRIx64, uvalue);
break; break;
case DW_FORM_ref_udata: case DW_FORM_ref_udata:
cu_relative_offset = true; cu_relative_offset = true;
OS << format("cu + 0x%llx", uvalue); OS << format("cu + 0x%" PRIx64, uvalue);
break; break;
// All DW_FORM_indirect attributes should be resolved prior to calling // All DW_FORM_indirect attributes should be resolved prior to calling

View File

@ -184,7 +184,7 @@ void TimeRecord::print(const TimeRecord &Total, raw_ostream &OS) const {
OS << " "; OS << " ";
if (Total.getMemUsed()) if (Total.getMemUsed())
OS << format("%9lld ", (long long)getMemUsed()); OS << format("%9" PRId64 " ", (int64_t)getMemUsed());
} }

View File

@ -97,7 +97,7 @@ void X86ATTInstPrinter::printOperand(const MCInst *MI, unsigned OpNo,
O << '$' << (int64_t)Op.getImm(); O << '$' << (int64_t)Op.getImm();
if (CommentStream && (Op.getImm() > 255 || Op.getImm() < -256)) if (CommentStream && (Op.getImm() > 255 || Op.getImm() < -256))
*CommentStream << format("imm = 0x%llX\n", (long long)Op.getImm()); *CommentStream << format("imm = 0x%" PRIX64 "\n", (uint64_t)Op.getImm());
} else { } else {
assert(Op.isExpr() && "unknown operand kind in printOperand"); assert(Op.isExpr() && "unknown operand kind in printOperand");

View File

@ -459,7 +459,7 @@ void llvm::DisassembleInputMachO(StringRef Filename) {
DebugOut, nulls())) { DebugOut, nulls())) {
uint64_t SectAddress = 0; uint64_t SectAddress = 0;
Sections[SectIdx].getAddress(SectAddress); Sections[SectIdx].getAddress(SectAddress);
outs() << format("%8llx:\t", SectAddress + Index); outs() << format("%8" PRIx64 ":\t", SectAddress + Index);
DumpBytes(StringRef(Bytes.data() + Index, Size)); DumpBytes(StringRef(Bytes.data() + Index, Size));
IP->printInst(&Inst, outs(), ""); IP->printInst(&Inst, outs(), "");
@ -579,7 +579,7 @@ void llvm::DisassembleInputMachO(StringRef Filename) {
outs() << FunctionMap[SectAddress + Inst.Address]-> getName() outs() << FunctionMap[SectAddress + Inst.Address]-> getName()
<< ":\n"; << ":\n";
outs() << format("%8llx:\t", SectAddress + Inst.Address); outs() << format("%8" PRIx64 ":\t", SectAddress + Inst.Address);
DumpBytes(StringRef(Bytes.data() + Inst.Address, Inst.Size)); DumpBytes(StringRef(Bytes.data() + Inst.Address, Inst.Size));
if (fi->second.contains(fi->first)) // Indent simple loops. if (fi->second.contains(fi->first)) // Indent simple loops.

View File

@ -96,13 +96,13 @@ static void PrintObjectSectionSizes(ObjectFile *o) {
const char *radix_fmt = 0; const char *radix_fmt = 0;
switch (Radix) { switch (Radix) {
case octal: case octal:
radix_fmt = "llo"; radix_fmt = PRIo64;
break; break;
case decimal: case decimal:
radix_fmt = "llu"; radix_fmt = PRIu64;
break; break;
case hexadecimal: case hexadecimal:
radix_fmt = "llx"; radix_fmt = PRIx64;
break; break;
} }
if (OutputFormat == sysv) { if (OutputFormat == sysv) {
@ -223,8 +223,8 @@ static void PrintObjectSectionSizes(ObjectFile *o) {
total_data, total_data,
total_bss); total_bss);
fmtbuf.clear(); fmtbuf.clear();
fmt << "%7" << (Radix == octal ? "llo" : "llu") << " " fmt << "%7" << (Radix == octal ? PRIo64 : PRIu64) << " "
<< "%7llx "; << "%7" PRIx64 " ";
outs() << format(fmt.str().c_str(), outs() << format(fmt.str().c_str(),
total, total,
total); total);