/*
* Entfernen von nicht erreichbaren (aufrufbaren) Methoden. Die Menge
- * der nicht erreichbaren Methoden wird aus der Abschätzung der
+ * der nicht erreichbaren Methoden wird aus der Abschätzung der
* Aufrufrelation bestimmt.
*/
#include "config.h"
*/
static void collect_call(ir_node *node, void *env)
{
- ir_node *head = env;
+ ir_node *head = (ir_node*)env;
if (is_Call(node)) {
set_irn_link(node, get_irn_link(head));
for (i = 0; i < n_keep; ++i) {
marked[i] = keep_arr[i];
set_entity_link(marked[i], MARK);
- DB((dbg, LEVEL_1, " method %+F kept alive.\n", marked[i]));
+ DB((dbg, LEVEL_1, " method %+F kept alive.\n", marked[i]));
}
for (i = 0; i < ARR_LEN(marked); ++i) {
irg_walk_graph(irg, firm_clear_link, collect_call, node);
/* iterate calls */
- for (node = get_irn_link(node); node; node = get_irn_link(node)) {
+ for (node = (ir_node*)get_irn_link(node); node != NULL;
+ node = (ir_node*)get_irn_link(node)) {
int i;
assert(is_Call(node));
if (get_entity_link(ent) == MARK)
continue;
- DB((dbg, LEVEL_1, " freeing method %+F\n", ent));
+ DB((dbg, LEVEL_1, " freeing method %+F\n", ent));
remove_irp_irg(irg);
free_entity(ent);