base.cc (3435:0830790f937c) | base.cc (3442:e52c3470e7ef) |
---|---|
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; --- 387 unchanged lines hidden (view full) --- 396 397 // decode the instruction 398 inst = gtoh(inst); 399 //If we're not in the middle of a macro instruction 400 if (!curMacroStaticInst) { 401 StaticInstPtr instPtr = StaticInst::decode(makeExtMI(inst, thread->getTC())); 402 if (instPtr->isMacroOp()) { 403 curMacroStaticInst = instPtr; | 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; --- 387 unchanged lines hidden (view full) --- 396 397 // decode the instruction 398 inst = gtoh(inst); 399 //If we're not in the middle of a macro instruction 400 if (!curMacroStaticInst) { 401 StaticInstPtr instPtr = StaticInst::decode(makeExtMI(inst, thread->getTC())); 402 if (instPtr->isMacroOp()) { 403 curMacroStaticInst = instPtr; |
404 curStaticInst = curMacroStaticInst->fetchMicroOp(0); | 404 curStaticInst = curMacroStaticInst-> 405 fetchMicroOp(thread->readMicroPC()); |
405 } else { 406 curStaticInst = instPtr; 407 } 408 } else { 409 //Read the next micro op from the macro op | 406 } else { 407 curStaticInst = instPtr; 408 } 409 } else { 410 //Read the next micro op from the macro op |
410 curStaticInst = curMacroStaticInst->fetchMicroOp(thread->readMicroPC()); | 411 curStaticInst = curMacroStaticInst-> 412 fetchMicroOp(thread->readMicroPC()); |
411 } 412 413 414 traceData = Trace::getInstRecord(curTick, tc, curStaticInst, 415 thread->readPC()); 416 417 DPRINTF(Decode,"Decode: Decoded %s instruction (opcode: 0x%x): 0x%x\n", 418 curStaticInst->getName(), curStaticInst->getOpcode(), --- 83 unchanged lines hidden --- | 413 } 414 415 416 traceData = Trace::getInstRecord(curTick, tc, curStaticInst, 417 thread->readPC()); 418 419 DPRINTF(Decode,"Decode: Decoded %s instruction (opcode: 0x%x): 0x%x\n", 420 curStaticInst->getName(), curStaticInst->getOpcode(), --- 83 unchanged lines hidden --- |