// Iterate over all of the data, converting it into the dual of the data map,
// so that the data is sorted by amount of time taken, instead of pointer.
//
- std::vector<pair<double, Pass*> > Data;
+ std::vector<std::pair<double, Pass*> > Data;
double TotalTime = 0;
for (std::map<Pass*, double>::iterator I = TimingData.begin(),
E = TimingData.end(); I != E; ++I)
}
// Sort the data by time as the primary key, in reverse order...
- std::sort(Data.begin(), Data.end(), greater<pair<double, Pass*> >());
+ std::sort(Data.begin(), Data.end(), std::greater<std::pair<double, Pass*> >());
// Print out timing header...
- cerr << std::string(79, '=') << "\n"
+ std::cerr << std::string(79, '=') << "\n"
<< " ... Pass execution timing report ...\n"
<< std::string(79, '=') << "\n Total Execution Time: " << TotalTime
<< " seconds\n\n % Time: Seconds:\tPass Name:\n";
fprintf(stderr, " %6.2f%% %fs\t%s\n", Data[i].first*100 / TotalTime,
Data[i].first, Data[i].second->getPassName());
}
- cerr << " 100.00% " << TotalTime << "s\tTOTAL\n"
+ std::cerr << " 100.00% " << TotalTime << "s\tTOTAL\n"
<< std::string(79, '=') << "\n";
}
#ifndef NDEBUG
// All Required analyses should be available to the pass as it runs!
- for (vector<AnalysisID>::const_iterator
+ for (std::vector<AnalysisID>::const_iterator
I = AnUsage.getRequiredSet().begin(),
E = AnUsage.getRequiredSet().end(); I != E; ++I) {
assert(getAnalysisOrNullUp(*I) && "Analysis used but not available!");
#include "llvm/Support/InstVisitor.h"
#include "Support/STLExtras.h"
#include <algorithm>
+#include <iostream>
namespace { // Anonymous namespace for class
CheckFailed("Function Declaration has Internal Linkage!", I);
if (Broken) {
- cerr << "Broken module found, compilation aborted!\n";
+ std::cerr << "Broken module found, compilation aborted!\n";
abort();
}
return false;