summaryrefslogtreecommitdiff
path: root/src/gpgpu-sim/shader.cc
diff options
context:
space:
mode:
authorMahmoud <[email protected]>2019-11-12 18:48:46 -0500
committerMahmoud <[email protected]>2019-11-12 18:48:46 -0500
commita009318f6ffae0c71b5735c3e6b49b5a0bd09029 (patch)
treef5cc5c40d7eadfc32dc735a409756866fbf27ba2 /src/gpgpu-sim/shader.cc
parentab4324b69eb4ec7767706d3fb0db7a27c9670431 (diff)
handling the atomics in trace-driven and add the missing two instructions of Nvbits
Diffstat (limited to 'src/gpgpu-sim/shader.cc')
-rw-r--r--src/gpgpu-sim/shader.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gpgpu-sim/shader.cc b/src/gpgpu-sim/shader.cc
index acf40e5..de33026 100644
--- a/src/gpgpu-sim/shader.cc
+++ b/src/gpgpu-sim/shader.cc
@@ -2311,7 +2311,8 @@ void ldst_unit::writeback()
if( !m_pipeline_reg[0]->empty() ) {
m_next_wb = *m_pipeline_reg[0];
if(m_next_wb.isatomic()) {
- m_next_wb.do_atomic();
+ if(!m_core->get_gpu()->get_config().is_trace_driven_mode())
+ m_next_wb.do_atomic();
m_core->decrement_atomic_count(m_next_wb.warp_id(), m_next_wb.active_count());
}
m_core->dec_inst_in_pipeline(m_pipeline_reg[0]->warp_id());