set_cur_block(block);
return block;
}
+
+void enter_immature_jump_target(jump_target *const tgt)
+{
+ ir_node *jmp;
+ ir_node *block = tgt->block;
+ if (!block) {
+ /* Avoid unreachable loops by adding a Bad entry. */
+ jmp = new_Bad(mode_X);
+ goto new_block;
+ } else if (tgt->first) {
+ tgt->first = false;
+ jmp = new_r_Jmp(block);
+new_block:
+ tgt->block = block = new_immBlock();
+ add_immBlock_pred(block, jmp);
+ }
+ set_cur_block(block);
+}