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; --- 99 unchanged lines hidden (view full) --- 108 quiesceEvent->schedule(quiesceEndTick); 109 if (kernelStats) 110 kernelStats->unserialize(cp, section); 111#endif 112} 113 114#if FULL_SYSTEM 115void |
116ThreadState::connectMemPorts(ThreadContext *tc) |
117{ 118 connectPhysPort(); |
119 connectVirtPort(tc); |
120} 121 122void 123ThreadState::connectPhysPort() 124{ 125 // @todo: For now this disregards any older port that may have 126 // already existed. Fix this memory leak once the bus port IDs 127 // for functional ports is resolved. 128 if (physPort) 129 physPort->removeConn(); 130 else 131 physPort = new FunctionalPort(csprintf("%s-%d-funcport", 132 baseCpu->name(), tid)); 133 connectToMemFunc(physPort); 134} 135 136void |
137ThreadState::connectVirtPort(ThreadContext *tc) |
138{ 139 // @todo: For now this disregards any older port that may have 140 // already existed. Fix this memory leak once the bus port IDs 141 // for functional ports is resolved. 142 if (virtPort) 143 virtPort->removeConn(); 144 else 145 virtPort = new VirtualPort(csprintf("%s-%d-vport", |
146 baseCpu->name(), tid), tc); |
147 connectToMemFunc(virtPort); 148} 149 150void 151ThreadState::profileClear() 152{ 153 if (profile) 154 profile->clear(); --- 43 unchanged lines hidden --- |