InvalidateGenerator.cc (10566:c99c8d2a7c31) | InvalidateGenerator.cc (11320:42ecb523c64a) |
---|---|
1/* 2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 3 * Copyright (c) 2009-2010 Advanced Micro Devices, Inc. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are 8 * met: redistributions of source code must retain the above copyright --- 84 unchanged lines hidden (view full) --- 93 delete pkt->req; 94 delete pkt; 95 96 DPRINTF(DirectedTest, "failed to issue request - sequencer not ready\n"); 97 return false; 98 } 99} 100 | 1/* 2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood 3 * Copyright (c) 2009-2010 Advanced Micro Devices, Inc. 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions are 8 * met: redistributions of source code must retain the above copyright --- 84 unchanged lines hidden (view full) --- 93 delete pkt->req; 94 delete pkt; 95 96 DPRINTF(DirectedTest, "failed to issue request - sequencer not ready\n"); 97 return false; 98 } 99} 100 |
101void | 101void |
102InvalidateGenerator::performCallback(uint32_t proc, Addr address) 103{ | 102InvalidateGenerator::performCallback(uint32_t proc, Addr address) 103{ |
104 assert(m_address == address); | 104 assert(m_address == address); |
105 106 if (m_status == InvalidateGeneratorStatus_Load_Pending) { 107 assert(m_active_read_node == proc); 108 m_active_read_node++; 109 // 110 // Once all cpus have the block in S state, issue the invalidate 111 // 112 if (m_active_read_node == m_num_cpus) { --- 10 unchanged lines hidden (view full) --- 123 m_active_inv_node = 0; 124 } 125 // 126 // Invalidate completed, send that info to the tester and restart 127 // the cycle 128 // 129 m_directed_tester->incrementCycleCompletions(); 130 m_status = InvalidateGeneratorStatus_Load_Waiting; | 105 106 if (m_status == InvalidateGeneratorStatus_Load_Pending) { 107 assert(m_active_read_node == proc); 108 m_active_read_node++; 109 // 110 // Once all cpus have the block in S state, issue the invalidate 111 // 112 if (m_active_read_node == m_num_cpus) { --- 10 unchanged lines hidden (view full) --- 123 m_active_inv_node = 0; 124 } 125 // 126 // Invalidate completed, send that info to the tester and restart 127 // the cycle 128 // 129 m_directed_tester->incrementCycleCompletions(); 130 m_status = InvalidateGeneratorStatus_Load_Waiting; |
131 } 132 | 131 } 132 |
133} 134 135InvalidateGenerator * 136InvalidateGeneratorParams::create() 137{ 138 return new InvalidateGenerator(this); 139} | 133} 134 135InvalidateGenerator * 136InvalidateGeneratorParams::create() 137{ 138 return new InvalidateGenerator(this); 139} |