diff options
author | Steve Reinhardt <steve.reinhardt@amd.com> | 2012-08-06 16:55:34 -0700 |
---|---|---|
committer | Steve Reinhardt <steve.reinhardt@amd.com> | 2012-08-06 16:55:34 -0700 |
commit | 73ef8bd168795855cd23e56dd6739dfa23a77eb8 (patch) | |
tree | dfe826d6863ba57fbb5b05beba8e1db210f48efc /src/sim/process.hh | |
parent | e232152db6d9cd511a75c41f47b00befe9b7719e (diff) | |
download | gem5-73ef8bd168795855cd23e56dd6739dfa23a77eb8.tar.xz |
process: add progName() virtual function
This replaces a (potentially uninitialized) string
field with a virtual function so that we can have
a safe interface without requiring changes to the
eio code.
Diffstat (limited to 'src/sim/process.hh')
-rw-r--r-- | src/sim/process.hh | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/sim/process.hh b/src/sim/process.hh index cddd060fd..be4c53dd9 100644 --- a/src/sim/process.hh +++ b/src/sim/process.hh @@ -110,11 +110,8 @@ class Process : public SimObject Addr nxm_start; Addr nxm_end; - std::string prog_fname; // file name - Stats::Scalar num_syscalls; // number of syscalls executed - protected: // constructor Process(ProcessParams *params); @@ -177,6 +174,9 @@ class Process : public SimObject // Find a free context to use ThreadContext *findFreeContext(); + // provide program name for debug messages + virtual const char *progName() const { return "<unknown>"; } + // map simulator fd sim_fd to target fd tgt_fd void dup_fd(int sim_fd, int tgt_fd); @@ -292,6 +292,9 @@ class LiveProcess : public Process inline uint64_t pid() {return __pid;} inline uint64_t ppid() {return __ppid;} + // provide program name for debug messages + virtual const char *progName() const { return argv[0].c_str(); } + std::string fullPath(const std::string &filename) { |