1/* 2 * Copyright (c) 2002-2005 The Regents of The University of Michigan 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; --- 47 unchanged lines hidden (view full) --- 56class Platform; 57class GDBListener; 58class RemoteGDB; 59#endif 60 61class System : public SimObject 62{ 63 public: |
64 enum MemoryMode { 65 Invalid=0, 66 Atomic, 67 Timing 68 }; 69 70 71 MemoryMode getMemoryMode() { assert(memoryMode); return memoryMode; } 72 73 /** Change the memory mode of the system. This should only be called by the 74 * python!! 75 * @param mode Mode to change to (atomic/timing) 76 */ 77 void setMemoryMode(MemoryMode mode); 78 |
79 PhysicalMemory *physmem; 80 PCEventQueue pcEventQueue; 81 82 std::vector<ThreadContext *> threadContexts; 83 int numcpus; 84 85 int getNumCPUs() 86 { --- 31 unchanged lines hidden (view full) --- 118 119 int page_ptr; 120 121 122#endif // FULL_SYSTEM 123 124 protected: 125 |
126 MemoryMode memoryMode; 127 |
128#if FULL_SYSTEM 129 /** 130 * Fix up an address used to match PCs for hooking simulator 131 * events on to target function executions. See comment in 132 * system.cc for details. 133 */ 134 virtual Addr fixFuncEventAddr(Addr addr) = 0; 135 --- 108 unchanged lines hidden --- |