+ set_irn_in(lower_blk, 2, in);
+
+ /* create to Phis */
+ in[0] = new_Const(get_mode_null(h_res_mode));
+ in[1] = new_Const_long(h_res_mode, 0x80000000);
+
+ int_phi = new_r_Phi(lower_blk, 2, in, h_res_mode);
+
+ in[0] = a_f;
+ in[1] = new_rd_Sub(dbg, upper_blk, a_f, flt_corr, flt_mode);
+
+ flt_phi = new_r_Phi(lower_blk, 2, in, flt_mode);
+
+ /* fix Phi links for next part_block() */
+ set_Block_phis(lower_blk, int_phi);
+ set_Phi_next(int_phi, flt_phi);
+ set_Phi_next(flt_phi, NULL);
+
+ float_to_ll = new_bd_ia32_l_FloattoLL(dbg, lower_blk, flt_phi);
+
+ l_res = new_r_Proj(lower_blk, float_to_ll, l_res_mode,
+ pn_ia32_l_FloattoLL_res_low);
+ h_res = new_r_Proj(lower_blk, float_to_ll, h_res_mode,
+ pn_ia32_l_FloattoLL_res_high);
+
+ h_res = new_rd_Add(dbg, lower_blk, h_res, int_phi, h_res_mode);
+
+ /* move the call and its Proj's to the lower block */
+ set_nodes_block(call, lower_blk);
+
+ for (proj = get_irn_link(call); proj != NULL; proj = get_irn_link(proj))
+ set_nodes_block(proj, lower_blk);
+ block = lower_blk;
+ }