Sequencer.cc (8165:5955406f7ed0) | Sequencer.cc (8171:19444b1f092c) |
---|---|
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; --- 63 unchanged lines hidden (view full) --- 72 m_dataCache_ptr = p->dcache; 73 m_max_outstanding_requests = p->max_outstanding_requests; 74 m_deadlock_threshold = p->deadlock_threshold; 75 76 assert(m_max_outstanding_requests > 0); 77 assert(m_deadlock_threshold > 0); 78 assert(m_instCache_ptr != NULL); 79 assert(m_dataCache_ptr != NULL); | 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; --- 63 unchanged lines hidden (view full) --- 72 m_dataCache_ptr = p->dcache; 73 m_max_outstanding_requests = p->max_outstanding_requests; 74 m_deadlock_threshold = p->deadlock_threshold; 75 76 assert(m_max_outstanding_requests > 0); 77 assert(m_deadlock_threshold > 0); 78 assert(m_instCache_ptr != NULL); 79 assert(m_dataCache_ptr != NULL); |
80 81 m_usingNetworkTester = p->using_network_tester; |
|
80} 81 82Sequencer::~Sequencer() 83{ 84} 85 86void 87Sequencer::wakeup() --- 297 unchanged lines hidden (view full) --- 385 (request->ruby_request.type == RubyRequestType_Store_Conditional) || 386 (request->ruby_request.type == RubyRequestType_Locked_RMW_Read) || 387 (request->ruby_request.type == RubyRequestType_Locked_RMW_Write)); 388 389 // 390 // For Alpha, properly handle LL, SC, and write requests with respect to 391 // locked cache blocks. 392 // | 82} 83 84Sequencer::~Sequencer() 85{ 86} 87 88void 89Sequencer::wakeup() --- 297 unchanged lines hidden (view full) --- 387 (request->ruby_request.type == RubyRequestType_Store_Conditional) || 388 (request->ruby_request.type == RubyRequestType_Locked_RMW_Read) || 389 (request->ruby_request.type == RubyRequestType_Locked_RMW_Write)); 390 391 // 392 // For Alpha, properly handle LL, SC, and write requests with respect to 393 // locked cache blocks. 394 // |
393 bool success = handleLlsc(address, request); | 395 // Not valid for Network_test protocl 396 // 397 bool success = true; 398 if(!m_usingNetworkTester) 399 success = handleLlsc(address, request); |
394 395 if (request->ruby_request.type == RubyRequestType_Locked_RMW_Read) { 396 m_controller->blockOnQueue(address, m_mandatory_q_ptr); 397 } else if (request->ruby_request.type == RubyRequestType_Locked_RMW_Write) { 398 m_controller->unblock(address); 399 } 400 401 hitCallback(request, mach, data, success, --- 332 unchanged lines hidden --- | 400 401 if (request->ruby_request.type == RubyRequestType_Locked_RMW_Read) { 402 m_controller->blockOnQueue(address, m_mandatory_q_ptr); 403 } else if (request->ruby_request.type == RubyRequestType_Locked_RMW_Write) { 404 m_controller->unblock(address); 405 } 406 407 hitCallback(request, mach, data, success, --- 332 unchanged lines hidden --- |