1/* 2 * Copyright (c) 2006 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; --- 74 unchanged lines hidden (view full) --- 83 EndQuiesceEvent *getQuiesceEvent() { return quiesceEvent; } 84 85 void profileClear(); 86 87 void profileSample(); 88 89 Kernel::Statistics *getKernelStats() { return kernelStats; } 90 |
91 FunctionalPort *getPhysPort() { return physPort; } 92 |
93 void setPhysPort(FunctionalPort *port) { physPort = port; } 94 |
95 VirtualPort *getVirtPort(ThreadContext *tc = NULL) { return virtPort; } 96 |
97 void setVirtPort(VirtualPort *port) { virtPort = port; } 98#else 99 Process *getProcessPtr() { return process; } 100 101 TranslatingPort *getMemPort() { return port; } 102 103 void setMemPort(TranslatingPort *_port) { port = _port; } 104 --- 43 unchanged lines hidden (view full) --- 148 149 // ID of this context w.r.t. the System or Process object to which 150 // it belongs. For full-system mode, this is the system CPU ID. 151 int cpuId; 152 153 // Index of hardware thread context on the CPU that this represents. 154 int tid; 155 |
156 public: |
157 /** Last time activate was called on this thread. */ 158 Tick lastActivate; 159 160 /** Last time suspend was called on this thread. */ 161 Tick lastSuspend; 162 163#if FULL_SYSTEM 164 public: --- 22 unchanged lines hidden (view full) --- 187 short asid; 188#endif 189 190 /** Current instruction the thread is committing. Only set and 191 * used for DTB faults currently. 192 */ 193 TheISA::MachInst inst; 194 |
195 public: |
196 /** 197 * Temporary storage to pass the source address from copy_load to 198 * copy_store. 199 * @todo Remove this temporary when we have a better way to do it. 200 */ 201 Addr copySrcAddr; 202 /** 203 * Temp storage for the physical source address of a copy. 204 * @todo Remove this temporary when we have a better way to do it. 205 */ 206 Addr copySrcPhysAddr; 207 |
208 /* 209 * number of executed instructions, for matching with syscall trace 210 * points in EIO files. 211 */ 212 Counter funcExeInst; 213 214 // 215 // Count failed store conditionals so we can warn of apparent 216 // application deadlock situations. 217 unsigned storeCondFailures; 218}; 219 220#endif // __CPU_THREAD_STATE_HH__ |