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 ---