//===- ProgramInfo.h - Information about the loaded program -----*- C++ -*-===//
-//
+//
// The LLVM Compiler Infrastructure
//
-// This file was developed by the LLVM research group and is distributed under
-// the University of Illinois Open Source License. See LICENSE.TXT for details.
-//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
//===----------------------------------------------------------------------===//
//
// This file defines various pieces of information about the currently loaded
#ifndef LLVM_DEBUGGER_PROGRAMINFO_H
#define LLVM_DEBUGGER_PROGRAMINFO_H
+#include "llvm/System/TimeValue.h"
#include <string>
#include <map>
#include <vector>
class GlobalVariable;
class Module;
class SourceFile;
- class SourceLanguage;
+ struct SourceLanguage;
class ProgramInfo;
/// SourceLanguageCache - SourceLanguage implementations are allowed to cache
public:
SourceFileInfo(const GlobalVariable *Desc, const SourceLanguage &Lang);
~SourceFileInfo();
-
+
const std::string &getBaseName() const { return BaseName; }
const std::string &getDirectory() const { return Directory; }
unsigned getDebugVersion() const { return Version; }
/// ProgramTimeStamp - This is the timestamp of the executable file that we
/// currently have loaded into the debugger.
- unsigned long long ProgramTimeStamp;
+ sys::TimeValue ProgramTimeStamp;
/// SourceFiles - This map is used to transform source file descriptors into
/// their corresponding SourceFileInfo objects. This mapping owns the
/// with the program, through the getSourceFileFromDesc method. If ALL of
/// the source files are needed, the getSourceFiles() method scans the
/// entire program looking for them.
- ///
+ ///
std::multimap<std::string, SourceFileInfo*> SourceFileIndex;
/// SourceFunctions - This map contains entries functions in the source
/// effectively a small map from the languages that are active in the
/// program to their caches. This can be accessed by the language by the
/// "getLanguageCache" method.
- std::vector<std::pair<const SourceLanguage*,
+ std::vector<std::pair<const SourceLanguage*,
SourceLanguageCache*> > LanguageCaches;
public:
ProgramInfo(Module *m);
/// getProgramTimeStamp - Return the time-stamp of the program when it was
/// loaded.
- unsigned long long getProgramTimeStamp() const { return ProgramTimeStamp; }
-
+ sys::TimeValue getProgramTimeStamp() const { return ProgramTimeStamp; }
+
//===------------------------------------------------------------------===//
// Interfaces to the source code files that make up the program.
//