summaryrefslogtreecommitdiff
path: root/tools/llvm-size/llvm-size.cpp
diff options
context:
space:
mode:
authorKevin Enderby <enderby@apple.com>2014-07-01 22:26:31 +0000
committerKevin Enderby <enderby@apple.com>2014-07-01 22:26:31 +0000
commit9c23bd09431fa32fc575dd6409c9e05c4d90a58f (patch)
treef77b2ab421ad56b04ce76e2605318c3611fcaeb7 /tools/llvm-size/llvm-size.cpp
parentf26039734c684a90dc88adbc73a8cce2f0491474 (diff)
Run clang-format on llvm-size.cpp to tidy things up. No functional changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@212141 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-size/llvm-size.cpp')
-rw-r--r--tools/llvm-size/llvm-size.cpp201
1 files changed, 92 insertions, 109 deletions
diff --git a/tools/llvm-size/llvm-size.cpp b/tools/llvm-size/llvm-size.cpp
index bc4d0d41228..50b52200ff4 100644
--- a/tools/llvm-size/llvm-size.cpp
+++ b/tools/llvm-size/llvm-size.cpp
@@ -33,59 +33,55 @@
using namespace llvm;
using namespace object;
-enum OutputFormatTy {berkeley, sysv, darwin};
+enum OutputFormatTy { berkeley, sysv, darwin };
static cl::opt<OutputFormatTy>
- OutputFormat("format",
- cl::desc("Specify output format"),
- cl::values(clEnumVal(sysv, "System V format"),
- clEnumVal(berkeley, "Berkeley format"),
- clEnumVal(darwin, "Darwin -m format"), clEnumValEnd),
- cl::init(berkeley));
-
-static cl::opt<OutputFormatTy>
- OutputFormatShort(cl::desc("Specify output format"),
- cl::values(clEnumValN(sysv, "A", "System V format"),
- clEnumValN(berkeley, "B", "Berkeley format"),
- clEnumValN(darwin, "m", "Darwin -m format"),
- clEnumValEnd),
- cl::init(berkeley));
+OutputFormat("format", cl::desc("Specify output format"),
+ cl::values(clEnumVal(sysv, "System V format"),
+ clEnumVal(berkeley, "Berkeley format"),
+ clEnumVal(darwin, "Darwin -m format"), clEnumValEnd),
+ cl::init(berkeley));
+
+static cl::opt<OutputFormatTy> OutputFormatShort(
+ cl::desc("Specify output format"),
+ cl::values(clEnumValN(sysv, "A", "System V format"),
+ clEnumValN(berkeley, "B", "Berkeley format"),
+ clEnumValN(darwin, "m", "Darwin -m format"), clEnumValEnd),
+ cl::init(berkeley));
static bool berkeleyHeaderPrinted = false;
static bool moreThanOneFile = false;
-cl::opt<bool> DarwinLongFormat("l",
- cl::desc("When format is darwin, use long format "
- "to include addresses and offsets."));
+cl::opt<bool>
+DarwinLongFormat("l", cl::desc("When format is darwin, use long format "
+ "to include addresses and offsets."));
static cl::list<std::string>
- ArchFlags("arch",
- cl::desc("architecture(s) from a Mach-O file to dump"),
- cl::ZeroOrMore);
+ArchFlags("arch", cl::desc("architecture(s) from a Mach-O file to dump"),
+ cl::ZeroOrMore);
bool ArchAll = false;
-enum RadixTy {octal = 8, decimal = 10, hexadecimal = 16};
+enum RadixTy { octal = 8, decimal = 10, hexadecimal = 16 };
static cl::opt<unsigned int>
- Radix("-radix",
- cl::desc("Print size in radix. Only 8, 10, and 16 are valid"),
- cl::init(decimal));
+Radix("-radix", cl::desc("Print size in radix. Only 8, 10, and 16 are valid"),
+ cl::init(decimal));
static cl::opt<RadixTy>
- RadixShort(cl::desc("Print size in radix:"),
- cl::values(clEnumValN(octal, "o", "Print size in octal"),
- clEnumValN(decimal, "d", "Print size in decimal"),
- clEnumValN(hexadecimal, "x", "Print size in hexadecimal"),
- clEnumValEnd),
- cl::init(decimal));
+RadixShort(cl::desc("Print size in radix:"),
+ cl::values(clEnumValN(octal, "o", "Print size in octal"),
+ clEnumValN(decimal, "d", "Print size in decimal"),
+ clEnumValN(hexadecimal, "x", "Print size in hexadecimal"),
+ clEnumValEnd),
+ cl::init(decimal));
static cl::list<std::string>
- InputFilenames(cl::Positional, cl::desc("<input files>"),
- cl::ZeroOrMore);
+InputFilenames(cl::Positional, cl::desc("<input files>"), cl::ZeroOrMore);
static std::string ToolName;
/// @brief If ec is not success, print the error and return true.
static bool error(std::error_code ec) {
- if (!ec) return false;
+ if (!ec)
+ return false;
outs() << ToolName << ": error reading file: " << ec.message() << ".\n";
outs().flush();
@@ -102,7 +98,7 @@ static size_t getNumLengthAsString(uint64_t num) {
}
/// @brief Return the the printing format for the Radix.
-static const char * getRadixFmt(void) {
+static const char *getRadixFmt(void) {
switch (Radix) {
case octal:
return PRIo64;
@@ -131,14 +127,14 @@ static void PrintDarwinSectionSizes(MachOObjectFile *MachO) {
MachOObjectFile::LoadCommandInfo Load = MachO->getFirstLoadCommandInfo();
uint64_t total = 0;
- for (unsigned I = 0; ; ++I) {
+ for (unsigned I = 0;; ++I) {
if (Load.C.cmd == MachO::LC_SEGMENT_64) {
MachO::segment_command_64 Seg = MachO->getSegment64LoadCommand(Load);
outs() << "Segment " << Seg.segname << ": "
<< format(fmt.str().c_str(), Seg.vmsize);
if (DarwinLongFormat)
- outs() << " (vmaddr 0x" << format("%" PRIx64, Seg.vmaddr)
- << " fileoff " << Seg.fileoff << ")";
+ outs() << " (vmaddr 0x" << format("%" PRIx64, Seg.vmaddr) << " fileoff "
+ << Seg.fileoff << ")";
outs() << "\n";
total += Seg.vmsize;
uint64_t sec_total = 0;
@@ -151,21 +147,20 @@ static void PrintDarwinSectionSizes(MachOObjectFile *MachO) {
outs() << "\tSection " << format("%.16s", &Sec.sectname) << ": ";
outs() << format(fmt.str().c_str(), Sec.size);
if (DarwinLongFormat)
- outs() << " (addr 0x" << format("%" PRIx64, Sec.addr)
- << " offset " << Sec.offset << ")";
+ outs() << " (addr 0x" << format("%" PRIx64, Sec.addr) << " offset "
+ << Sec.offset << ")";
outs() << "\n";
sec_total += Sec.size;
}
if (Seg.nsects != 0)
outs() << "\ttotal " << format(fmt.str().c_str(), sec_total) << "\n";
- }
- else if (Load.C.cmd == MachO::LC_SEGMENT) {
+ } else if (Load.C.cmd == MachO::LC_SEGMENT) {
MachO::segment_command Seg = MachO->getSegmentLoadCommand(Load);
outs() << "Segment " << Seg.segname << ": "
<< format(fmt.str().c_str(), Seg.vmsize);
if (DarwinLongFormat)
- outs() << " (vmaddr 0x" << format("%" PRIx64, Seg.vmaddr)
- << " fileoff " << Seg.fileoff << ")";
+ outs() << " (vmaddr 0x" << format("%" PRIx64, Seg.vmaddr) << " fileoff "
+ << Seg.fileoff << ")";
outs() << "\n";
total += Seg.vmsize;
uint64_t sec_total = 0;
@@ -178,8 +173,8 @@ static void PrintDarwinSectionSizes(MachOObjectFile *MachO) {
outs() << "\tSection " << format("%.16s", &Sec.sectname) << ": ";
outs() << format(fmt.str().c_str(), Sec.size);
if (DarwinLongFormat)
- outs() << " (addr 0x" << format("%" PRIx64, Sec.addr)
- << " offset " << Sec.offset << ")";
+ outs() << " (addr 0x" << format("%" PRIx64, Sec.addr) << " offset "
+ << Sec.offset << ")";
outs() << "\n";
sec_total += Sec.size;
}
@@ -206,7 +201,7 @@ static void PrintDarwinSegmentSizes(MachOObjectFile *MachO) {
uint64_t total_data = 0;
uint64_t total_objc = 0;
uint64_t total_others = 0;
- for (unsigned I = 0; ; ++I) {
+ for (unsigned I = 0;; ++I) {
if (Load.C.cmd == MachO::LC_SEGMENT_64) {
MachO::segment_command_64 Seg = MachO->getSegment64LoadCommand(Load);
if (MachO->getHeader().filetype == MachO::MH_OBJECT) {
@@ -221,7 +216,7 @@ static void PrintDarwinSegmentSizes(MachOObjectFile *MachO) {
total_objc += Sec.size;
else
total_others += Sec.size;
- }
+ }
} else {
StringRef SegmentName = StringRef(Seg.segname);
if (SegmentName == "__TEXT")
@@ -233,8 +228,7 @@ static void PrintDarwinSegmentSizes(MachOObjectFile *MachO) {
else
total_others += Seg.vmsize;
}
- }
- else if (Load.C.cmd == MachO::LC_SEGMENT) {
+ } else if (Load.C.cmd == MachO::LC_SEGMENT) {
MachO::segment_command Seg = MachO->getSegmentLoadCommand(Load);
if (MachO->getHeader().filetype == MachO::MH_OBJECT) {
for (unsigned J = 0; J < Seg.nsects; ++J) {
@@ -248,7 +242,7 @@ static void PrintDarwinSegmentSizes(MachOObjectFile *MachO) {
total_objc += Sec.size;
else
total_others += Sec.size;
- }
+ }
} else {
StringRef SegmentName = StringRef(Seg.segname);
if (SegmentName == "__TEXT")
@@ -330,10 +324,9 @@ static void PrintObjectSectionSizes(ObjectFile *Obj) {
<< "%" << max_addr_len << "s\n";
// Print header
- outs() << format(fmt.str().c_str(),
- static_cast<const char*>("section"),
- static_cast<const char*>("size"),
- static_cast<const char*>("addr"));
+ outs() << format(fmt.str().c_str(), static_cast<const char *>("section"),
+ static_cast<const char *>("size"),
+ static_cast<const char *>("addr"));
fmtbuf.clear();
// Setup per section format.
@@ -361,8 +354,7 @@ static void PrintObjectSectionSizes(ObjectFile *Obj) {
fmtbuf.clear();
fmt << "%-" << max_name_len << "s "
<< "%#" << max_size_len << radix_fmt << "\n";
- outs() << format(fmt.str().c_str(),
- static_cast<const char*>("Total"),
+ outs() << format(fmt.str().c_str(), static_cast<const char *>("Total"),
total);
} else {
// The Berkeley format does not display individual section sizes. It
@@ -397,8 +389,7 @@ static void PrintObjectSectionSizes(ObjectFile *Obj) {
if (!berkeleyHeaderPrinted) {
outs() << " text data bss "
- << (Radix == octal ? "oct" : "dec")
- << " hex filename\n";
+ << (Radix == octal ? "oct" : "dec") << " hex filename\n";
berkeleyHeaderPrinted = true;
}
@@ -406,16 +397,11 @@ static void PrintObjectSectionSizes(ObjectFile *Obj) {
fmt << "%#7" << radix_fmt << " "
<< "%#7" << radix_fmt << " "
<< "%#7" << radix_fmt << " ";
- outs() << format(fmt.str().c_str(),
- total_text,
- total_data,
- total_bss);
+ outs() << format(fmt.str().c_str(), total_text, total_data, total_bss);
fmtbuf.clear();
fmt << "%7" << (Radix == octal ? PRIo64 : PRIu64) << " "
<< "%7" PRIx64 " ";
- outs() << format(fmt.str().c_str(),
- total,
- total);
+ outs() << format(fmt.str().c_str(), total, total);
}
}
@@ -439,7 +425,7 @@ static bool checkMachOAndArchFlags(ObjectFile *o, StringRef file) {
T = MachOObjectFile::getArch(H.cputype, H.cpusubtype);
}
unsigned i;
- for (i = 0; i < ArchFlags.size(); ++i){
+ for (i = 0; i < ArchFlags.size(); ++i) {
if (ArchFlags[i] == T.getArchName())
ArchFound = true;
break;
@@ -460,7 +446,8 @@ static void PrintFileSectionSizes(StringRef file) {
if (file != "-") {
bool exists;
if (sys::fs::exists(file, exists) || !exists) {
- errs() << ToolName << ": '" << file << "': " << "No such file\n";
+ errs() << ToolName << ": '" << file << "': "
+ << "No such file\n";
return;
}
}
@@ -476,7 +463,8 @@ static void PrintFileSectionSizes(StringRef file) {
if (Archive *a = dyn_cast<Archive>(binary.get())) {
// This is an archive. Iterate over each member and display its sizes.
for (object::Archive::child_iterator i = a->child_begin(),
- e = a->child_end(); i != e; ++i) {
+ e = a->child_end();
+ i != e; ++i) {
ErrorOr<std::unique_ptr<Binary>> ChildOrErr = i->getAsBinary();
if (std::error_code EC = ChildOrErr.getError()) {
errs() << ToolName << ": " << file << ": " << EC.message() << ".\n";
@@ -487,10 +475,9 @@ static void PrintFileSectionSizes(StringRef file) {
if (!checkMachOAndArchFlags(o, file))
return;
if (OutputFormat == sysv)
- outs() << o->getFileName() << " (ex " << a->getFileName()
- << "):\n";
- else if(MachO && OutputFormat == darwin)
- outs() << a->getFileName() << "(" << o->getFileName() << "):\n";
+ outs() << o->getFileName() << " (ex " << a->getFileName() << "):\n";
+ else if (MachO && OutputFormat == darwin)
+ outs() << a->getFileName() << "(" << o->getFileName() << "):\n";
PrintObjectSectionSizes(o);
if (OutputFormat == berkeley) {
if (MachO)
@@ -501,17 +488,17 @@ static void PrintFileSectionSizes(StringRef file) {
}
}
} else if (MachOUniversalBinary *UB =
- dyn_cast<MachOUniversalBinary>(binary.get())) {
+ dyn_cast<MachOUniversalBinary>(binary.get())) {
// If we have a list of architecture flags specified dump only those.
if (!ArchAll && ArchFlags.size() != 0) {
// Look for a slice in the universal binary that matches each ArchFlag.
bool ArchFound;
- for (unsigned i = 0; i < ArchFlags.size(); ++i){
+ for (unsigned i = 0; i < ArchFlags.size(); ++i) {
ArchFound = false;
for (MachOUniversalBinary::object_iterator I = UB->begin_objects(),
E = UB->end_objects();
I != E; ++I) {
- if (ArchFlags[i] == I->getArchTypeName()){
+ if (ArchFlags[i] == I->getArchTypeName()) {
ArchFound = true;
ErrorOr<std::unique_ptr<ObjectFile>> UO = I->getAsObjectFile();
std::unique_ptr<Archive> UA;
@@ -520,7 +507,7 @@ static void PrintFileSectionSizes(StringRef file) {
MachOObjectFile *MachO = dyn_cast<MachOObjectFile>(o);
if (OutputFormat == sysv)
outs() << o->getFileName() << " :\n";
- else if(MachO && OutputFormat == darwin) {
+ else if (MachO && OutputFormat == darwin) {
if (moreThanOneFile || ArchFlags.size() > 1)
outs() << o->getFileName() << " (for architecture "
<< I->getArchTypeName() << "): \n";
@@ -533,13 +520,12 @@ static void PrintFileSectionSizes(StringRef file) {
outs() << "\n";
}
}
- }
- else if (!I->getAsArchive(UA)) {
+ } else if (!I->getAsArchive(UA)) {
// This is an archive. Iterate over each member and display its
- //sizes.
+ // sizes.
for (object::Archive::child_iterator i = UA->child_begin(),
e = UA->child_end();
- i != e; ++i) {
+ i != e; ++i) {
ErrorOr<std::unique_ptr<Binary>> ChildOrErr = i->getAsBinary();
if (std::error_code EC = ChildOrErr.getError()) {
errs() << ToolName << ": " << file << ": " << EC.message()
@@ -551,21 +537,21 @@ static void PrintFileSectionSizes(StringRef file) {
if (OutputFormat == sysv)
outs() << o->getFileName() << " (ex " << UA->getFileName()
<< "):\n";
- else if(MachO && OutputFormat == darwin)
+ else if (MachO && OutputFormat == darwin)
outs() << UA->getFileName() << "(" << o->getFileName()
- << ")" << " (for architecture "
- << I->getArchTypeName() << "):\n";
+ << ")"
+ << " (for architecture " << I->getArchTypeName()
+ << "):\n";
PrintObjectSectionSizes(o);
if (OutputFormat == berkeley) {
if (MachO) {
outs() << UA->getFileName() << "(" << o->getFileName()
<< ")";
if (ArchFlags.size() > 1)
- outs() << " (for architecture "
- << I->getArchTypeName() << ")";
+ outs() << " (for architecture " << I->getArchTypeName()
+ << ")";
outs() << "\n";
- }
- else
+ } else
outs() << o->getFileName() << " (ex " << UA->getFileName()
<< ")\n";
}
@@ -585,12 +571,11 @@ static void PrintFileSectionSizes(StringRef file) {
// No architecture flags were specified so if this contains a slice that
// matches the host architecture dump only that.
if (!ArchAll) {
- StringRef HostArchName =
- MachOObjectFile::getHostArch().getArchName();
+ StringRef HostArchName = MachOObjectFile::getHostArch().getArchName();
for (MachOUniversalBinary::object_iterator I = UB->begin_objects(),
E = UB->end_objects();
I != E; ++I) {
- if (HostArchName == I->getArchTypeName()){
+ if (HostArchName == I->getArchTypeName()) {
ErrorOr<std::unique_ptr<ObjectFile>> UO = I->getAsObjectFile();
std::unique_ptr<Archive> UA;
if (UO) {
@@ -598,7 +583,7 @@ static void PrintFileSectionSizes(StringRef file) {
MachOObjectFile *MachO = dyn_cast<MachOObjectFile>(o);
if (OutputFormat == sysv)
outs() << o->getFileName() << " :\n";
- else if(MachO && OutputFormat == darwin) {
+ else if (MachO && OutputFormat == darwin) {
if (moreThanOneFile)
outs() << o->getFileName() << " (for architecture "
<< I->getArchTypeName() << "):\n";
@@ -611,13 +596,12 @@ static void PrintFileSectionSizes(StringRef file) {
outs() << "\n";
}
}
- }
- else if (!I->getAsArchive(UA)) {
+ } else if (!I->getAsArchive(UA)) {
// This is an archive. Iterate over each member and display its
// sizes.
for (object::Archive::child_iterator i = UA->child_begin(),
e = UA->child_end();
- i != e; ++i) {
+ i != e; ++i) {
ErrorOr<std::unique_ptr<Binary>> ChildOrErr = i->getAsBinary();
if (std::error_code EC = ChildOrErr.getError()) {
errs() << ToolName << ": " << file << ": " << EC.message()
@@ -629,7 +613,7 @@ static void PrintFileSectionSizes(StringRef file) {
if (OutputFormat == sysv)
outs() << o->getFileName() << " (ex " << UA->getFileName()
<< "):\n";
- else if(MachO && OutputFormat == darwin)
+ else if (MachO && OutputFormat == darwin)
outs() << UA->getFileName() << "(" << o->getFileName() << ")"
<< " (for architecture " << I->getArchTypeName()
<< "):\n";
@@ -662,7 +646,7 @@ static void PrintFileSectionSizes(StringRef file) {
MachOObjectFile *MachO = dyn_cast<MachOObjectFile>(o);
if (OutputFormat == sysv)
outs() << o->getFileName() << " :\n";
- else if(MachO && OutputFormat == darwin) {
+ else if (MachO && OutputFormat == darwin) {
if (moreThanOneFile || moreThanOneArch)
outs() << o->getFileName() << " (for architecture "
<< I->getArchTypeName() << "):";
@@ -676,11 +660,11 @@ static void PrintFileSectionSizes(StringRef file) {
outs() << "\n";
}
}
- }
- else if (!I->getAsArchive(UA)) {
+ } else if (!I->getAsArchive(UA)) {
// This is an archive. Iterate over each member and display its sizes.
for (object::Archive::child_iterator i = UA->child_begin(),
- e = UA->child_end(); i != e; ++i) {
+ e = UA->child_end();
+ i != e; ++i) {
ErrorOr<std::unique_ptr<Binary>> ChildOrErr = i->getAsBinary();
if (std::error_code EC = ChildOrErr.getError()) {
errs() << ToolName << ": " << file << ": " << EC.message() << ".\n";
@@ -691,10 +675,9 @@ static void PrintFileSectionSizes(StringRef file) {
if (OutputFormat == sysv)
outs() << o->getFileName() << " (ex " << UA->getFileName()
<< "):\n";
- else if(MachO && OutputFormat == darwin)
+ else if (MachO && OutputFormat == darwin)
outs() << UA->getFileName() << "(" << o->getFileName() << ")"
- << " (for architecture " << I->getArchTypeName()
- << "):\n";
+ << " (for architecture " << I->getArchTypeName() << "):\n";
PrintObjectSectionSizes(o);
if (OutputFormat == berkeley) {
if (MachO)
@@ -722,7 +705,8 @@ static void PrintFileSectionSizes(StringRef file) {
outs() << "\n";
}
} else {
- errs() << ToolName << ": " << file << ": " << "Unrecognized file type.\n";
+ errs() << ToolName << ": " << file << ": "
+ << "Unrecognized file type.\n";
}
// System V adds an extra newline at the end of each file.
if (OutputFormat == sysv)
@@ -734,7 +718,7 @@ int main(int argc, char **argv) {
sys::PrintStackTraceOnErrorSignal();
PrettyStackTraceProgram X(argc, argv);
- llvm_shutdown_obj Y; // Call llvm_shutdown() on exit.
+ llvm_shutdown_obj Y; // Call llvm_shutdown() on exit.
cl::ParseCommandLineOptions(argc, argv, "llvm object size dumper\n");
ToolName = argv[0];
@@ -743,13 +727,12 @@ int main(int argc, char **argv) {
if (RadixShort.getNumOccurrences())
Radix = RadixShort;
- for (unsigned i = 0; i < ArchFlags.size(); ++i){
+ for (unsigned i = 0; i < ArchFlags.size(); ++i) {
if (ArchFlags[i] == "all") {
ArchAll = true;
- }
- else {
+ } else {
Triple T = MachOObjectFile::getArch(ArchFlags[i]);
- if (T.getArch() == Triple::UnknownArch){
+ if (T.getArch() == Triple::UnknownArch) {
outs() << ToolName << ": for the -arch option: Unknown architecture "
<< "named '" << ArchFlags[i] << "'";
return 1;