| ... | @@ -10225,6 +10225,7 @@ static void ir_finish_bb(IrAnalyze *ira) { | ... | @@ -10225,6 +10225,7 @@ static void ir_finish_bb(IrAnalyze *ira) { |
| 10225 | ira->instruction_index += 1; | 10225 | ira->instruction_index += 1; |
| 10226 | } | 10226 | } |
| 10227 | | 10227 | |
| | 10228 | size_t my_old_bb_index = ira->old_bb_index; |
| 10228 | ira->old_bb_index += 1; | 10229 | ira->old_bb_index += 1; |
| 10229 | | 10230 | |
| 10230 | bool need_repeat = true; | 10231 | bool need_repeat = true; |
| ... | @@ -10235,7 +10236,7 @@ static void ir_finish_bb(IrAnalyze *ira) { | ... | @@ -10235,7 +10236,7 @@ static void ir_finish_bb(IrAnalyze *ira) { |
| 10235 | ira->old_bb_index += 1; | 10236 | ira->old_bb_index += 1; |
| 10236 | continue; | 10237 | continue; |
| 10237 | } | 10238 | } |
| 10238 | if (old_bb->other->instruction_list.length != 0) { | 10239 | if (old_bb->other->instruction_list.length != 0 || ira->old_bb_index == my_old_bb_index) { |
| 10239 | ira->old_bb_index += 1; | 10240 | ira->old_bb_index += 1; |
| 10240 | continue; | 10241 | continue; |
| 10241 | } | 10242 | } |