in search of an error ...
authorGötz Lindenmaier <goetz@ipd.info.uni-karlsruhe.de>
Tue, 11 May 2004 13:08:02 +0000 (13:08 +0000)
committerGötz Lindenmaier <goetz@ipd.info.uni-karlsruhe.de>
Tue, 11 May 2004 13:08:02 +0000 (13:08 +0000)
[r2869]

ir/ana/irscc.c

index 31c6e33..8bce16a 100644 (file)
@@ -591,10 +591,19 @@ static bool is_outermost_Start(ir_node *n) {
 /* Don't walk from nodes to blocks except for Control flow operations. */
 static INLINE int
 get_start_index(ir_node *n) {
-  if (is_cfop(n) || is_fragile_op(n) || intern_get_irn_op(n) == op_Start)
+  /*  if (is_cfop(n) || is_fragile_op(n) || intern_get_irn_op(n) == op_Start)
+      // this should be sufficient.
     return -1;
   else
     return 0;
+  */
+  if (intern_get_irn_op(n) == op_Phi   ||
+      intern_get_irn_op(n) == op_Block ||
+      (intern_get_irn_op(n) == op_Filter && interprocedural_view))
+    // Here we could test for backedge at -1 which is illegal
+    return 0;
+  else
+    return -1;
 }
 #if 0
 /* Returns current_ir_graph and set it to the irg of predecessor index