Sequencer.cc (11523:81332eb10367) | Sequencer.cc (11660:cfa97c37117a) |
---|---|
1/* 2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 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; --- 57 unchanged lines hidden (view full) --- 66 m_coreId = p->coreid; // for tracking the two CorePair sequencers 67 assert(m_max_outstanding_requests > 0); 68 assert(m_deadlock_threshold > 0); 69 assert(m_instCache_ptr != NULL); 70 assert(m_dataCache_ptr != NULL); 71 assert(m_data_cache_hit_latency > 0); 72 assert(m_inst_cache_hit_latency > 0); 73 | 1/* 2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 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; --- 57 unchanged lines hidden (view full) --- 66 m_coreId = p->coreid; // for tracking the two CorePair sequencers 67 assert(m_max_outstanding_requests > 0); 68 assert(m_deadlock_threshold > 0); 69 assert(m_instCache_ptr != NULL); 70 assert(m_dataCache_ptr != NULL); 71 assert(m_data_cache_hit_latency > 0); 72 assert(m_inst_cache_hit_latency > 0); 73 |
74 m_usingNetworkTester = p->using_network_tester; | 74 m_runningGarnetStandalone = p->garnet_standalone; |
75} 76 77Sequencer::~Sequencer() 78{ 79} 80 81void 82Sequencer::wakeup() --- 298 unchanged lines hidden (view full) --- 381 (request->m_type == RubyRequestType_Locked_RMW_Read) || 382 (request->m_type == RubyRequestType_Locked_RMW_Write) || 383 (request->m_type == RubyRequestType_FLUSH)); 384 385 // 386 // For Alpha, properly handle LL, SC, and write requests with respect to 387 // locked cache blocks. 388 // | 75} 76 77Sequencer::~Sequencer() 78{ 79} 80 81void 82Sequencer::wakeup() --- 298 unchanged lines hidden (view full) --- 381 (request->m_type == RubyRequestType_Locked_RMW_Read) || 382 (request->m_type == RubyRequestType_Locked_RMW_Write) || 383 (request->m_type == RubyRequestType_FLUSH)); 384 385 // 386 // For Alpha, properly handle LL, SC, and write requests with respect to 387 // locked cache blocks. 388 // |
389 // Not valid for Network_test protocl | 389 // Not valid for Garnet_standalone protocl |
390 // 391 bool success = true; | 390 // 391 bool success = true; |
392 if (!m_usingNetworkTester) | 392 if (!m_runningGarnetStandalone) |
393 success = handleLlsc(address, request); 394 395 // Handle SLICC block_on behavior for Locked_RMW accesses. NOTE: the 396 // address variable here is assumed to be a line address, so when 397 // blocking buffers, must check line addresses. 398 if (request->m_type == RubyRequestType_Locked_RMW_Read) { 399 // blockOnQueue blocks all first-level cache controller queues 400 // waiting on memory accesses for the specified address that go to --- 394 unchanged lines hidden --- | 393 success = handleLlsc(address, request); 394 395 // Handle SLICC block_on behavior for Locked_RMW accesses. NOTE: the 396 // address variable here is assumed to be a line address, so when 397 // blocking buffers, must check line addresses. 398 if (request->m_type == RubyRequestType_Locked_RMW_Read) { 399 // blockOnQueue blocks all first-level cache controller queues 400 // waiting on memory accesses for the specified address that go to --- 394 unchanged lines hidden --- |