Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Zwinkau
libfirm
Commits
ed82856b
Commit
ed82856b
authored
Nov 07, 2011
by
Matthias Braun
Browse files
only add new X nodes as tuple preds if CopyB throws an exception
parent
7a82f315
Changes
1
Hide whitespace changes
Inline
Side-by-side
ir/lower/lower_calls.c
View file @
ed82856b
...
...
@@ -557,10 +557,15 @@ static void add_hidden_param(ir_graph *irg, size_t n_com, ir_node **ins,
ins
[
idx
]
=
get_CopyB_dst
(
p
);
/* get rid of the CopyB */
turn_into_tuple
(
p
,
pn_CopyB_max
+
1
);
set_Tuple_pred
(
p
,
pn_CopyB_M
,
mem
);
set_Tuple_pred
(
p
,
pn_CopyB_X_regular
,
new_r_Jmp
(
block
));
set_Tuple_pred
(
p
,
pn_CopyB_X_except
,
new_r_Bad
(
irg
,
mode_X
));
if
(
ir_throws_exception
(
p
))
{
turn_into_tuple
(
p
,
pn_CopyB_max
+
1
);
set_Tuple_pred
(
p
,
pn_CopyB_M
,
mem
);
set_Tuple_pred
(
p
,
pn_CopyB_X_regular
,
new_r_Jmp
(
block
));
set_Tuple_pred
(
p
,
pn_CopyB_X_except
,
new_r_Bad
(
irg
,
mode_X
));
}
else
{
turn_into_tuple
(
p
,
pn_CopyB_M
+
1
);
set_Tuple_pred
(
p
,
pn_CopyB_M
,
mem
);
}
++
n_args
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment