aboutsummaryrefslogtreecommitdiff
path: root/lib/Bytecode/Reader/Analyzer.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-10-15 19:40:31 +0000
committerChris Lattner <sabre@nondot.org>2004-10-15 19:40:31 +0000
commit4a8167fe5c6fcbc5d678522c0638eb21812c88df (patch)
tree9ff3264b560f2db040971ca22a862d3c9156b331 /lib/Bytecode/Reader/Analyzer.cpp
parent9500a6ec2e58b01bd9a67e13b1f22cf62b5096d7 (diff)
Don't print a bunch of metrics that are meaningless for external functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17017 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Bytecode/Reader/Analyzer.cpp')
-rw-r--r--lib/Bytecode/Reader/Analyzer.cpp37
1 files changed, 20 insertions, 17 deletions
diff --git a/lib/Bytecode/Reader/Analyzer.cpp b/lib/Bytecode/Reader/Analyzer.cpp
index 73f2e4eee6..5738f1a733 100644
--- a/lib/Bytecode/Reader/Analyzer.cpp
+++ b/lib/Bytecode/Reader/Analyzer.cpp
@@ -693,25 +693,28 @@ void PrintBytecodeAnalysis(BytecodeAnalysis& bca, std::ostream& Out )
bca.FunctionInfo.end();
while ( I != E ) {
- Out << std::left << std::setw(0);
- Out << "\nFunction: " << I->second.name << "\n";
+ Out << std::left << std::setw(0) << "\n";
+ if (I->second.numBasicBlocks == 0) Out << "External ";
+ Out << "Function: " << I->second.name << "\n";
print(Out, "Type:", I->second.description);
print(Out, "Byte Size", I->second.byteSize);
- print(Out, "Basic Blocks", I->second.numBasicBlocks);
- print(Out, "Instructions", I->second.numInstructions);
- print(Out, "Long Instructions", I->second.longInstructions);
- print(Out, "Operands", I->second.numOperands);
- print(Out, "Instruction Size", I->second.instructionSize);
- print(Out, "Average Instruction Size",
- double(I->second.instructionSize)/double(I->second.numInstructions));
- print(Out, "Bytes Per Instruction", I->second.density);
- print(Out, "# of VBR 32-bit Integers", I->second.vbrCount32);
- print(Out, "# of VBR 64-bit Integers", I->second.vbrCount64);
- print(Out, "# of VBR Compressed Bytes", I->second.vbrCompBytes);
- print(Out, "# of VBR Expanded Bytes", I->second.vbrExpdBytes);
- print(Out, "Bytes Saved With VBR",
- double(I->second.vbrExpdBytes)-double(I->second.vbrCompBytes),
- double(I->second.vbrExpdBytes));
+ if (I->second.numBasicBlocks) {
+ print(Out, "Basic Blocks", I->second.numBasicBlocks);
+ print(Out, "Instructions", I->second.numInstructions);
+ print(Out, "Long Instructions", I->second.longInstructions);
+ print(Out, "Operands", I->second.numOperands);
+ print(Out, "Instruction Size", I->second.instructionSize);
+ print(Out, "Average Instruction Size",
+ double(I->second.instructionSize) / I->second.numInstructions);
+ print(Out, "Bytes Per Instruction", I->second.density);
+ print(Out, "# of VBR 32-bit Integers", I->second.vbrCount32);
+ print(Out, "# of VBR 64-bit Integers", I->second.vbrCount64);
+ print(Out, "# of VBR Compressed Bytes", I->second.vbrCompBytes);
+ print(Out, "# of VBR Expanded Bytes", I->second.vbrExpdBytes);
+ print(Out, "Bytes Saved With VBR",
+ double(I->second.vbrExpdBytes) - I->second.vbrCompBytes),
+ double(I->second.vbrExpdBytes);
+ }
++I;
}
}