summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Rogers <[email protected]>2017-05-09 18:22:21 -0400
committerGitHub <[email protected]>2017-05-09 18:22:21 -0400
commit7000034015bef87796acd72da4face5b227c61cf (patch)
tree843c4853ef7b4f37c845faa1a76ef5dbab03c7f6
parent0b18b586e78ff474e0b1db58c4f605b2b13b3727 (diff)
parenta0de8a0a75f3640e10a27cb91822a11089f22b99 (diff)
Merge pull request #35 from echoedit/dev
Fix next block addr to link predicate ret block to consecutive block
-rw-r--r--src/cuda-sim/ptx_ir.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cuda-sim/ptx_ir.cc b/src/cuda-sim/ptx_ir.cc
index 1805ce9..8ebdcf8 100644
--- a/src/cuda-sim/ptx_ir.cc
+++ b/src/cuda-sim/ptx_ir.cc
@@ -498,7 +498,7 @@ void function_info::connect_basic_blocks( ) //iterate across m_basic_blocks of f
if( pI->has_pred() ) {
printf("GPGPU-Sim PTX: Warning detected predicated return/exit.\n");
// if predicated, add link to next block
- unsigned next_addr = pI->get_m_instr_mem_index() + 1;
+ unsigned next_addr = pI->get_m_instr_mem_index() + pI->inst_size();
if( next_addr < m_instr_mem_size && m_instr_mem[next_addr] ) {
basic_block_t *next_bb = m_instr_mem[next_addr]->get_bb();
(*bb_itr)->successor_ids.insert(next_bb->bb_id);