base.cc (4572:5499df089a6c) base.cc (4593:16b19397172c)
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;

--- 365 unchanged lines hidden (view full) ---

374 if (!curMacroStaticInst) {
375
376 StaticInstPtr instPtr = NULL;
377
378 //Predecode, ie bundle up an ExtMachInst
379 //This should go away once the constructor can be set up properly
380 predecoder.setTC(thread->getTC());
381 //If more fetch data is needed, pass it in.
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;

--- 365 unchanged lines hidden (view full) ---

374 if (!curMacroStaticInst) {
375
376 StaticInstPtr instPtr = NULL;
377
378 //Predecode, ie bundle up an ExtMachInst
379 //This should go away once the constructor can be set up properly
380 predecoder.setTC(thread->getTC());
381 //If more fetch data is needed, pass it in.
382 if(predecoder.needMoreBytes())
383 predecoder.moreBytes(thread->readPC(),
384 (thread->readPC() & PCMask) + fetchOffset, 0, inst);
385 else
386 predecoder.process();
382 Addr fetchPC = (thread->readPC() & PCMask) + fetchOffset;
383 //if(predecoder.needMoreBytes())
384 predecoder.moreBytes(thread->readPC(), fetchPC, inst);
385 //else
386 // predecoder.process();
387
388 //If an instruction is ready, decode it. Otherwise, we'll have to
389 //fetch beyond the MachInst at the current pc.
390 if (predecoder.extMachInstReady()) {
391#if THE_ISA == X86_ISA
392 thread->setNextPC(thread->readPC() + predecoder.getInstSize());
393#endif // X86_ISA
394 stayAtPC = false;

--- 118 unchanged lines hidden ---
387
388 //If an instruction is ready, decode it. Otherwise, we'll have to
389 //fetch beyond the MachInst at the current pc.
390 if (predecoder.extMachInstReady()) {
391#if THE_ISA == X86_ISA
392 thread->setNextPC(thread->readPC() + predecoder.getInstSize());
393#endif // X86_ISA
394 stayAtPC = false;

--- 118 unchanged lines hidden ---