#include "llvm/System/DataTypes.h"
#include "llvm/ADT/StringRef.h"
#include <cassert>
+#include <string>
#include <vector>
#include <utility>
class TimerGroup {
std::string Name;
Timer *FirstTimer; // First timer in the group.
- std::vector<std::pair<TimeRecord, StringRef> > TimersToPrint;
+ std::vector<std::pair<TimeRecord, std::string> > TimersToPrint;
TimerGroup **Prev, *Next; // Doubly linked list of TimerGroup's.
TimerGroup(const TimerGroup &TG); // DO NOT IMPLEMENT
#include "llvm/System/Mutex.h"
#include "llvm/System/Process.h"
#include "llvm/ADT/OwningPtr.h"
-#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringMap.h"
using namespace llvm;
void TimerGroup::PrintQueuedTimers(raw_ostream &OS) {
// Sort the timers in descending order by amount of time taken.
- array_pod_sort(TimersToPrint.begin(), TimersToPrint.end());
-
+ std::sort(TimersToPrint.begin(), TimersToPrint.end());
+
TimeRecord Total;
for (unsigned i = 0, e = TimersToPrint.size(); i != e; ++i)
Total += TimersToPrint[i].first;