ARM: Decode neon memory instructions.
[gem5.git] / src / arch / alpha / process.hh
index 5d5c9a52e02ee07db7884ed474d89476ba733de3..40d6bf48a0bc3f366620287e1d6b4bbfd6712b1c 100644 (file)
  *          Ali Saidi
  */
 
-#ifndef __ALPHA_PROCESS_HH__
-#define __ALPHA_PROCESS_HH__
+#ifndef __ARCH_ALPHA_PROCESS_HH__
+#define __ARCH_ALPHA_PROCESS_HH__
 
-#include <string>
-#include <vector>
 #include "sim/process.hh"
 
-class ObjectFile;
-class System;
-
-
 class AlphaLiveProcess : public LiveProcess
 {
+  private:
+    void setupASNReg();
+
   protected:
-    AlphaLiveProcess(const std::string &nm, ObjectFile *objFile,
-                System *_system, int stdin_fd, int stdout_fd, int stderr_fd,
-                std::vector<std::string> &argv,
-                std::vector<std::string> &envp);
+    AlphaLiveProcess(LiveProcessParams *params, ObjectFile *objFile);
 
-    void startup();
-};
+    void loadState(Checkpoint *cp);
+    void initState();
+
+    void argsInit(int intSize, int pageSize);
 
+  public:
+    AlphaISA::IntReg getSyscallArg(ThreadContext *tc, int &i);
+    void setSyscallArg(ThreadContext *tc, int i, AlphaISA::IntReg val);
+    void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
+};
 
-#endif // __ALPHA_PROCESS_HH__
+#endif // __ARCH_ALPHA_PROCESS_HH__