From 896e5c9a34e1b1230a67fb714d8290cd6f7f979b Mon Sep 17 00:00:00 2001 From: Tor Aamodt Date: Wed, 18 Jul 2012 13:10:00 -0800 Subject: - print out instructions at branch divergence/reconvergence points (more informative) [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 13399] --- src/cuda-sim/ptx_ir.cc | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/cuda-sim/ptx_ir.cc') diff --git a/src/cuda-sim/ptx_ir.cc b/src/cuda-sim/ptx_ir.cc index 50669b6..102ae40 100644 --- a/src/cuda-sim/ptx_ir.cc +++ b/src/cuda-sim/ptx_ir.cc @@ -783,14 +783,17 @@ void function_info::get_reconvergence_pairs(gpgpu_recon_t* recon_points) fflush(stdout); #endif recon_points[idx].source_pc = m_basic_blocks[i]->ptx_end->get_PC(); + recon_points[idx].source_inst = m_basic_blocks[i]->ptx_end; #ifdef DEBUG_GET_RECONVERG_PAIRS printf("\trecon_points[idx].source_pc=%d\n", recon_points[idx].source_pc); #endif if( m_basic_blocks[m_basic_blocks[i]->immediatepostdominator_id]->ptx_begin ) { recon_points[idx].target_pc = m_basic_blocks[m_basic_blocks[i]->immediatepostdominator_id]->ptx_begin->get_PC(); + recon_points[idx].target_inst = m_basic_blocks[m_basic_blocks[i]->immediatepostdominator_id]->ptx_begin; } else { // reconverge after function return recon_points[idx].target_pc = -2; + recon_points[idx].target_inst = NULL; } #ifdef DEBUG_GET_RECONVERG_PAIRS m_basic_blocks[m_basic_blocks[i]->immediatepostdominator_id]->ptx_begin->print_insn(); -- cgit v1.3