snoop_filter.cc (11744:5d33c6972dda) | snoop_filter.cc (11748:55bd32c72867) |
---|---|
1/* 2 * Copyright (c) 2013-2016 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 --- 344 unchanged lines hidden (view full) --- 353 354 DPRINTF(SnoopFilter, "%s: old SF value %x.%x\n", 355 __func__, sf_item.requested, sf_item.holder); 356 357 // Make sure we have seen the actual request, too 358 panic_if(!(sf_item.requested & slave_mask), "SF value %x.%x missing "\ 359 "request bit\n", sf_item.requested, sf_item.holder); 360 | 1/* 2 * Copyright (c) 2013-2016 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 --- 344 unchanged lines hidden (view full) --- 353 354 DPRINTF(SnoopFilter, "%s: old SF value %x.%x\n", 355 __func__, sf_item.requested, sf_item.holder); 356 357 // Make sure we have seen the actual request, too 358 panic_if(!(sf_item.requested & slave_mask), "SF value %x.%x missing "\ 359 "request bit\n", sf_item.requested, sf_item.holder); 360 |
361 // Update the residency of the cache line. If the response has no 362 // sharers we know that the line has been invalidated in all 363 // branches that are not where we are responding to. 364 if (!cpkt->hasSharers()) 365 sf_item.holder = 0; | 361 // Update the residency of the cache line. |
366 sf_item.holder |= slave_mask; 367 sf_item.requested &= ~slave_mask; 368 assert(sf_item.holder | sf_item.requested); 369 DPRINTF(SnoopFilter, "%s: new SF value %x.%x\n", 370 __func__, sf_item.requested, sf_item.holder); 371} 372 373void --- 38 unchanged lines hidden --- | 362 sf_item.holder |= slave_mask; 363 sf_item.requested &= ~slave_mask; 364 assert(sf_item.holder | sf_item.requested); 365 DPRINTF(SnoopFilter, "%s: new SF value %x.%x\n", 366 __func__, sf_item.requested, sf_item.holder); 367} 368 369void --- 38 unchanged lines hidden --- |