rename_impl.hh (2674:6d4afef73a20) rename_impl.hh (2698:d5f35d41e017)
1/*
2 * Copyright (c) 2004-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;

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

322 DPRINTF(Rename, "[tid:%u]: Squashing instructions.\n",tid);
323
324 // Clear the stall signal if rename was blocked or unblocking before.
325 // If it still needs to block, the blocking should happen the next
326 // cycle and there should be space to hold everything due to the squash.
327 if (renameStatus[tid] == Blocked ||
328 renameStatus[tid] == Unblocking ||
329 renameStatus[tid] == SerializeStall) {
1/*
2 * Copyright (c) 2004-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;

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

322 DPRINTF(Rename, "[tid:%u]: Squashing instructions.\n",tid);
323
324 // Clear the stall signal if rename was blocked or unblocking before.
325 // If it still needs to block, the blocking should happen the next
326 // cycle and there should be space to hold everything due to the squash.
327 if (renameStatus[tid] == Blocked ||
328 renameStatus[tid] == Unblocking ||
329 renameStatus[tid] == SerializeStall) {
330#if 0
331 // In syscall emulation, we can have both a block and a squash due
332 // to a syscall in the same cycle. This would cause both signals to
333 // be high. This shouldn't happen in full system.
334 if (toDecode->renameBlock[tid]) {
335 toDecode->renameBlock[tid] = 0;
336 } else {
337 toDecode->renameUnblock[tid] = 1;
338 }
339#else
330
340 toDecode->renameUnblock[tid] = 1;
331 toDecode->renameUnblock[tid] = 1;
341#endif
332
342 serializeInst[tid] = NULL;
343 }
344
345 // Set the status to Squashing.
346 renameStatus[tid] = Squashing;
347
348 // Squash any instructions from decode.
349 unsigned squashCount = 0;

--- 934 unchanged lines hidden ---
333 serializeInst[tid] = NULL;
334 }
335
336 // Set the status to Squashing.
337 renameStatus[tid] = Squashing;
338
339 // Squash any instructions from decode.
340 unsigned squashCount = 0;

--- 934 unchanged lines hidden ---