Deleted Added
sdiff udiff text old ( 10299:bec0c5ffc323 ) new ( 10496:0a5a8ecd0ec6 )
full compact
1/*
2 * Copyright (c) 2014 Advanced Micro Devices, Inc.
3 * Copyright (c) 2001-2005 The Regents of The University of Michigan
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
8 * met: redistributions of source code must retain the above copyright

--- 36 unchanged lines hidden (view full) ---

45#include "sim/syscallreturn.hh"
46
47class PageTable;
48struct ProcessParams;
49struct LiveProcessParams;
50class SyscallDesc;
51class System;
52class ThreadContext;
53
54template<class IntType>
55struct AuxVector
56{
57 IntType a_type;
58 IntType a_val;
59
60 AuxVector()

--- 73 unchanged lines hidden (view full) ---

134 public:
135 int fd;
136 std::string filename;
137 int mode;
138 int flags;
139 bool isPipe;
140 int readPipeSource;
141 uint64_t fileOffset;
142
143 FdMap()
144 : fd(-1), filename("NULL"), mode(0), flags(0),
145 isPipe(false), readPipeSource(0), fileOffset(0)
146 { }
147
148 void serialize(std::ostream &os);
149 void unserialize(Checkpoint *cp, const std::string &section);
150 };
151
152 protected:
153 /// Memory proxy for initialization (image loading)

--- 97 unchanged lines hidden (view full) ---

251 uint64_t __euid;
252 uint64_t __gid;
253 uint64_t __egid;
254
255 // pid of the process and it's parent
256 uint64_t __pid;
257 uint64_t __ppid;
258
259 public:
260
261 enum AuxiliaryVectorType {
262 M5_AT_NULL = 0,
263 M5_AT_IGNORE = 1,
264 M5_AT_EXECFD = 2,
265 M5_AT_PHDR = 3,
266 M5_AT_PHENT = 4,

--- 53 unchanged lines hidden (view full) ---

320 virtual TheISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width);
321 virtual void setSyscallArg(ThreadContext *tc,
322 int i, TheISA::IntReg val) = 0;
323 virtual void setSyscallReturn(ThreadContext *tc,
324 SyscallReturn return_value) = 0;
325
326 virtual SyscallDesc *getDesc(int callnum) = 0;
327
328 // this function is used to create the LiveProcess object, since
329 // we can't tell which subclass of LiveProcess to use until we
330 // open and look at the object file.
331 static LiveProcess *create(LiveProcessParams *params);
332};
333
334
335#endif // __PROCESS_HH__