1/* 2 * Copyright (c) 2007-2008 The Florida State University 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 19 unchanged lines hidden (view full) --- 28 * Authors: Stephen Hines 29 */ 30 31#ifndef __ARM_PROCESS_HH__ 32#define __ARM_PROCESS_HH__ 33 34#include <string> 35#include <vector> |
36#include "base/loader/object_file.hh" |
37#include "sim/process.hh" 38 39class LiveProcess; 40class ObjectFile; 41class System; 42 43class ArmLiveProcess : public LiveProcess 44{ 45 protected: |
46 ObjectFile::Arch arch; 47 ArmLiveProcess(LiveProcessParams * params, ObjectFile *objFile, 48 ObjectFile::Arch _arch); |
49 50 void startup(); 51 52 void copyStringArray32(std::vector<std::string> &strings, 53 Addr array_ptr, Addr data_ptr, 54 TranslatingPort* memPort); 55 56 public: 57 void argsInit(int intSize, int pageSize); 58 59 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i); 60 void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val); 61 void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value); 62}; 63 64#endif // __ARM_PROCESS_HH__ 65 |