/**
* Reroute edges from the pn_Call_T_result proj of a call.
*
- * @param proj the pn_Call_T_result Proj
- * @param l_res the lower 32 bit result
- * @param h_res the upper 32 bit result or NULL
+ * @param resproj the pn_Call_T_result Proj
+ * @param l_res the lower 32 bit result
+ * @param h_res the upper 32 bit result or NULL
*/
-static void reroute_result(ir_node *proj, ir_node *l_res, ir_node *h_res)
+static void reroute_result(ir_node *resproj, ir_node *l_res, ir_node *h_res)
{
const ir_edge_t *edge, *next;
- foreach_out_edge_safe(proj, edge, next) {
+ foreach_out_edge_safe(resproj, edge, next) {
ir_node *proj = get_edge_src_irn(edge);
long pn = get_Proj_proj(proj);
res = new_r_Tuple(block, 2, in);
}
- turn_into_tuple(call, pn_Call_max);
/*
* Beware:
* We do not check here if this call really has exception and regular Proj's.
jmp = new_r_Jmp(block);
set_opt_cse(old_cse);
+ turn_into_tuple(call, pn_Call_max+1);
set_Tuple_pred(call, pn_Call_M, nomem);
set_Tuple_pred(call, pn_Call_X_regular, jmp);
set_Tuple_pred(call, pn_Call_X_except, new_r_Bad(irg, mode_X));
h_res = new_r_Proj(float_to_ll, h_res_mode,
pn_ia32_l_FloattoLL_res_high);
} else {
- /* convert from float to signed 64bit */
+ /* Convert from float to unsigned 64bit. */
ir_mode *flt_mode = get_irn_mode(a_f);
ir_tarval *flt_tv = new_tarval_from_str("9223372036854775808", 19, flt_mode);
ir_node *flt_corr = new_r_Const(irg, flt_tv);