mshr_queue.hh (11197:f8fdd931e674) | mshr_queue.hh (11278:18411ccc4f3c) |
---|---|
1/* 2 * Copyright (c) 2012-2013, 2015 ARM Limited 3 * All rights reserved. 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 156 unchanged lines hidden (view full) --- 165 * Removes the given MSHR from the queue. This places the MSHR on the 166 * free list. 167 * @param mshr 168 */ 169 void deallocate(MSHR *mshr); 170 171 /** 172 * Remove a MSHR from the queue. Returns an iterator into the | 1/* 2 * Copyright (c) 2012-2013, 2015 ARM Limited 3 * All rights reserved. 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 156 unchanged lines hidden (view full) --- 165 * Removes the given MSHR from the queue. This places the MSHR on the 166 * free list. 167 * @param mshr 168 */ 169 void deallocate(MSHR *mshr); 170 171 /** 172 * Remove a MSHR from the queue. Returns an iterator into the |
173 * allocatedList for faster squash implementation. | 173 * allocatedList. |
174 * @param mshr The MSHR to remove. 175 * @return An iterator to the next entry in the allocatedList. 176 */ 177 MSHR::Iterator deallocateOne(MSHR *mshr); 178 179 /** 180 * Moves the MSHR to the front of the pending list if it is not 181 * in service. --- 13 unchanged lines hidden (view full) --- 195 196 /** 197 * Mark an in service entry as pending, used to resend a request. 198 * @param mshr The MSHR to resend. 199 */ 200 void markPending(MSHR *mshr); 201 202 /** | 174 * @param mshr The MSHR to remove. 175 * @return An iterator to the next entry in the allocatedList. 176 */ 177 MSHR::Iterator deallocateOne(MSHR *mshr); 178 179 /** 180 * Moves the MSHR to the front of the pending list if it is not 181 * in service. --- 13 unchanged lines hidden (view full) --- 195 196 /** 197 * Mark an in service entry as pending, used to resend a request. 198 * @param mshr The MSHR to resend. 199 */ 200 void markPending(MSHR *mshr); 201 202 /** |
203 * Squash outstanding requests with the given thread number. If a request 204 * is in service, just squashes the targets. 205 * @param threadNum The thread to squash. 206 */ 207 void squash(int threadNum); 208 209 /** | |
210 * Deallocate top target, possibly freeing the MSHR 211 * @return if MSHR queue is no longer full 212 */ 213 bool forceDeallocateTarget(MSHR *mshr); 214 215 /** 216 * Returns true if the pending list is not empty. 217 * @return True if there are outstanding requests. --- 45 unchanged lines hidden --- | 203 * Deallocate top target, possibly freeing the MSHR 204 * @return if MSHR queue is no longer full 205 */ 206 bool forceDeallocateTarget(MSHR *mshr); 207 208 /** 209 * Returns true if the pending list is not empty. 210 * @return True if there are outstanding requests. --- 45 unchanged lines hidden --- |