From 4a8167fe5c6fcbc5d678522c0638eb21812c88df Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 15 Oct 2004 19:40:31 +0000 Subject: 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 --- lib/Bytecode/Reader/Analyzer.cpp | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) (limited to 'lib/Bytecode/Reader/Analyzer.cpp') diff --git a/lib/Bytecode/Reader/Analyzer.cpp b/lib/Bytecode/Reader/Analyzer.cpp index 73f2e4e..5738f1a 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; } } -- cgit v1.1