diff options
| author | JRPan <[email protected]> | 2022-04-11 13:53:17 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-04-11 13:53:17 -0400 |
| commit | 1d39b6f56970b68d12a072065c5bc9c41264afd4 (patch) | |
| tree | e286d8d84087a585f9ef6b929d4ce54c8f676872 /src/gpgpu-sim | |
| parent | cfba96c395779652093cc1ecb2ff2c78f1719323 (diff) | |
| parent | 33ad7c89b43cedc11dd645f2ae0215e6e4531230 (diff) | |
Merge pull request #40 from notseefire/dev
Fixed constant_cycle
Diffstat (limited to 'src/gpgpu-sim')
| -rw-r--r-- | src/gpgpu-sim/shader.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gpgpu-sim/shader.cc b/src/gpgpu-sim/shader.cc index ad9278c..6f68283 100644 --- a/src/gpgpu-sim/shader.cc +++ b/src/gpgpu-sim/shader.cc @@ -2092,10 +2092,11 @@ bool ldst_unit::constant_cycle(warp_inst_t &inst, mem_stage_stall_type &rc_fail, mem_stage_stall_type fail; if (m_config->perfect_inst_const_cache) { fail = NO_RC_FAIL; + unsigned access_count = inst.accessq_count(); while (inst.accessq_count() > 0) inst.accessq_pop_back(); if (inst.is_load()) { for (unsigned r = 0; r < MAX_OUTPUT_VALUES; r++) - if (inst.out[r] > 0) m_pending_writes[inst.warp_id()][inst.out[r]]--; + if (inst.out[r] > 0) m_pending_writes[inst.warp_id()][inst.out[r]] -= access_count; } } else { fail = process_memory_access_queue(m_L1C, inst); |
