change log for gcc-testing (2010-05-14)
rtems-vc at rtems.org
rtems-vc at rtems.org
Fri May 14 18:10:04 UTC 2010
*jennifer*:
2010-05-14 Jennifer Averett <Jennifer.Averett at OARcorp.com>
* CoverageRanges.cc, CoverageRanges.h, DesiredSymbols.cc,
DesiredSymbols.h, ReportsBase.cc, ReportsBase.h, ReportsHtml.cc,
ReportsHtml.h, ReportsText.cc, ReportsText.h, covoar.cc, covoar.css:
Added an instruction count to the range information. Added method
calculateStatistics to fill in missing statistics information.
Modified branch stat info to include branchesExecuted and
branchesNotExecuted. Added verbose output to report generation. Added
heading to html reports.
M 1.250 rtems-coverage/ChangeLog
M 1.6 rtems-coverage/CoverageRanges.h
M 1.5 rtems-coverage/CoverageRanges.cc
M 1.6 rtems-coverage/DesiredSymbols.h
M 1.12 rtems-coverage/DesiredSymbols.cc
M 1.9 rtems-coverage/ReportsBase.h
M 1.12 rtems-coverage/ReportsBase.cc
M 1.9 rtems-coverage/ReportsHtml.h
M 1.17 rtems-coverage/ReportsHtml.cc
M 1.6 rtems-coverage/ReportsText.h
M 1.6 rtems-coverage/ReportsText.cc
M 1.25 rtems-coverage/covoar.cc
M 1.3 rtems-coverage/covoar.css
diff -u gcc-testing/rtems-coverage/ChangeLog:1.249 gcc-testing/rtems-coverage/ChangeLog:1.250
--- gcc-testing/rtems-coverage/ChangeLog:1.249 Thu May 13 12:36:16 2010
+++ gcc-testing/rtems-coverage/ChangeLog Fri May 14 12:26:34 2010
@@ -1,3 +1,14 @@
+2010-05-14 Jennifer Averett <Jennifer.Averett at OARcorp.com>
+
+ * CoverageRanges.cc, CoverageRanges.h, DesiredSymbols.cc,
+ DesiredSymbols.h, ReportsBase.cc, ReportsBase.h, ReportsHtml.cc,
+ ReportsHtml.h, ReportsText.cc, ReportsText.h, covoar.cc, covoar.css:
+ Added an instruction count to the range information. Added method
+ calculateStatistics to fill in missing statistics information.
+ Modified branch stat info to include branchesExecuted and
+ branchesNotExecuted. Added verbose output to report generation. Added
+ heading to html reports.
+
2010-05-13 Jennifer Averett <Jennifer.Averett at OARcorp.com
* DesiredSymbols.cc, DesiredSymbols.h, covoar.cc: Added a statistics
diff -u gcc-testing/rtems-coverage/CoverageRanges.h:1.5 gcc-testing/rtems-coverage/CoverageRanges.h:1.6
--- gcc-testing/rtems-coverage/CoverageRanges.h:1.5 Mon May 10 14:08:36 2010
+++ gcc-testing/rtems-coverage/CoverageRanges.h Fri May 14 12:26:35 2010
@@ -47,6 +47,7 @@
std::string lowSourceLine;
uint32_t highAddress;
std::string highSourceLine;
+ uint32_t instructionCount;
uncoveredReason_t reason;
} coverageRange_t;
@@ -77,7 +78,8 @@
void add(
uint32_t lowAddressArg,
uint32_t highAddressArg,
- uncoveredReason_t why
+ uncoveredReason_t why,
+ uint32_t numInstructions
);
diff -u gcc-testing/rtems-coverage/CoverageRanges.cc:1.4 gcc-testing/rtems-coverage/CoverageRanges.cc:1.5
--- gcc-testing/rtems-coverage/CoverageRanges.cc:1.4 Mon May 10 14:08:36 2010
+++ gcc-testing/rtems-coverage/CoverageRanges.cc Fri May 14 12:26:35 2010
@@ -30,16 +30,18 @@
void CoverageRanges::add(
uint32_t lowAddressArg,
uint32_t highAddressArg,
- uncoveredReason_t why
+ uncoveredReason_t why,
+ uint32_t numInstructions
)
{
coverageRange_t c;
id_m++;
- c.id = id_m;
- c.lowAddress = lowAddressArg;
- c.highAddress = highAddressArg;
- c.reason = why;
+ c.id = id_m;
+ c.lowAddress = lowAddressArg;
+ c.highAddress = highAddressArg;
+ c.reason = why;
+ c.instructionCount = numInstructions;
set.push_back(c);
}
diff -u gcc-testing/rtems-coverage/DesiredSymbols.h:1.5 gcc-testing/rtems-coverage/DesiredSymbols.h:1.6
--- gcc-testing/rtems-coverage/DesiredSymbols.h:1.5 Thu May 13 12:36:17 2010
+++ gcc-testing/rtems-coverage/DesiredSymbols.h Fri May 14 12:26:35 2010
@@ -37,9 +37,10 @@
int branchesAlwaysTaken;
/*!
- * This member variable contains the total number of branches found.
+ * This member variable contains the total number of branches where
+ * one or more paths were executed.
*/
- int branchesFound;
+ int branchesExecuted;
/*!
* This member variable contains the total number of branches never
@@ -48,6 +49,12 @@
int branchesNeverTaken;
/*!
+ * This member variable contains the total number of branches not
+ * executed AT ALL.
+ */
+ int branchesNotExecuted;
+
+ /*!
* This member contains the size in Bytes.
*/
uint32_t sizeInBytes;
@@ -92,8 +99,9 @@
*/
Statistics():
branchesAlwaysTaken(0),
- branchesFound(0),
+ branchesExecuted(0),
branchesNeverTaken(0),
+ branchesNotExecuted(0),
sizeInBytes(0),
sizeInInstructions(0),
uncoveredBytes(0),
@@ -102,8 +110,6 @@
{
}
-
-
};
/*! @class SymbolInformation
@@ -194,6 +200,13 @@
~DesiredSymbols();
/*!
+ * This method loops through the coverage map and
+ * calculates the statistics that have not already
+ * been filled in.
+ */
+ void caculateStatistics( void );
+
+ /*!
* This method analyzes each symbols coverage map to determine any
* uncovered ranges or branches.
*/
diff -u gcc-testing/rtems-coverage/DesiredSymbols.cc:1.11 gcc-testing/rtems-coverage/DesiredSymbols.cc:1.12
--- gcc-testing/rtems-coverage/DesiredSymbols.cc:1.11 Thu May 13 12:36:16 2010
+++ gcc-testing/rtems-coverage/DesiredSymbols.cc Fri May 14 12:26:35 2010
@@ -132,10 +132,71 @@
}
}
+ void DesiredSymbols::caculateStatistics( void )
+ {
+ uint32_t a;
+ uint32_t endAddress;
+ DesiredSymbols::symbolSet_t::iterator sitr;
+ CoverageMapBase* theCoverageMap;
+
+ // Look at each symbol.
+ for (sitr = SymbolsToAnalyze->set.begin();
+ sitr != SymbolsToAnalyze->set.end();
+ sitr++) {
+
+ // If the unified coverage map does not exist, the symbol was
+ // never referenced by any executable. Just skip it.
+ theCoverageMap = sitr->second.unifiedCoverageMap;
+ if (!theCoverageMap)
+ continue;
+
+ // Increment the total sizeInBytes byt the bytes in the symbol
+ stats.sizeInBytes += sitr->second.stats.sizeInBytes;
+
+ // Now scan through the coverage map of this symbol.
+ endAddress = sitr->second.stats.sizeInBytes - 1;
+ a = 0;
+ while (a <= endAddress) {
+
+ // If we are at the start of instruction increment
+ // instruction type counters as needed.
+ if ( theCoverageMap->isStartOfInstruction( a ) ) {
+
+ stats.sizeInInstructions++;
+ sitr->second.stats.sizeInInstructions++;
+
+ if (!theCoverageMap->wasExecuted( a ) ) {
+ stats.uncoveredInstructions++;
+ sitr->second.stats.uncoveredInstructions++;
+
+ if ( theCoverageMap->isBranch( a )) {
+ stats.branchesNotExecuted++;
+ sitr->second.stats.branchesNotExecuted++;
+ }
+ } else if (theCoverageMap->isBranch( a )) {
+ stats.branchesExecuted++;
+ sitr->second.stats.branchesExecuted++;
+ }
+
+ }
+
+
+ if (!theCoverageMap->wasExecuted( a )) {
+ stats.uncoveredBytes++;
+ sitr->second.stats.uncoveredBytes++;
+ }
+ a++;
+
+ }
+ }
+ }
+
+
void DesiredSymbols::computeUncovered( void )
{
uint32_t a, la, ha;
uint32_t endAddress;
+ uint32_t count;
DesiredSymbols::symbolSet_t::iterator sitr;
CoverageRanges* theBranches;
CoverageMapBase* theCoverageMap;
@@ -162,22 +223,29 @@
endAddress = sitr->second.stats.sizeInBytes - 1;
a = 0;
while (a <= endAddress) {
-
+
// If an address was NOT executed, find consecutive unexecuted
// addresses and add them to the uncovered ranges.
if (!theCoverageMap->wasExecuted( a )) {
+
la = a;
+ count = 1;
for (ha=a+1;
ha<=endAddress && !theCoverageMap->wasExecuted( ha );
ha++)
- ;
+ {
+ if ( theCoverageMap->isStartOfInstruction( ha ) )
+ count++;
+ }
ha--;
stats.uncoveredRanges++;
+ sitr->second.stats.uncoveredRanges++;
theRanges->add(
sitr->second.baseAddress + la,
sitr->second.baseAddress + ha,
- CoverageRanges::UNCOVERED_REASON_NOT_EXECUTED
+ CoverageRanges::UNCOVERED_REASON_NOT_EXECUTED,
+ count
);
a = ha + 1;
}
@@ -185,7 +253,6 @@
// If an address is a branch instruction, add any uncovered branches
// to the uncoverd branches.
else if (theCoverageMap->isBranch( a )) {
- stats.branchesFound++;
la = a;
for (ha=a+1;
ha<=endAddress && !theCoverageMap->isStartOfInstruction( ha );
@@ -195,10 +262,12 @@
if (theCoverageMap->wasAlwaysTaken( la )) {
stats.branchesAlwaysTaken++;
+ sitr->second.stats.branchesAlwaysTaken++;
theBranches->add(
sitr->second.baseAddress + la,
sitr->second.baseAddress + ha,
- CoverageRanges::UNCOVERED_REASON_BRANCH_ALWAYS_TAKEN
+ CoverageRanges::UNCOVERED_REASON_BRANCH_ALWAYS_TAKEN,
+ 1
);
if (Verbose)
fprintf(
@@ -212,10 +281,12 @@
else if (theCoverageMap->wasNeverTaken( la )) {
stats.branchesNeverTaken++;
+ sitr->second.stats.branchesNeverTaken++;
theBranches->add(
sitr->second.baseAddress + la,
sitr->second.baseAddress + ha,
- CoverageRanges::UNCOVERED_REASON_BRANCH_NEVER_TAKEN
+ CoverageRanges::UNCOVERED_REASON_BRANCH_NEVER_TAKEN,
+ 1
);
if (Verbose)
fprintf(
@@ -234,6 +305,7 @@
}
}
+
void DesiredSymbols::createCoverageMap(
const std::string& symbolName,
uint32_t size
@@ -480,7 +552,7 @@
};
uint32_t DesiredSymbols::getNumberBranchesFound( void ) const {
- return stats.branchesFound;
+ return (stats.branchesNotExecuted + stats.branchesExecuted);
};
uint32_t DesiredSymbols::getNumberBranchesNeverTaken( void ) const {
diff -u gcc-testing/rtems-coverage/ReportsBase.h:1.8 gcc-testing/rtems-coverage/ReportsBase.h:1.9
--- gcc-testing/rtems-coverage/ReportsBase.h:1.8 Wed May 12 13:12:36 2010
+++ gcc-testing/rtems-coverage/ReportsBase.h Fri May 14 12:26:35 2010
@@ -314,8 +314,7 @@
virtual bool PutSymbolSummaryLine(
FILE* report,
unsigned int number,
- Coverage::DesiredSymbols::symbolSet_t::iterator symbol,
- Coverage::CoverageRanges::ranges_t::iterator range
+ Coverage::DesiredSymbols::symbolSet_t::iterator symbol
)=0;
};
diff -u gcc-testing/rtems-coverage/ReportsBase.cc:1.11 gcc-testing/rtems-coverage/ReportsBase.cc:1.12
--- gcc-testing/rtems-coverage/ReportsBase.cc:1.11 Thu May 13 09:18:07 2010
+++ gcc-testing/rtems-coverage/ReportsBase.cc Fri May 14 12:26:35 2010
@@ -373,7 +373,6 @@
{
Coverage::DesiredSymbols::symbolSet_t::iterator ditr;
FILE* report;
- Coverage::CoverageRanges::ranges_t::iterator ritr;
Coverage::CoverageRanges* theRanges;
unsigned int count;
@@ -383,23 +382,14 @@
return;
}
- // Process uncovered ranges for each symbol.
+ // Process each symbol.
count = 0;
for (ditr = SymbolsToAnalyze->set.begin();
ditr != SymbolsToAnalyze->set.end();
ditr++) {
- theRanges = ditr->second.uncoveredRanges;
-
- if (theRanges && !theRanges->set.empty()) {
-
- for (ritr = theRanges->set.begin() ;
- ritr != theRanges->set.end() ;
- ritr++ ) {
- PutSymbolSummaryLine( report, count, ditr, ritr );
- count++;
- }
- }
+ PutSymbolSummaryLine( report, count, ditr );
+ count++;
}
CloseSymbolSummaryFile( report );
@@ -423,21 +413,45 @@
reports = *ritr;
reportName = "index" + reports->ReportExtension();
+ if (Verbose)
+ fprintf(
+ stderr, "Generate %s\n", reportName.c_str()
+ );
reports->WriteIndex( reportName.c_str() );
reportName = "annotated" + reports->ReportExtension();
+ if (Verbose)
+ fprintf(
+ stderr, "Generate %s\n", reportName.c_str()
+ );
reports->WriteAnnotatedReport( reportName.c_str() );
reportName = "branch" + reports->ReportExtension();
+ if (Verbose)
+ fprintf(
+ stderr, "Generate %s\n", reportName.c_str()
+ );
reports->WriteBranchReport(reportName.c_str() );
reportName = "uncovered" + reports->ReportExtension();
+ if (Verbose)
+ fprintf(
+ stderr, "Generate %s\n", reportName.c_str()
+ );
reports->WriteCoverageReport(reportName.c_str() );
reportName = "sizes" + reports->ReportExtension();
+ if (Verbose)
+ fprintf(
+ stderr, "Generate %s\n", reportName.c_str()
+ );
reports->WriteSizeReport(reportName.c_str() );
reportName = "symbolSummary" + reports->ReportExtension();
+ if (Verbose)
+ fprintf(
+ stderr, "Generate %s\n", reportName.c_str()
+ );
reports->WriteSymbolSummaryReport(reportName.c_str() );
}
diff -u gcc-testing/rtems-coverage/ReportsHtml.h:1.8 gcc-testing/rtems-coverage/ReportsHtml.h:1.9
--- gcc-testing/rtems-coverage/ReportsHtml.h:1.8 Wed May 12 14:22:17 2010
+++ gcc-testing/rtems-coverage/ReportsHtml.h Fri May 14 12:26:35 2010
@@ -151,8 +151,7 @@
virtual bool PutSymbolSummaryLine(
FILE* report,
unsigned int number,
- Coverage::DesiredSymbols::symbolSet_t::iterator symbol,
- Coverage::CoverageRanges::ranges_t::iterator range
+ Coverage::DesiredSymbols::symbolSet_t::iterator symbol
);
virtual FILE* OpenFile(
diff -u gcc-testing/rtems-coverage/ReportsHtml.cc:1.16 gcc-testing/rtems-coverage/ReportsHtml.cc:1.17
--- gcc-testing/rtems-coverage/ReportsHtml.cc:1.16 Thu May 13 09:18:07 2010
+++ gcc-testing/rtems-coverage/ReportsHtml.cc Fri May 14 12:26:35 2010
@@ -100,7 +100,6 @@
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=us-ascii\" >\n"
"<link rel=\"stylesheet\" type=\"text/css\" href=\"covoar.css\" media=\"screen\" >\n"
"<script type=\"text/javascript\" src=\"table.js\"></script>\n"
- "<body>\n"
);
return aFile;
@@ -117,6 +116,8 @@
fprintf(
aFile,
+ "<pre class=\"heading-title\">Annotated Report</pre>\n"
+ "<body>\n"
"<pre class=\"code\">\n"
);
@@ -137,7 +138,9 @@
// Put header information into the file
fprintf(
aFile,
- "<table class=\"covoar table-autosort:0 table-autofilter"
+ "<pre class=\"heading-title\">Branch Report</pre>\n"
+ "<body>\n"
+ "<table class=\"covoar table-autosort:0 table-autofilter"
TABLE_HEADER_CLASS "\">\n"
"<thead>\n"
"<tr>\n"
@@ -168,6 +171,8 @@
// Put header information into the file
fprintf(
aFile,
+ "<pre class=\"heading-title\">Coverage Report</pre>\n"
+ "<body>\n"
"<table class=\"covoar table-autosort:0 table-autofilter"
TABLE_HEADER_CLASS "\">\n"
"<thead>\n"
@@ -197,6 +202,8 @@
// Put header information into the file
fprintf(
aFile,
+ "<pre class=\"heading-title\">Size Report</pre>\n"
+ "<body>\n"
"<table class=\"covoar table-autosort:0 table-autofilter"
TABLE_HEADER_CLASS "\">\n"
"<thead>\n"
@@ -222,6 +229,8 @@
// Put header information into the file
fprintf(
aFile,
+ "<pre class=\"heading-title\">Symbol Summary Report</pre>\n"
+ "<body>\n"
"<table class=\"covoar table-autosort:0 table-autofilter"
TABLE_HEADER_CLASS "\">\n"
"<thead>\n"
@@ -359,7 +368,8 @@
// Size in instructions
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ rangePtr->instructionCount
);
// Reason Branch was uncovered
@@ -527,7 +537,8 @@
// Size in instructions
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ rangePtr->instructionCount
);
// See if an explanation is available
@@ -603,10 +614,10 @@
bool ReportsHtml::PutSymbolSummaryLine(
FILE* report,
unsigned int count,
- Coverage::DesiredSymbols::symbolSet_t::iterator symbol,
- Coverage::CoverageRanges::ranges_t::iterator range
+ Coverage::DesiredSymbols::symbolSet_t::iterator symbol
)
{
+
// Mark the background color different for odd and even lines.
if ( ( count%2 ) == 0 )
fprintf( report, "<tr class=\"covoar-tr covoar-tr-even\">\n");
@@ -623,65 +634,86 @@
// Total Size in Bytes
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ symbol->second.stats.sizeInBytes
);
// Total Size in Instructions
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ symbol->second.stats.sizeInInstructions
);
// Total Uncovered Ranges
fprintf(
report,
"<td class=\"covoar-td\" align=\"center\">%d</td>\n",
- symbol->second.uncoveredRanges->set.size()
+ symbol->second.stats.uncoveredRanges
);
// Uncovered Size in Bytes
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ symbol->second.stats.uncoveredBytes
);
// Uncovered Size in Instructions
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ symbol->second.stats.uncoveredInstructions
);
// Total number of branches
fprintf(
report,
"<td class=\"covoar-td\" align=\"center\">%d</td>\n",
- symbol->second.uncoveredBranches->set.size()
+ symbol->second.stats.branchesNotExecuted + symbol->second.stats.branchesExecuted
);
// Total Always Taken
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ symbol->second.stats.branchesAlwaysTaken
);
// Total Never Taken
fprintf(
report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
- );
-
+ "<td class=\"covoar-td\" align=\"center\">%d</td>\n",
+ symbol->second.stats.branchesNeverTaken
+ );
- // % Uncovered Instructions
- fprintf(
- report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
- );
+ // % Uncovered Instructions
+ if ( symbol->second.stats.sizeInInstructions == 0 )
+ fprintf(
+ report,
+ "<td class=\"covoar-td\" align=\"center\">N/A</td>\n"
+ );
+ else
+ fprintf(
+ report,
+ "<td class=\"covoar-td\" align=\"center\">%.2f</td>\n",
+ (symbol->second.stats.uncoveredInstructions*100.0)/
+ symbol->second.stats.sizeInInstructions
+ );
// % Uncovered Bytes
- fprintf(
- report,
- "<td class=\"covoar-td\" align=\"center\">XXX</td>\n"
- );
+ if ( symbol->second.stats.sizeInBytes == 0 )
+ fprintf(
+ report,
+ "<td class=\"covoar-td\" align=\"center\">N/A</td>\n"
+ );
+ else
+ fprintf(
+ report,
+ "<td class=\"covoar-td\" align=\"center\">%.2f</td>\n",
+ (symbol->second.stats.uncoveredBytes*100.0)/
+ symbol->second.stats.sizeInBytes
+ );
fprintf( report, "</tr>\n");
return true;
diff -u gcc-testing/rtems-coverage/ReportsText.h:1.5 gcc-testing/rtems-coverage/ReportsText.h:1.6
--- gcc-testing/rtems-coverage/ReportsText.h:1.5 Wed May 12 13:12:36 2010
+++ gcc-testing/rtems-coverage/ReportsText.h Fri May 14 12:26:35 2010
@@ -97,8 +97,7 @@
virtual bool PutSymbolSummaryLine(
FILE* report,
unsigned int number,
- Coverage::DesiredSymbols::symbolSet_t::iterator symbol,
- Coverage::CoverageRanges::ranges_t::iterator range
+ Coverage::DesiredSymbols::symbolSet_t::iterator symbol
);
};
diff -u gcc-testing/rtems-coverage/ReportsText.cc:1.5 gcc-testing/rtems-coverage/ReportsText.cc:1.6
--- gcc-testing/rtems-coverage/ReportsText.cc:1.5 Wed May 12 11:14:16 2010
+++ gcc-testing/rtems-coverage/ReportsText.cc Fri May 14 12:26:35 2010
@@ -206,19 +206,11 @@
}
bool ReportsText::PutSymbolSummaryLine(
- FILE* report,
- unsigned int number,
- Coverage::DesiredSymbols::symbolSet_t::iterator symbol,
- Coverage::CoverageRanges::ranges_t::iterator range
+ FILE* report,
+ unsigned int number,
+ Coverage::DesiredSymbols::symbolSet_t::iterator symbol
)
{
- fprintf(
- report,
- "%d\t%s\t%s\n",
- range->highAddress - range->lowAddress + 1,
- symbol->first.c_str(),
- range->lowSourceLine.c_str()
- );
return true;
}
diff -u gcc-testing/rtems-coverage/covoar.cc:1.24 gcc-testing/rtems-coverage/covoar.cc:1.25
--- gcc-testing/rtems-coverage/covoar.cc:1.24 Thu May 13 12:36:17 2010
+++ gcc-testing/rtems-coverage/covoar.cc Fri May 14 12:26:35 2010
@@ -350,6 +350,11 @@
fprintf( stderr, "Computing uncovered ranges and branches\n" );
SymbolsToAnalyze->computeUncovered();
+ // Calculate remainder of statistics.
+ if (Verbose)
+ fprintf( stderr, "Calculate statistics\n" );
+ SymbolsToAnalyze->caculateStatistics();
+
// Look up the source lines for any uncovered ranges and branches.
if (Verbose)
fprintf(
@@ -360,6 +365,10 @@
//
// Report the coverage data.
//
+ if (Verbose)
+ fprintf(
+ stderr, "Generate Reports\n"
+ );
Coverage::GenerateReports();
// Write explanations that were not found.
diff -u gcc-testing/rtems-coverage/covoar.css:1.2 gcc-testing/rtems-coverage/covoar.css:1.3
--- gcc-testing/rtems-coverage/covoar.css:1.2 Wed May 12 13:11:21 2010
+++ gcc-testing/rtems-coverage/covoar.css Fri May 14 12:26:35 2010
@@ -224,8 +224,9 @@
.heading-title {
text-align: center;
color: rgb(0,0,0);
- font-size: 0.9em;
+ font-size: 4.0em;
font-weight: bold;
+ line-height: 0.9;
padding-top: 5px;
padding-left: 0px;
text-align: center;
--
Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20100514/61f83ea5/attachment.html>
More information about the vc
mailing list