thread_state.hh (2689:dbf969c18a65) | thread_state.hh (2690:f4337c0d9e6f) |
---|---|
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 | 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 |
|
91 void setPhysPort(FunctionalPort *port) { physPort = port; } 92 | 93 void setPhysPort(FunctionalPort *port) { physPort = port; } 94 |
95 VirtualPort *getVirtPort(ThreadContext *tc = NULL) { return virtPort; } 96 |
|
93 void setVirtPort(VirtualPort *port) { virtPort = port; } 94#else 95 Process *getProcessPtr() { return process; } 96 97 TranslatingPort *getMemPort() { return port; } 98 99 void setMemPort(TranslatingPort *_port) { port = _port; } 100 --- 43 unchanged lines hidden (view full) --- 144 145 // ID of this context w.r.t. the System or Process object to which 146 // it belongs. For full-system mode, this is the system CPU ID. 147 int cpuId; 148 149 // Index of hardware thread context on the CPU that this represents. 150 int tid; 151 | 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: |
|
152 /** Last time activate was called on this thread. */ 153 Tick lastActivate; 154 155 /** Last time suspend was called on this thread. */ 156 Tick lastSuspend; 157 158#if FULL_SYSTEM 159 public: --- 22 unchanged lines hidden (view full) --- 182 short asid; 183#endif 184 185 /** Current instruction the thread is committing. Only set and 186 * used for DTB faults currently. 187 */ 188 TheISA::MachInst inst; 189 | 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: |
|
190 /** 191 * Temporary storage to pass the source address from copy_load to 192 * copy_store. 193 * @todo Remove this temporary when we have a better way to do it. 194 */ 195 Addr copySrcAddr; 196 /** 197 * Temp storage for the physical source address of a copy. 198 * @todo Remove this temporary when we have a better way to do it. 199 */ 200 Addr copySrcPhysAddr; 201 | 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 |
202 public: | |
203 /* 204 * number of executed instructions, for matching with syscall trace 205 * points in EIO files. 206 */ 207 Counter funcExeInst; 208 209 // 210 // Count failed store conditionals so we can warn of apparent 211 // application deadlock situations. 212 unsigned storeCondFailures; 213}; 214 215#endif // __CPU_THREAD_STATE_HH__ | 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__ |