Commit 2827a56a authored by Matthias Braun's avatar Matthias Braun
Browse files

fix replace_call

[r16989]
parent bc85821a
......@@ -161,9 +161,10 @@ unsigned lower_intrinsics(i_record *list, int length, int part_block_used) {
* @param exc_jmp new exception control flow, if reg_jmp == NULL, a Bad will be used
*/
static void replace_call(ir_node *irn, ir_node *call, ir_node *mem, ir_node *reg_jmp, ir_node *exc_jmp) {
if (reg_jmp == NULL) {
ir_node *block = get_nodes_block(call);
if (reg_jmp == NULL) {
/* Beware: do we need here a protection against CSE? Better we do it. */
int old_cse = get_opt_cse();
set_opt_cse(0);
......@@ -171,7 +172,7 @@ static void replace_call(ir_node *irn, ir_node *call, ir_node *mem, ir_node *reg
set_opt_cse(old_cse);
exc_jmp = new_Bad();
}
irn = new_Tuple(1, &irn);
irn = new_r_Tuple(current_ir_graph, block, 1, &irn);
turn_into_tuple(call, pn_Call_max);
set_Tuple_pred(call, pn_Call_M_regular, mem);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment