- int *change = (int*) env;
- ir_opcode op = get_irn_opcode (node);
-
- if (iro_Call == op) { /* CALL */
- ir_entity *ent = NULL;
-
- ir_node *ptr = get_Call_ptr (node);
-
- /* CALL SEL */
- if (iro_Sel == get_irn_opcode (ptr)) {
- ent = get_Sel_entity (ptr);
- *change |= add_implementing_graphs (ent);
-
- /* CALL SYMCONST */
- } else if (iro_SymConst == get_irn_opcode (ptr)) {
- if (get_SymConst_kind(ptr) == symconst_addr_ent) {
- ir_graph *graph;
-
- ent = get_SymConst_entity (ptr);
- graph = get_entity_irg (ent);
- if (graph) {
- *change |= add_graph (graph);
- } else {
- /* it's an external allocated thing. */
- }
- } else if (get_SymConst_kind(ptr) == symconst_addr_name) {
- /* Entities of kind addr_name may not be allocated in this compilation unit.
- If so, the frontend built faulty Firm. So just ignore. */
- /* if (get_SymConst_name(ptr) != new_id_from_str("iro_Catch"))
- assert (ent && "couldn't determine entity of call to SymConst of kind addr_name."); */
- } else {
- /* other symconst. */
- assert(0 && "This SymConst can not be an address for a method call.");
- }
-
- /* STRANGE */
- } else {
- assert(0 && "Unexpected address expression: can not analyse, therefore can not do correct rta!");
- }
-
- } else if (iro_Alloc == op) { /* ALLOC */
- ir_type *type = get_Alloc_type (node);
-
- *change |= add_class (type);
- }
+ int *change = (int *)env;
+ ir_opcode op = get_irn_opcode(node);
+
+ if (iro_Call == op) { /* CALL */
+ ir_entity *ent = NULL;
+
+ ir_node *ptr = get_Call_ptr(node);
+
+ /* CALL SEL */
+ if (iro_Sel == get_irn_opcode(ptr)) {
+ ent = get_Sel_entity(ptr);
+ *change |= add_implementing_graphs(ent);
+
+ /* CALL SYMCONST */
+ } else if (iro_SymConst == get_irn_opcode(ptr)) {
+ if (get_SymConst_kind(ptr) == symconst_addr_ent) {
+ ir_graph *graph;
+
+ ent = get_SymConst_entity(ptr);
+ graph = get_entity_irg(ent);
+ if (graph) {
+ *change |= add_graph(graph);
+ } else {
+ /* it's an external allocated thing. */
+ }
+ } else {
+ /* other symconst. */
+ panic("This SymConst can not be an address for a method call.");
+ }
+
+ /* STRANGE */
+ } else {
+ panic("Unexpected address expression: can not analyse, therefore can not do correct rta!");
+ }
+ } else if (iro_Alloc == op) { /* ALLOC */
+ ir_type *type = get_Alloc_type(node);
+
+ *change |= add_class(type);
+ }