base.cc (5250:42577371ff31) | base.cc (5281:61e396061986) |
---|---|
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; --- 452 unchanged lines hidden (view full) --- 461void 462BaseSimpleCPU::advancePC(Fault fault) 463{ 464 //Since we're moving to a new pc, zero out the offset 465 fetchOffset = 0; 466 if (fault != NoFault) { 467 curMacroStaticInst = StaticInst::nullStaticInstPtr; 468 predecoder.reset(); | 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; --- 452 unchanged lines hidden (view full) --- 461void 462BaseSimpleCPU::advancePC(Fault fault) 463{ 464 //Since we're moving to a new pc, zero out the offset 465 fetchOffset = 0; 466 if (fault != NoFault) { 467 curMacroStaticInst = StaticInst::nullStaticInstPtr; 468 predecoder.reset(); |
469 fault->invoke(tc); | |
470 thread->setMicroPC(0); 471 thread->setNextMicroPC(1); | 469 thread->setMicroPC(0); 470 thread->setNextMicroPC(1); |
471 fault->invoke(tc); |
|
472 } else { 473 //If we're at the last micro op for this instruction 474 if (curStaticInst && curStaticInst->isLastMicroop()) { 475 //We should be working with a macro op 476 assert(curMacroStaticInst); 477 //Close out this macro op, and clean up the 478 //microcode state 479 curMacroStaticInst = StaticInst::nullStaticInstPtr; --- 60 unchanged lines hidden --- | 472 } else { 473 //If we're at the last micro op for this instruction 474 if (curStaticInst && curStaticInst->isLastMicroop()) { 475 //We should be working with a macro op 476 assert(curMacroStaticInst); 477 //Close out this macro op, and clean up the 478 //microcode state 479 curMacroStaticInst = StaticInst::nullStaticInstPtr; --- 60 unchanged lines hidden --- |