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
216f3506
Commit
216f3506
authored
May 06, 2011
by
Andreas Zwinkau
Browse files
Fix ack/t7
Some Bads were not maintained in cfopt
parent
256ef882
Changes
1
Hide whitespace changes
Inline
Side-by-side
ir/opt/cfopt.c
View file @
216f3506
...
...
@@ -371,7 +371,7 @@ static void optimize_blocks(ir_node *b, void *ctx)
pred
=
get_Block_cfgpred_block
(
b
,
i
);
if
(
is_Bad
(
pred
))
{
/* Do nothing */
in
[
q_preds
++
]
=
pred
;
}
else
if
(
is_Block_removable
(
pred
)
&&
!
Block_block_visited
(
pred
))
{
/* It's an empty block and not yet visited. */
for
(
j
=
0
;
j
<
get_Block_n_cfgpreds
(
pred
);
j
++
)
{
...
...
@@ -386,8 +386,7 @@ static void optimize_blocks(ir_node *b, void *ctx)
/* now we are at k, copy the phi predecessors */
pred
=
get_nodes_block
(
get_Block_cfgpred
(
b
,
k
));
for
(
i
=
0
;
i
<
get_Phi_n_preds
(
phi
);
i
++
)
{
if
(
!
is_Bad
(
get_Block_cfgpred
(
pred
,
i
)))
in
[
q_preds
++
]
=
get_Phi_pred
(
phi
,
i
);
in
[
q_preds
++
]
=
get_Phi_pred
(
phi
,
i
);
}
/* and now all the rest */
...
...
@@ -395,7 +394,7 @@ static void optimize_blocks(ir_node *b, void *ctx)
pred
=
get_Block_cfgpred_block
(
b
,
i
);
if
(
is_Bad
(
pred
))
{
/* Do nothing */
in
[
q_preds
++
]
=
pred
;
}
else
if
(
is_Block_removable
(
pred
)
&&
!
Block_block_visited
(
pred
))
{
/* It's an empty block and not yet visited. */
for
(
j
=
0
;
j
<
get_Block_n_cfgpreds
(
pred
);
j
++
)
{
...
...
@@ -428,7 +427,7 @@ static void optimize_blocks(ir_node *b, void *ctx)
ir_node
*
predb
=
get_nodes_block
(
pred
);
ir_graph
*
irg
=
get_irn_irg
(
pred
);
/* case 1:
Do nothing
*/
/* case 1:
Bad predecessor
*/
if
(
is_Bad
(
pred
))
{
in
[
n_preds
++
]
=
new_r_Bad
(
irg
,
mode_X
);
continue
;
...
...
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