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
1dcab6ba
Commit
1dcab6ba
authored
Mar 09, 2014
by
Matthias Braun
Browse files
ldstopt: remove exception removal case: localopts already do that
parent
b471f7f2
Changes
1
Hide whitespace changes
Inline
Side-by-side
ir/opt/ldstopt.c
View file @
1dcab6ba
...
...
@@ -822,28 +822,6 @@ static changes_t optimize_load(ir_node *load)
return
res
|
DF_CHANGED
;
}
/* check if we can determine the entity that will be loaded */
ir_entity
*
ent
=
find_constant_entity
(
ptr
);
if
(
ent
!=
NULL
&&
get_entity_visibility
(
ent
)
!=
ir_visibility_external
)
{
/* a static allocation that is not external: there should be NO
* exception when loading even if we cannot replace the load itself.
*/
/* no exception, clear the info field as it might be checked later again */
if
(
info
->
projs
[
pn_Load_X_except
])
{
ir_graph
*
irg
=
get_irn_irg
(
load
);
exchange
(
info
->
projs
[
pn_Load_X_except
],
new_r_Bad
(
irg
,
mode_X
));
info
->
projs
[
pn_Load_X_except
]
=
NULL
;
res
|=
CF_CHANGED
;
}
if
(
info
->
projs
[
pn_Load_X_regular
])
{
exchange
(
info
->
projs
[
pn_Load_X_regular
],
new_r_Jmp
(
get_nodes_block
(
load
)));
info
->
projs
[
pn_Load_X_regular
]
=
NULL
;
res
|=
CF_CHANGED
;
}
}
/* Check, if the address of this load is used more than once.
* If not, more load cannot be removed in any case. */
long
dummy
;
...
...
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