normalized output
authorGötz Lindenmaier <goetz@ipd.info.uni-karlsruhe.de>
Thu, 13 Nov 2003 16:00:12 +0000 (16:00 +0000)
committerGötz Lindenmaier <goetz@ipd.info.uni-karlsruhe.de>
Thu, 13 Nov 2003 16:00:12 +0000 (16:00 +0000)
[r2038]

23 files changed:
testprograms/Makefile.in
testprograms/const_ent_example.c
testprograms/float_example.c
testprograms/if_else_example.c
testprograms/oo_inline_example.c
testprograms/oo_program_example.c
testprograms/ref-results/All_types.vcg
testprograms/ref-results/FLOAT_EXAMPLE_main.vcg [new file with mode: 0644]
testprograms/ref-results/OO_INLINE_EXAMPLE_main-all.vcg
testprograms/ref-results/OO_INLINE_EXAMPLE_main.vcg
testprograms/ref-results/PRIMA_INLINE_c-all.vcg [new file with mode: 0644]
testprograms/ref-results/PRIMA_INLINE_c.vcg [new file with mode: 0644]
testprograms/ref-results/PRIMA_INLINE_set_a-all.vcg [new file with mode: 0644]
testprograms/ref-results/PRIMA_INLINE_set_a.vcg [new file with mode: 0644]
testprograms/ref-results/PRIMA_c-all.vcg
testprograms/ref-results/PRIMA_c.vcg [new file with mode: 0644]
testprograms/ref-results/PRIMA_set_a-all.vcg
testprograms/ref-results/PRIMA_set_a.vcg [new file with mode: 0644]
testprograms/ref-results/c.vcg [deleted file]
testprograms/ref-results/run-result.txt
testprograms/ref-results/set_a.vcg [deleted file]
testprograms/run-results.txt [deleted file]
testprograms/three_cfpred_example.c

index cb607a7..d314671 100644 (file)
@@ -19,14 +19,31 @@ subdir := testprograms
 DIFF ?= diff -c0
 REF_DIR = $(srcdir)/ref-results
 
-SOURCES := Makefile.in \
-       array-heap_example.c   empty.c                irr_cf_example.c          \
-       array-stack_example.c  global_var_example.c   irr_loop_example.c        \
-       call_str_example.c     if_else_example.c      memory_example.c          \
-       cond_example.c         if_example.c           oo_program_example.c      \
-       const_eval_example.c   if_while_example.c     three_cfpred_example.c    \
-       dead_block_example.c   inheritance_example.c  while_example.c           \
-       endless_loop.c         global_cse.c           oo_inline_example.c
+SOURCES := Makefile.in                 \
+       array-heap_example.c    \
+       array-stack_example.c   \
+       call_str_example.c      \
+       cond_example.c          \
+       const_ent_example.c     \
+       const_eval_example.c    \
+       dead_block_example.c    \
+       empty.c                 \
+       endless_loop.c          \
+       float_example.c         \
+       global_cse.c            \
+       global_var_example.c    \
+       if_else_example.c       \
+       if_example.c            \
+       if_while_example.c      \
+       inheritance_example.c   \
+       irr_cf_example.c        \
+       irr_loop_example.c      \
+       memory_example.c        \
+       oo_inline_example.c     \
+       oo_program_example.c    \
+       three_cfpred_example.c  \
+       while_example.c         \
+       run-results.txt
 
 GENFILES = %.vcg results.txt
 
index 49be436..6e003fc 100644 (file)
@@ -44,7 +44,7 @@ int main(int argc, char **argv)
 {
   ident *Ci, *ai, *fi, *fti, *gi, *gti, *inti, *dipti, *diptpi, *diptpei, *diptei;
       /* suffix i names identifiers */
-  type  *Ct, *intt, *at, *ft, *gt, *diptt, *diptpt;
+  type  *Ct, *intt, *ft, *gt, *diptt, *diptpt;
       /*        t names types       */
   entity *ae, *fe, *ge, *dipte, *diptpe;   /*        e names entities    */
   ir_node *n;
@@ -94,16 +94,12 @@ int main(int argc, char **argv)
   current_ir_graph = get_const_code_irg();
   /* The pointer to the dispatch table is constant. */
   /* The constant is the address of the given entity */
-<<<<<<< const_ent_example.c
   n = new_Const(mode_P, new_tarval_from_entity(dipte, mode_P));
-=======
-  n = new_Const(mode_P, tarval_P_from_entity(dipte));
->>>>>>> 1.7
-  set_entity_variability(diptpe, constant);
+  set_entity_variability(diptpe, variability_constant);
   set_atomic_ent_value(diptpe, n);
 
   /* The entity representing the dispatch table is constant, too. */
-  set_entity_variability(dipte, constant);
+  set_entity_variability(dipte, variability_constant);
   add_compound_ent_value(dipte, get_atomic_ent_value(fe), fe);
   add_compound_ent_value(dipte, get_atomic_ent_value(ge), ge);
 
@@ -125,7 +121,7 @@ int main(int argc, char **argv)
 
   /** The constant array entity **/
   arre = new_entity(get_glob_type(), arrei, arrt);
-  set_entity_variability(arre, constant);
+  set_entity_variability(arre, variability_constant);
   current_ir_graph = get_const_code_irg();
   n = new_Const(mode_Is, new_tarval_from_long (7, mode_Is));
   add_compound_ent_value(arre, n, arrelte);
index 4a6b9dd..395161b 100644 (file)
@@ -39,7 +39,7 @@ int main(int argc, char **argv)
   ir_node  *x;          /* to build control flow */
   tarval *tv;
 
-  printf("\nCreating an IR graph: EMPTY...\n");
+  printf("\nCreating an IR graph: FLOAT EXAMPLE...\n");
 
   /* init library */
   init_firm (NULL);
@@ -53,7 +53,7 @@ int main(int argc, char **argv)
    */
   owner = get_glob_type();
 
-#define METHODNAME "main"
+#define METHODNAME "FLOAT_EXAMPLE_main"
 #define NRARGS 0
 #define NRES 1
   /* The type of the method */
index ea0d2e6..686d9a3 100644 (file)
@@ -46,7 +46,7 @@ int main(int argc, char **argv)
   entity   *ent;       /* represents this method as entity of owner */
   ir_node  *x, *x_then, *x_else, *c0, *c1, *c2, *cmpGt, *f, *t, *b;
 
-  printf("\ncreating an IR graph: IF_ELSE_EXAMPLE...\n");
+  printf("\nCreating an IR graph: IF_ELSE_EXAMPLE...\n");
 
   /* init library */
   init_firm (NULL);
@@ -136,7 +136,7 @@ int main(int argc, char **argv)
 
   finalize_cons (irg);
 
-  printf("\nOptimizing ...\n");
+  printf("Optimizing ...\n");
   local_optimize_graph(irg);
   dead_node_elimination(irg);
 
index b6f142f..d88c8c2 100644 (file)
@@ -72,7 +72,7 @@ main(void)
 
   /*** Make type information for the class (PRIMA). ***/
   /* The type of the class */
-  class_prima = new_type_class(id_from_str ("PRIMA_INLINE", 5));
+  class_prima = new_type_class(new_id_from_str ("PRIMA_INLINE"));
   /* We need type information for pointers to the class: */
   class_p_ptr = new_type_pointer (id_from_str ("class_prima_ptr", 15),
                                  class_prima);
@@ -283,7 +283,7 @@ main(void)
   current_ir_graph = main_irg;
   printf("Inlining set_a ...\n");
   inline_method(set_a_call, set_a_irg);
-  printf("INLINEing c ...\n");
+  printf("Inlineing c ...\n");
   inline_method(c_call, c_irg);
 
   printf("Optimizing ...\n");
@@ -294,6 +294,9 @@ main(void)
   }
 
   printf("Dumping graphs of all procedures and a type graph.\n");
+  /* Touch ld names to distinguish names from oo_inline names. */
+  get_entity_ld_ident(proc_set_a_e);
+  get_entity_ld_ident(proc_c_e);
   turn_off_edge_labels();
   dump_all_ir_graphs(dump_ir_block_graph);
   dump_all_ir_graphs(dump_ir_block_graph_w_types);
index ab3a4cc..8b7fed3 100644 (file)
@@ -244,6 +244,9 @@ main(void)
   }
 
   printf("Dumping graphs of all procedures and a type graph.\n");
+  /* Touch ld names to distinguish names from oo_inline names. */
+  get_entity_ld_ident(proc_set_a_e);
+  get_entity_ld_ident(proc_c_e);
   dump_all_ir_graphs(dump_ir_block_graph);
   dump_all_ir_graphs(dump_ir_block_graph_w_types);
   dump_all_types();
index 3d4b23f..d47eeac 100644 (file)
@@ -21,106 +21,37 @@ node: {title: "t12" label: "primitive int" info1: "state: layout_fixed,
 mode: Is,
 size: 4B,
 "}
-node: {title: "t13" label: "class PRIMA" info1: "state: layout_undefined
-size: -1B,
-" color: green}
-edge: { sourcename: "t13" targetname: "e15"class: 12 label: "member" color:blue}
-edge: { sourcename: "t13" targetname: "e18"class: 12 label: "member" color:blue}
-edge: { sourcename: "t13" targetname: "e21"class: 12 label: "member" color:blue}
-node: {title: "e15" label: "ent a" color: yellow
- info1: "
-id: e15
-allocation:  allocation_automatic
-visibility:  visibility_local
-variability: variability_uninitialized
-volatility:  volatility_non_volatile
-peculiarity: peculiarity_existent
-name:    a
-ld_name: PRIMA_a
-offset:  -1"
-}
-edge: { sourcename: "e15" targetname: "t12"class: 3 label: "type" color: red}
-node: {title: "e18" label: "ent set_a" color: yellow
- info1: "
-id: e18
-allocation:  allocation_static
-visibility:  visibility_local
-variability: variability_constant
-volatility:  volatility_non_volatile
-peculiarity: peculiarity_existent
-name:    set_a
-ld_name: PRIMA_set_a
-offset:  -1
-irg = g71"
-}
-edge: { sourcename: "e18" targetname: "t16"class: 3 label: "type" color: red}
-edge: { sourcename: "e18" targetname: "n17"label: "value 0"}
-node: {title: "n17" label: "&(PRIMA_set_a)P  17" color: yellow info1: "visited: 4
-Const of type type_unknown
-"}
-node: {title: "n4" label: "Bad  4"  info1: "visited: 4
-"}
-node: {title: "t16" label: "method set_a" info1: "state: layout_fixed,
-mode: P,
-size: 4B,
-"}
-edge: { sourcename: "t16" targetname: "t14"class: 5 label: "param 0" color: green}
-edge: { sourcename: "t16" targetname: "t12"class: 5 label: "param 1" color: green}
-node: {title: "t14" label: "pointer class_prima_ptr" info1: "state: layout_fixed,
+node: {title: "t13" label: "method main_tp" info1: "state: layout_fixed,
 mode: P,
 size: 4B,
 "}
-edge: { sourcename: "t14" targetname: "t13"class: 9 label: "points to" color:green}
-node: {title: "e21" label: "ent c" color: yellow
+edge: { sourcename: "t13" targetname: "t12"class: 5 label: "param 0" color: green}
+edge: { sourcename: "t13" targetname: "t12"class: 6 label: "res 0" color: green}
+node: {title: "t14" label: "class WHILE_EXAMPLE" info1: "state: layout_undefined
+size: -1B,
+" color: green}
+edge: { sourcename: "t14" targetname: "e16"class: 12 label: "member" color:blue}
+node: {title: "e16" label: "ent main" color: yellow
  info1: "
-id: e21
+id: e16
 allocation:  allocation_static
 visibility:  visibility_local
 variability: variability_constant
 volatility:  volatility_non_volatile
 peculiarity: peculiarity_existent
-name:    c
-ld_name: PRIMA_c
+name:    main
+ld_name: WHILE_EXAMPLE_main
 offset:  -1
-irg = g94"
+irg = g29"
 }
-edge: { sourcename: "e21" targetname: "t19"class: 3 label: "type" color: red}
-edge: { sourcename: "e21" targetname: "n20"label: "value 0"}
-node: {title: "n20" label: "&(PRIMA_c)P  20" color: yellow info1: "visited: 4
+edge: { sourcename: "e16" targetname: "t13"class: 3 label: "type" color: red}
+edge: { sourcename: "e16" targetname: "n15"label: "value 0"}
+node: {title: "n15" label: "&(WHILE_EXAMPLE_main)P  15" color: yellow info1: "visited: 1
 Const of type type_unknown
 "}
-node: {title: "t19" label: "method c" info1: "state: layout_fixed,
-mode: P,
-size: 4B,
-"}
-edge: { sourcename: "t19" targetname: "t14"class: 5 label: "param 0" color: green}
-edge: { sourcename: "t19" targetname: "t12"class: 5 label: "param 1" color: green}
-edge: { sourcename: "t19" targetname: "t12"class: 6 label: "res 0" color: green}
-node: {title: "t22" label: "method OO_INLINE_EXAMPLE_main" info1: "state: layout_fixed,
-mode: P,
-size: 4B,
+node: {title: "n4" label: "Bad  4"  info1: "visited: 1
 "}
-edge: { sourcename: "t22" targetname: "t12"class: 6 label: "res 0" color: green}
 node: {title: "t0" label: "class GlobalType" info1: "state: layout_undefined
 size: -1B,
 " color: green}
-edge: { sourcename: "t0" targetname: "e24"class: 12 label: "member" color:blue}
-node: {title: "e24" label: "ent OO_INLINE_EXAMPLE_main" color: yellow
- info1: "
-id: e24
-allocation:  allocation_static
-visibility:  visibility_local
-variability: variability_constant
-volatility:  volatility_non_volatile
-peculiarity: peculiarity_existent
-name:    OO_INLINE_EXAMPLE_main
-ld_name: GlobalType_OO_INLINE_EXAMPLE_main
-offset:  -1
-irg = g37"
-}
-edge: { sourcename: "e24" targetname: "t22"class: 3 label: "type" color: red}
-edge: { sourcename: "e24" targetname: "n23"label: "value 0"}
-node: {title: "n23" label: "&(GlobalType_OO_INLINE_EXAMPLE_main)P  23" color: yellow info1: "visited: 4
-Const of type type_unknown
-"}
 }
diff --git a/testprograms/ref-results/FLOAT_EXAMPLE_main.vcg b/testprograms/ref-results/FLOAT_EXAMPLE_main.vcg
new file mode 100644 (file)
index 0000000..1296acd
--- /dev/null
@@ -0,0 +1,54 @@
+graph: { title: "ir graph of FLOAT_EXAMPLE_main"
+display_edge_labels: yes
+layoutalgorithm: mindepth
+manhattan_edges: yes
+port_sharing: no
+orientation: bottom_to_top
+classname 1: "Data"
+classname 2: "Block"
+classname 3: "Entity type"
+classname 4: "Entity owner"
+classname 5: "Method Param"
+classname 6: "Method Res"
+classname 7: "Super"
+classname 8: "Union"
+classname 9: "Points-to"
+classname 10: "Array Element Type"
+classname 11: "Overwrites"
+classname 12: "Member"
+
+graph: { title: "n17" label: "17" status:clustered color:yellow
+edge: {sourcename: "n17" targetname: "n32" label: "0" color: red}
+node: {title: "n18" label: "End  18" color: blue info1: "visited: 4
+"}
+}
+
+graph: { title: "n29" label: "29" status:clustered color:yellow
+edge: {sourcename: "n29" targetname: "n23" label: "0" color: red}
+node: {title: "n32" label: "Return  32"  info1: "visited: 5
+return in method of type FLOAT_EXAMPLE_main
+  res 0 type: dbl
+"}
+edge: {sourcename: "n32" targetname: "n24" label: "0" color: blue}
+edge: {sourcename: "n32" targetname: "n30" label: "1" }
+}
+
+graph: { title: "n19" label: "19" status:clustered color:yellow
+edge: {sourcename: "n19" targetname: "n23" label: "0" color: red}
+node: {title: "n23" label: "ProjX 0 23" color: yellow info1: "visited: 6
+"}
+edge: {sourcename: "n23" targetname: "n20" label: "0" color: red}
+node: {title: "n20" label: "Start  20" color: blue info1: "visited: 6
+start of method of type FLOAT_EXAMPLE_main
+"}
+node: {title: "n30" label: "1.234567890123456716800000000000E+19D  30" color: yellow info1: "visited: 6
+Const of type type_unknown
+"}
+node: {title: "n24" label: "ProjM 1 24" color: yellow info1: "visited: 6
+"}
+edge: {sourcename: "n24" targetname: "n20" label: "0" color: blue}
+}
+
+node: {title: "n21" label: "Bad  21"  info1: "visited: 0
+"}
+}
index 8a44725..71e427c 100644 (file)
@@ -46,7 +46,7 @@ edge: {sourcename: "n207" targetname: "n208" label: "0" }
 edge: {sourcename: "n207" targetname: "n206" label: "1" }
 node: {title: "n210" label: "Sel a 210"  info1: "visited: 27
 Selecting entity of type int
-  from entity of type PRIMA
+  from entity of type PRIMA_INLINE
 "}
 edge: {sourcename: "n210" targetname: "n204" label: "0" color: blue}
 edge: {sourcename: "n210" targetname: "n211" label: "1" }
@@ -63,7 +63,7 @@ node: {title: "n211" label: "ProjP 2 211" color: yellow info1: "visited: 28
 "}
 edge: {sourcename: "n211" targetname: "n212" label: "0" }
 node: {title: "n212" label: "Alloc  212"  info1: "visited: 28
-allocating entity of type PRIMA
+allocating entity of type PRIMA_INLINE
 "}
 edge: {sourcename: "n212" targetname: "n214" label: "0" color: blue}
 edge: {sourcename: "n212" targetname: "n213" label: "1" }
@@ -77,7 +77,7 @@ edge: {sourcename: "n216" targetname: "n218" label: "1" }
 edge: {sourcename: "n216" targetname: "n217" label: "2" }
 node: {title: "n218" label: "Sel a 218"  info1: "visited: 28
 Selecting entity of type int
-  from entity of type PRIMA
+  from entity of type PRIMA_INLINE
 "}
 edge: {sourcename: "n218" targetname: "n219" label: "0" color: blue}
 edge: {sourcename: "n218" targetname: "n211" label: "1" }
@@ -97,7 +97,7 @@ start of method of type OO_INLINE_EXAMPLE_main
 node: {title: "n209" label: "0x5Is  209" color: yellow info1: "visited: 29
 Const of type type_unknown
 "}
-node: {title: "n213" label: "SymC PRIMA size  213"  info1: "visited: 29
+node: {title: "n213" label: "SymC PRIMA_INLINE size  213"  info1: "visited: 29
 "}
 node: {title: "n214" label: "ProjM 1 214" color: yellow info1: "visited: 29
 "}
@@ -118,11 +118,11 @@ variability: variability_uninitialized
 volatility:  volatility_non_volatile
 peculiarity: peculiarity_existent
 name:    a
-ld_name: PRIMA_a
+ld_name: PRIMA_INLINE_a
 offset:  -1"
 }
 edge: { sourcename: "e15" targetname: "t12"class: 3 label: "type" color: red}
-node: {title: "t13" label: "class PRIMA" info1: "state: layout_undefined
+node: {title: "t13" label: "class PRIMA_INLINE" info1: "state: layout_undefined
 size: -1B,
 " color: green}
 edge: { sourcename: "t13" targetname: "e15"class: 12 label: "member" color:blue}
@@ -137,13 +137,13 @@ variability: variability_constant
 volatility:  volatility_non_volatile
 peculiarity: peculiarity_existent
 name:    set_a
-ld_name: PRIMA_set_a
+ld_name: PRIMA_INLINE_set_a
 offset:  -1
 irg = g71"
 }
 edge: { sourcename: "e18" targetname: "t16"class: 3 label: "type" color: red}
 edge: { sourcename: "e18" targetname: "n17"label: "value 0"}
-node: {title: "n17" label: "&(PRIMA_set_a)P  17" color: yellow info1: "visited: 1
+node: {title: "n17" label: "&(PRIMA_INLINE_set_a)P  17" color: yellow info1: "visited: 1
 Const of type type_unknown
 "}
 node: {title: "n4" label: "Bad  4"  info1: "visited: 1
@@ -172,13 +172,13 @@ variability: variability_constant
 volatility:  volatility_non_volatile
 peculiarity: peculiarity_existent
 name:    c
-ld_name: PRIMA_c
+ld_name: PRIMA_INLINE_c
 offset:  -1
 irg = g94"
 }
 edge: { sourcename: "e21" targetname: "t19"class: 3 label: "type" color: red}
 edge: { sourcename: "e21" targetname: "n20"label: "value 0"}
-node: {title: "n20" label: "&(PRIMA_c)P  20" color: yellow info1: "visited: 1
+node: {title: "n20" label: "&(PRIMA_INLINE_c)P  20" color: yellow info1: "visited: 1
 Const of type type_unknown
 "}
 node: {title: "t19" label: "method c" info1: "state: layout_fixed,
index 726fc05..9ac50ef 100644 (file)
@@ -46,7 +46,7 @@ edge: {sourcename: "n207" targetname: "n208" label: "0" }
 edge: {sourcename: "n207" targetname: "n206" label: "1" }
 node: {title: "n210" label: "Sel a 210"  info1: "visited: 22
 Selecting entity of type int
-  from entity of type PRIMA
+  from entity of type PRIMA_INLINE
 "}
 edge: {sourcename: "n210" targetname: "n204" label: "0" color: blue}
 edge: {sourcename: "n210" targetname: "n211" label: "1" }
@@ -63,7 +63,7 @@ node: {title: "n211" label: "ProjP 2 211" color: yellow info1: "visited: 23
 "}
 edge: {sourcename: "n211" targetname: "n212" label: "0" }
 node: {title: "n212" label: "Alloc  212"  info1: "visited: 23
-allocating entity of type PRIMA
+allocating entity of type PRIMA_INLINE
 "}
 edge: {sourcename: "n212" targetname: "n214" label: "0" color: blue}
 edge: {sourcename: "n212" targetname: "n213" label: "1" }
@@ -77,7 +77,7 @@ edge: {sourcename: "n216" targetname: "n218" label: "1" }
 edge: {sourcename: "n216" targetname: "n217" label: "2" }
 node: {title: "n218" label: "Sel a 218"  info1: "visited: 23
 Selecting entity of type int
-  from entity of type PRIMA
+  from entity of type PRIMA_INLINE
 "}
 edge: {sourcename: "n218" targetname: "n219" label: "0" color: blue}
 edge: {sourcename: "n218" targetname: "n211" label: "1" }
@@ -97,7 +97,7 @@ start of method of type OO_INLINE_EXAMPLE_main
 node: {title: "n209" label: "0x5Is  209" color: yellow info1: "visited: 24
 Const of type type_unknown
 "}
-node: {title: "n213" label: "SymC PRIMA size  213"  info1: "visited: 24
+node: {title: "n213" label: "SymC PRIMA_INLINE size  213"  info1: "visited: 24
 "}
 node: {title: "n214" label: "ProjM 1 214" color: yellow info1: "visited: 24
 "}
diff --git a/testprograms/ref-results/PRIMA_INLINE_c-all.vcg b/testprograms/ref-results/PRIMA_INLINE_c-all.vcg
new file mode 100644 (file)
index 0000000..0accf41
--- /dev/null
@@ -0,0 +1,173 @@
+graph: { title: "ir graph of PRIMA_INLINE_c"
+display_edge_labels: no
+layoutalgorithm: mindepth
+manhattan_edges: yes
+port_sharing: no
+orientation: bottom_to_top
+classname 1: "Data"
+classname 2: "Block"
+classname 3: "Entity type"
+classname 4: "Entity owner"
+classname 5: "Method Param"
+classname 6: "Method Res"
+classname 7: "Super"
+classname 8: "Union"
+classname 9: "Points-to"
+classname 10: "Array Element Type"
+classname 11: "Overwrites"
+classname 12: "Member"
+
+graph: { title: "n243" label: "243" status:clustered color:yellow
+node: {title: "n242" label: "End  242" color: blue info1: "visited: 26
+"}
+}
+
+graph: { title: "n248" label: "248" status:clustered color:yellow
+edge: {sourcename: "n248" targetname: "n250" label: "0" color: red}
+edge: {sourcename: "n248" targetname: "n249" label: "1" color: red}
+node: {title: "n252" label: "PhiM  252" color: green info1: "visited: 27
+"}
+edge: {sourcename: "n252" targetname: "n261" label: "0" color: blue}
+edge: {sourcename: "n252" targetname: "n253" label: "1" color: blue}
+node: {title: "n249" label: "Jmp  249"  info1: "visited: 27
+"}
+node: {title: "n253" label: "Store  253"  info1: "visited: 27
+"}
+edge: {sourcename: "n253" targetname: "n252" label: "0" color: blue}
+edge: {sourcename: "n253" targetname: "n259" label: "1" }
+edge: {sourcename: "n253" targetname: "n254" label: "2" }
+node: {title: "n254" label: "PhiIs  254" color: green info1: "visited: 27
+"}
+edge: {sourcename: "n254" targetname: "n257" label: "0" }
+edge: {sourcename: "n254" targetname: "n255" label: "1" }
+node: {title: "n255" label: "PhiIs  255" color: green info1: "visited: 27
+"}
+edge: {sourcename: "n255" targetname: "n256" label: "0" }
+edge: {sourcename: "n255" targetname: "n254" label: "1" }
+node: {title: "n259" label: "Sel a 259"  info1: "visited: 27
+Selecting entity of type int
+  from entity of type PRIMA_INLINE
+"}
+edge: {sourcename: "n259" targetname: "n252" label: "0" color: blue}
+edge: {sourcename: "n259" targetname: "n260" label: "1" }
+}
+
+graph: { title: "n251" label: "251" status:clustered color:yellow
+edge: {sourcename: "n251" targetname: "n246" label: "0" color: red}
+node: {title: "n250" label: "Jmp  250"  info1: "visited: 28
+"}
+node: {title: "n257" label: "ProjIs 1 257" color: yellow info1: "visited: 28
+"}
+edge: {sourcename: "n257" targetname: "n258" label: "0" }
+node: {title: "n260" label: "ProjP 0 260" color: yellow info1: "visited: 28
+"}
+edge: {sourcename: "n260" targetname: "n258" label: "0" }
+}
+
+graph: { title: "n245" label: "245" status:clustered color:yellow
+edge: {sourcename: "n245" targetname: "n246" label: "0" color: red}
+node: {title: "n246" label: "ProjX 0 246" color: yellow info1: "visited: 29
+"}
+edge: {sourcename: "n246" targetname: "n247" label: "0" color: red}
+node: {title: "n247" label: "Start  247" color: blue info1: "visited: 29
+start of method of type c
+  param 0 type: class_prima_ptr
+  param 1 type: int
+"}
+node: {title: "n256" label: "0x0Is  256" color: yellow info1: "visited: 29
+Const of type type_unknown
+"}
+node: {title: "n258" label: "ProjT 4 258" color: yellow info1: "visited: 29
+"}
+edge: {sourcename: "n258" targetname: "n247" label: "0" }
+node: {title: "n261" label: "ProjM 1 261" color: yellow info1: "visited: 29
+"}
+edge: {sourcename: "n261" targetname: "n247" label: "0" color: blue}
+}
+
+node: {title: "n244" label: "Bad  244"  info1: "visited: 0
+"}
+node: {title: "e15" label: "ent a" color: yellow
+ info1: "
+id: e15
+allocation:  allocation_automatic
+visibility:  visibility_local
+variability: variability_uninitialized
+volatility:  volatility_non_volatile
+peculiarity: peculiarity_existent
+name:    a
+ld_name: PRIMA_INLINE_a
+offset:  -1"
+}
+edge: { sourcename: "e15" targetname: "t12"class: 3 label: "type" color: red}
+node: {title: "t13" label: "class PRIMA_INLINE" info1: "state: layout_undefined
+size: -1B,
+" color: green}
+edge: { sourcename: "t13" targetname: "e15"class: 12 label: "member" color:blue}
+edge: { sourcename: "t13" targetname: "e18"class: 12 label: "member" color:blue}
+edge: { sourcename: "t13" targetname: "e21"class: 12 label: "member" color:blue}
+node: {title: "e18" label: "ent set_a" color: yellow
+ info1: "
+id: e18
+allocation:  allocation_static
+visibility:  visibility_local
+variability: variability_constant
+volatility:  volatility_non_volatile
+peculiarity: peculiarity_existent
+name:    set_a
+ld_name: PRIMA_INLINE_set_a
+offset:  -1
+irg = g71"
+}
+edge: { sourcename: "e18" targetname: "t16"class: 3 label: "type" color: red}
+edge: { sourcename: "e18" targetname: "n17"label: "value 0"}
+node: {title: "n17" label: "&(PRIMA_INLINE_set_a)P  17" color: yellow info1: "visited: 3
+Const of type type_unknown
+"}
+node: {title: "n4" label: "Bad  4"  info1: "visited: 3
+"}
+node: {title: "t16" label: "method set_a" info1: "state: layout_fixed,
+mode: P,
+size: 4B,
+"}
+edge: { sourcename: "t16" targetname: "t14"class: 5 label: "param 0" color: green}
+edge: { sourcename: "t16" targetname: "t12"class: 5 label: "param 1" color: green}
+node: {title: "t14" label: "pointer class_prima_ptr" info1: "state: layout_fixed,
+mode: P,
+size: 4B,
+"}
+edge: { sourcename: "t14" targetname: "t13"class: 9 label: "points to" color:green}
+node: {title: "t12" label: "primitive int" info1: "state: layout_fixed,
+mode: Is,
+size: 4B,
+"}
+node: {title: "e21" label: "ent c" color: yellow
+ info1: "
+id: e21
+allocation:  allocation_static
+visibility:  visibility_local
+variability: variability_constant
+volatility:  volatility_non_volatile
+peculiarity: peculiarity_existent
+name:    c
+ld_name: PRIMA_INLINE_c
+offset:  -1
+irg = g94"
+}
+edge: { sourcename: "e21" targetname: "t19"class: 3 label: "type" color: red}
+edge: { sourcename: "e21" targetname: "n20"label: "value 0"}
+node: {title: "n20" label: "&(PRIMA_INLINE_c)P  20" color: yellow info1: "visited: 3
+Const of type type_unknown
+"}
+node: {title: "t19" label: "method c" info1: "state: layout_fixed,
+mode: P,
+size: 4B,
+"}
+edge: { sourcename: "t19" targetname: "t14"class: 5 label: "param 0" color: green}
+edge: { sourcename: "t19" targetname: "t12"class: 5 label: "param 1" color: green}
+edge: { sourcename: "t19" targetname: "t12"class: 6 label: "res 0" color: green}
+node: {title: "t82" label: "class cframe_tp" info1: "state: layout_undefined
+size: -1B,
+" color: green}
+edge: { sourcename: "n259" targetname: "e15"class: 2 priority: 2 linestyle: dotted}
+}
diff --git a/testprograms/ref-results/PRIMA_INLINE_c.vcg b/testprograms/ref-results/PRIMA_INLINE_c.vcg
new file mode 100644 (file)
index 0000000..6dca417
--- /dev/null
@@ -0,0 +1,90 @@
+graph: { title: "ir graph of PRIMA_INLINE_c"
+display_edge_labels: no
+layoutalgorithm: mindepth
+manhattan_edges: yes
+port_sharing: no
+orientation: bottom_to_top
+classname 1: "Data"
+classname 2: "Block"
+classname 3: "Entity type"
+classname 4: "Entity owner"
+classname 5: "Method Param"
+classname 6: "Method Res"
+classname 7: "Super"
+classname 8: "Union"
+classname 9: "Points-to"
+classname 10: "Array Element Type"
+classname 11: "Overwrites"
+classname 12: "Member"
+
+graph: { title: "n243" label: "243" status:clustered color:yellow
+node: {title: "n242" label: "End  242" color: blue info1: "visited: 21
+"}
+}
+
+graph: { title: "n248" label: "248" status:clustered color:yellow
+edge: {sourcename: "n248" targetname: "n250" label: "0" color: red}
+edge: {sourcename: "n248" targetname: "n249" label: "1" color: red}
+node: {title: "n252" label: "PhiM  252" color: green info1: "visited: 22
+"}
+edge: {sourcename: "n252" targetname: "n261" label: "0" color: blue}
+edge: {sourcename: "n252" targetname: "n253" label: "1" color: blue}
+node: {title: "n249" label: "Jmp  249"  info1: "visited: 22
+"}
+node: {title: "n253" label: "Store  253"  info1: "visited: 22
+"}
+edge: {sourcename: "n253" targetname: "n252" label: "0" color: blue}
+edge: {sourcename: "n253" targetname: "n259" label: "1" }
+edge: {sourcename: "n253" targetname: "n254" label: "2" }
+node: {title: "n254" label: "PhiIs  254" color: green info1: "visited: 22
+"}
+edge: {sourcename: "n254" targetname: "n257" label: "0" }
+edge: {sourcename: "n254" targetname: "n255" label: "1" }
+node: {title: "n255" label: "PhiIs  255" color: green info1: "visited: 22
+"}
+edge: {sourcename: "n255" targetname: "n256" label: "0" }
+edge: {sourcename: "n255" targetname: "n254" label: "1" }
+node: {title: "n259" label: "Sel a 259"  info1: "visited: 22
+Selecting entity of type int
+  from entity of type PRIMA_INLINE
+"}
+edge: {sourcename: "n259" targetname: "n252" label: "0" color: blue}
+edge: {sourcename: "n259" targetname: "n260" label: "1" }
+}
+
+graph: { title: "n251" label: "251" status:clustered color:yellow
+edge: {sourcename: "n251" targetname: "n246" label: "0" color: red}
+node: {title: "n250" label: "Jmp  250"  info1: "visited: 23
+"}
+node: {title: "n257" label: "ProjIs 1 257" color: yellow info1: "visited: 23
+"}
+edge: {sourcename: "n257" targetname: "n258" label: "0" }
+node: {title: "n260" label: "ProjP 0 260" color: yellow info1: "visited: 23
+"}
+edge: {sourcename: "n260" targetname: "n258" label: "0" }
+}
+
+graph: { title: "n245" label: "245" status:clustered color:yellow
+edge: {sourcename: "n245" targetname: "n246" label: "0" color: red}
+node: {title: "n246" label: "ProjX 0 246" color: yellow info1: "visited: 24
+"}
+edge: {sourcename: "n246" targetname: "n247" label: "0" color: red}
+node: {title: "n247" label: "Start  247" color: blue info1: "visited: 24
+start of method of type c
+  param 0 type: class_prima_ptr
+  param 1 type: int
+"}
+node: {title: "n256" label: "0x0Is  256" color: yellow info1: "visited: 24
+Const of type type_unknown
+"}
+node: {title: "n258" label: "ProjT 4 258" color: yellow info1: "visited: 24
+"}
+edge: {sourcename: "n258" targetname: "n247" label: "0" }
+node: {title: "n261" label: "ProjM 1 261" color: yellow info1: "visited: 24
+"}
+edge: {sourcename: "n261" targetname: "n247" label: "0" color: blue}
+}
+
+node: {title: "n244" label: "Bad  244"  info1: "visited: 0
+"}
+}
diff --git a/testprograms/ref-results/PRIMA_INLINE_set_a-all.vcg b/testprograms/ref-results/PRIMA_INLINE_set_a-all.vcg
new file mode 100644 (file)
index 0000000..2ae827a
--- /dev/null
@@ -0,0 +1,157 @@
+graph: { title: "ir graph of PRIMA_INLINE_set_a"
+display_edge_labels: no
+layoutalgorithm: mindepth
+manhattan_edges: yes
+port_sharing: no
+orientation: bottom_to_top
+classname 1: "Data"
+classname 2: "Block"
+classname 3: "Entity type"
+classname 4: "Entity owner"
+classname 5: "Method Param"
+classname 6: "Method Res"
+classname 7: "Super"
+classname 8: "Union"
+classname 9: "Points-to"
+classname 10: "Array Element Type"
+classname 11: "Overwrites"
+classname 12: "Member"
+
+graph: { title: "n225" label: "225" status:clustered color:yellow
+edge: {sourcename: "n225" targetname: "n226" label: "0" color: red}
+node: {title: "n224" label: "End  224" color: blue info1: "visited: 20
+"}
+}
+
+graph: { title: "n227" label: "227" status:clustered color:yellow
+edge: {sourcename: "n227" targetname: "n228" label: "0" color: red}
+node: {title: "n226" label: "Return  226"  info1: "visited: 21
+return in method of type set_a
+"}
+edge: {sourcename: "n226" targetname: "n231" label: "0" color: blue}
+node: {title: "n231" label: "ProjM 0 231" color: yellow info1: "visited: 21
+"}
+edge: {sourcename: "n231" targetname: "n232" label: "0" color: blue}
+node: {title: "n232" label: "Store  232"  info1: "visited: 21
+"}
+edge: {sourcename: "n232" targetname: "n237" label: "0" color: blue}
+edge: {sourcename: "n232" targetname: "n235" label: "1" }
+edge: {sourcename: "n232" targetname: "n233" label: "2" }
+node: {title: "n233" label: "ProjIs 1 233" color: yellow info1: "visited: 21
+"}
+edge: {sourcename: "n233" targetname: "n234" label: "0" }
+node: {title: "n235" label: "Sel a 235"  info1: "visited: 21
+Selecting entity of type int
+  from entity of type PRIMA_INLINE
+"}
+edge: {sourcename: "n235" targetname: "n237" label: "0" color: blue}
+edge: {sourcename: "n235" targetname: "n236" label: "1" }
+node: {title: "n236" label: "ProjP 0 236" color: yellow info1: "visited: 21
+"}
+edge: {sourcename: "n236" targetname: "n234" label: "0" }
+}
+
+graph: { title: "n229" label: "229" status:clustered color:yellow
+edge: {sourcename: "n229" targetname: "n228" label: "0" color: red}
+node: {title: "n228" label: "ProjX 0 228" color: yellow info1: "visited: 22
+"}
+edge: {sourcename: "n228" targetname: "n230" label: "0" color: red}
+node: {title: "n230" label: "Start  230" color: blue info1: "visited: 22
+start of method of type set_a
+  param 0 type: class_prima_ptr
+  param 1 type: int
+"}
+node: {title: "n234" label: "ProjT 4 234" color: yellow info1: "visited: 22
+"}
+edge: {sourcename: "n234" targetname: "n230" label: "0" }
+node: {title: "n237" label: "ProjM 1 237" color: yellow info1: "visited: 22
+"}
+edge: {sourcename: "n237" targetname: "n230" label: "0" color: blue}
+}
+
+node: {title: "n240" label: "Bad  240"  info1: "visited: 0
+"}
+node: {title: "e15" label: "ent a" color: yellow
+ info1: "
+id: e15
+allocation:  allocation_automatic
+visibility:  visibility_local
+variability: variability_uninitialized
+volatility:  volatility_non_volatile
+peculiarity: peculiarity_existent
+name:    a
+ld_name: PRIMA_INLINE_a
+offset:  -1"
+}
+edge: { sourcename: "e15" targetname: "t12"class: 3 label: "type" color: red}
+node: {title: "t13" label: "class PRIMA_INLINE" info1: "state: layout_undefined
+size: -1B,
+" color: green}
+edge: { sourcename: "t13" targetname: "e15"class: 12 label: "member" color:blue}
+edge: { sourcename: "t13" targetname: "e18"class: 12 label: "member" color:blue}
+edge: { sourcename: "t13" targetname: "e21"class: 12 label: "member" color:blue}
+node: {title: "e18" label: "ent set_a" color: yellow
+ info1: "
+id: e18
+allocation:  allocation_static
+visibility:  visibility_local
+variability: variability_constant
+volatility:  volatility_non_volatile
+peculiarity: peculiarity_existent
+name:    set_a
+ld_name: PRIMA_INLINE_set_a
+offset:  -1
+irg = g71"
+}
+edge: { sourcename: "e18" targetname: "t16"class: 3 label: "type" color: red}
+edge: { sourcename: "e18" targetname: "n17"label: "value 0"}
+node: {title: "n17" label: "&(PRIMA_INLINE_set_a)P  17" color: yellow info1: "visited: 2
+Const of type type_unknown
+"}
+node: {title: "n4" label: "Bad  4"  info1: "visited: 2
+"}
+node: {title: "t16" label: "method set_a" info1: "state: layout_fixed,
+mode: P,
+size: 4B,
+"}
+edge: { sourcename: "t16" targetname: "t14"class: 5 label: "param 0" color: green}
+edge: { sourcename: "t16" targetname: "t12"class: 5 label: "param 1" color: green}
+node: {title: "t14" label: "pointer class_prima_ptr" info1: "state: layout_fixed,
+mode: P,
+size: 4B,
+"}
+edge: { sourcename: "t14" targetname: "t13"class: 9 label: "points to" color:green}
+node: {title: "t12" label: "primitive int" info1: "state: layout_fixed,
+mode: Is,
+size: 4B,
+"}
+node: {title: "e21" label: "ent c" color: yellow
+ info1: "
+id: e21
+allocation:  allocation_static
+visibility:  visibility_local
+variability: variability_constant
+volatility:  volatility_non_volatile
+peculiarity: peculiarity_existent
+name:    c
+ld_name: PRIMA_INLINE_c
+offset:  -1
+irg = g94"
+}
+edge: { sourcename: "e21" targetname: "t19"class: 3 label: "type" color: red}
+edge: { sourcename: "e21" targetname: "n20"label: "value 0"}
+node: {title: "n20" label: "&(PRIMA_INLINE_c)P  20" color: yellow info1: "visited: 2
+Const of type type_unknown
+"}
+node: {title: "t19" label: "method c" info1: "state: layout_fixed,
+mode: P,
+size: 4B,
+"}
+edge: { sourcename: "t19" targetname: "t14"class: 5 label: "param 0" color: green}
+edge: { sourcename: "t19" targetname: "t12"class: 5 label: "param 1" color: green}
+edge: { sourcename: "t19" targetname: "t12"class: 6 label: "res 0" color: green}
+node: {title: "t59" label: "class set_aframe_tp" info1: "state: layout_undefined
+size: -1B,
+" color: green}
+edge: { sourcename: "n235" targetname: "e15"class: 2 priority: 2 linestyle: dotted}
+}
diff --git a/testprograms/ref-results/PRIMA_INLINE_set_a.vcg b/testprograms/ref-results/PRIMA_INLINE_set_a.vcg
new file mode 100644 (file)
index 0000000..ff5b405
--- /dev/null
@@ -0,0 +1,74 @@
+graph: { title: "ir graph of PRIMA_INLINE_set_a"
+display_edge_labels: no
+layoutalgorithm: mindepth
+manhattan_edges: yes
+port_sharing: no
+orientation: bottom_to_top
+classname 1: "Data"
+classname 2: "Block"
+classname 3: "Entity type"
+classname 4: "Entity owner"
+classname 5: "Method Param"
+classname 6: "Method Res"
+classname 7: "Super"
+classname 8: "Union"
+classname 9: "Points-to"
+classname 10: "Array Element Type"
+classname 11: "Overwrites"
+classname 12: "Member"
+
+graph: { title: "n225" label: "225" status:clustered color:yellow
+edge: {sourcename: "n225" targetname: "n226" label: "0" color: red}
+node: {title: "n224" label: "End  224" color: blue info1: "visited: 16
+"}
+}
+
+graph: { title: "n227" label: "227" status:clustered color:yellow
+edge: {sourcename: "n227" targetname: "n228" label: "0" color: red}
+node: {title: "n226" label: "Return  226"  info1: "visited: 17
+return in method of type set_a
+"}
+edge: {sourcename: "n226" targetname: "n231" label: "0" color: blue}
+node: {title: "n231" label: "ProjM 0 231" color: yellow info1: "visited: 17
+"}
+edge: {sourcename: "n231" targetname: "n232" label: "0" color: blue}
+node: {title: "n232" label: "Store  232"  info1: "visited: 17
+"}
+edge: {sourcename: "n232" targetname: "n237" label: "0" color: blue}
+edge: {sourcename: "n232" targetname: "n235" label: "1" }
+edge: {sourcename: "n232" targetname: "n233" label: "2" }
+node: {title: "n233" label: "ProjIs 1 233" color: yellow info1: "visited: 17
+"}
+edge: {sourcename: "n233" targetname: "n234" label: "0" }
+node: {title: "n235" label: "Sel a 235"  info1: "visited: 17
+Selecting entity of type int
+  from entity of type PRIMA_INLINE
+"}
+edge: {sourcename: "n235" targetname: "n237" label: "0" color: blue}
+edge: {sourcename: "n235" targetname: "n236" label: "1" }
+node: {title: "n236" label: "ProjP 0 236" color: yellow info1: "visited: 17
+"}
+edge: {sourcename: "n236" targetname: "n234" label: "0" }
+}
+
+graph: { title: "n229" label: "229" status:clustered color:yellow
+edge: {sourcename: "n229" targetname: "n228" label: "0" color: red}
+node: {title: "n228" label: "ProjX 0 228" color: yellow info1: "visited: 18
+"}
+edge: {sourcename: "n228" targetname: "n230" label: "0" color: red}
+node: {title: "n230" label: "Start  230" color: blue info1: "visited: 18
+start of method of type set_a
+  param 0 type: class_prima_ptr
+  param 1 type: int
+"}
+node: {title: "n234" label: "ProjT 4 234" color: yellow info1: "visited: 18
+"}
+edge: {sourcename: "n234" targetname: "n230" label: "0" }
+node: {title: "n237" label: "ProjM 1 237" color: yellow info1: "visited: 18
+"}
+edge: {sourcename: "n237" targetname: "n230" label: "0" color: blue}
+}
+
+node: {title: "n240" label: "Bad  240"  info1: "visited: 0
+"}
+}
index 6e5b810..df7a682 100644 (file)
@@ -1,5 +1,5 @@
 graph: { title: "ir graph of PRIMA_c"
-display_edge_labels: no
+display_edge_labels: yes
 layoutalgorithm: mindepth
 manhattan_edges: yes
 port_sharing: no
@@ -17,75 +17,67 @@ classname 10: "Array Element Type"
 classname 11: "Overwrites"
 classname 12: "Member"
 
-graph: { title: "n243" label: "243" status:clustered color:yellow
-node: {title: "n242" label: "End  242" color: blue info1: "visited: 26
+graph: { title: "n153" label: "153" status:clustered color:yellow
+edge: {sourcename: "n153" targetname: "n154" label: "0" color: red}
+node: {title: "n152" label: "End  152" color: blue info1: "visited: 12
 "}
 }
 
-graph: { title: "n248" label: "248" status:clustered color:yellow
-edge: {sourcename: "n248" targetname: "n250" label: "0" color: red}
-edge: {sourcename: "n248" targetname: "n249" label: "1" color: red}
-node: {title: "n252" label: "PhiM  252" color: green info1: "visited: 27
-"}
-edge: {sourcename: "n252" targetname: "n261" label: "0" color: blue}
-edge: {sourcename: "n252" targetname: "n253" label: "1" color: blue}
-node: {title: "n249" label: "Jmp  249"  info1: "visited: 27
-"}
-node: {title: "n253" label: "Store  253"  info1: "visited: 27
-"}
-edge: {sourcename: "n253" targetname: "n252" label: "0" color: blue}
-edge: {sourcename: "n253" targetname: "n259" label: "1" }
-edge: {sourcename: "n253" targetname: "n254" label: "2" }
-node: {title: "n254" label: "PhiIs  254" color: green info1: "visited: 27
-"}
-edge: {sourcename: "n254" targetname: "n257" label: "0" }
-edge: {sourcename: "n254" targetname: "n255" label: "1" }
-node: {title: "n255" label: "PhiIs  255" color: green info1: "visited: 27
-"}
-edge: {sourcename: "n255" targetname: "n256" label: "0" }
-edge: {sourcename: "n255" targetname: "n254" label: "1" }
-node: {title: "n259" label: "Sel a 259"  info1: "visited: 27
+graph: { title: "n155" label: "155" status:clustered color:yellow
+edge: {sourcename: "n155" targetname: "n156" label: "0" color: red}
+node: {title: "n154" label: "Return  154"  info1: "visited: 13
+return in method of type c
+  res 0 type: int
+"}
+edge: {sourcename: "n154" targetname: "n167" label: "0" color: blue}
+edge: {sourcename: "n154" targetname: "n159" label: "1" }
+node: {title: "n159" label: "AddIs  159"  info1: "visited: 13
+"}
+edge: {sourcename: "n159" targetname: "n166" label: "0" }
+edge: {sourcename: "n159" targetname: "n160" label: "1" }
+node: {title: "n160" label: "ProjIs 2 160" color: yellow info1: "visited: 13
+"}
+edge: {sourcename: "n160" targetname: "n161" label: "0" }
+node: {title: "n161" label: "Load  161"  info1: "visited: 13
+"}
+edge: {sourcename: "n161" targetname: "n165" label: "0" color: blue}
+edge: {sourcename: "n161" targetname: "n162" label: "1" }
+node: {title: "n162" label: "Sel a 162"  info1: "visited: 13
 Selecting entity of type int
   from entity of type PRIMA
 "}
-edge: {sourcename: "n259" targetname: "n252" label: "0" color: blue}
-edge: {sourcename: "n259" targetname: "n260" label: "1" }
-}
-
-graph: { title: "n251" label: "251" status:clustered color:yellow
-edge: {sourcename: "n251" targetname: "n246" label: "0" color: red}
-node: {title: "n250" label: "Jmp  250"  info1: "visited: 28
+edge: {sourcename: "n162" targetname: "n165" label: "0" color: blue}
+edge: {sourcename: "n162" targetname: "n163" label: "1" }
+node: {title: "n163" label: "ProjP 0 163" color: yellow info1: "visited: 13
 "}
-node: {title: "n257" label: "ProjIs 1 257" color: yellow info1: "visited: 28
+edge: {sourcename: "n163" targetname: "n164" label: "0" }
+node: {title: "n166" label: "ProjIs 1 166" color: yellow info1: "visited: 13
 "}
-edge: {sourcename: "n257" targetname: "n258" label: "0" }
-node: {title: "n260" label: "ProjP 0 260" color: yellow info1: "visited: 28
+edge: {sourcename: "n166" targetname: "n164" label: "0" }
+node: {title: "n167" label: "ProjM 0 167" color: yellow info1: "visited: 13
 "}
-edge: {sourcename: "n260" targetname: "n258" label: "0" }
+edge: {sourcename: "n167" targetname: "n161" label: "0" color: blue}
 }
 
-graph: { title: "n245" label: "245" status:clustered color:yellow
-edge: {sourcename: "n245" targetname: "n246" label: "0" color: red}
-node: {title: "n246" label: "ProjX 0 246" color: yellow info1: "visited: 29
+graph: { title: "n157" label: "157" status:clustered color:yellow
+edge: {sourcename: "n157" targetname: "n156" label: "0" color: red}
+node: {title: "n156" label: "ProjX 0 156" color: yellow info1: "visited: 14
 "}
-edge: {sourcename: "n246" targetname: "n247" label: "0" color: red}
-node: {title: "n247" label: "Start  247" color: blue info1: "visited: 29
+edge: {sourcename: "n156" targetname: "n158" label: "0" color: red}
+node: {title: "n158" label: "Start  158" color: blue info1: "visited: 14
 start of method of type c
   param 0 type: class_prima_ptr
   param 1 type: int
 "}
-node: {title: "n256" label: "0x0Is  256" color: yellow info1: "visited: 29
-Const of type type_unknown
-"}
-node: {title: "n258" label: "ProjT 4 258" color: yellow info1: "visited: 29
+node: {title: "n164" label: "ProjT 4 164" color: yellow info1: "visited: 14
 "}
-edge: {sourcename: "n258" targetname: "n247" label: "0" }
-node: {title: "n261" label: "ProjM 1 261" color: yellow info1: "visited: 29
+edge: {sourcename: "n164" targetname: "n158" label: "0" }
+node: {title: "n165" label: "ProjM 1 165" color: yellow info1: "visited: 14
 "}
-edge: {sourcename: "n261" targetname: "n247" label: "0" color: blue}
+edge: {sourcename: "n165" targetname: "n158" label: "0" color: blue}
 }
 
-node: {title: "n244" label: "Bad  244"  info1: "visited: 0
+node: {title: "n170" label: "Bad  170"  info1: "visited: 0
 "}
 node: {title: "e15" label: "ent a" color: yellow
  info1: "
@@ -169,5 +161,5 @@ edge: { sourcename: "t19" targetname: "t12"class: 6 label: "res 0" color: green}
 node: {title: "t82" label: "class cframe_tp" info1: "state: layout_undefined
 size: -1B,
 " color: green}
-edge: { sourcename: "n259" targetname: "e15"class: 2 priority: 2 linestyle: dotted}
+edge: { sourcename: "n162" targetname: "e15"class: 2 priority: 2 linestyle: dotted}
 }
diff --git a/testprograms/ref-results/PRIMA_c.vcg b/testprograms/ref-results/PRIMA_c.vcg
new file mode 100644 (file)
index 0000000..0f13638
--- /dev/null
@@ -0,0 +1,82 @@
+graph: { title: "ir graph of PRIMA_c"
+display_edge_labels: yes
+layoutalgorithm: mindepth
+manhattan_edges: yes
+port_sharing: no
+orientation: bottom_to_top
+classname 1: "Data"
+classname 2: "Block"
+classname 3: "Entity type"
+classname 4: "Entity owner"
+classname 5: "Method Param"
+classname 6: "Method Res"
+classname 7: "Super"
+classname 8: "Union"
+classname 9: "Points-to"
+classname 10: "Array Element Type"
+classname 11: "Overwrites"
+classname 12: "Member"
+
+graph: { title: "n153" label: "153" status:clustered color:yellow
+edge: {sourcename: "n153" targetname: "n154" label: "0" color: red}
+node: {title: "n152" label: "End  152" color: blue info1: "visited: 8
+"}
+}
+
+graph: { title: "n155" label: "155" status:clustered color:yellow
+edge: {sourcename: "n155" targetname: "n156" label: "0" color: red}
+node: {title: "n154" label: "Return  154"  info1: "visited: 9
+return in method of type c
+  res 0 type: int
+"}
+edge: {sourcename: "n154" targetname: "n167" label: "0" color: blue}
+edge: {sourcename: "n154" targetname: "n159" label: "1" }
+node: {title: "n159" label: "AddIs  159"  info1: "visited: 9
+"}
+edge: {sourcename: "n159" targetname: "n166" label: "0" }
+edge: {sourcename: "n159" targetname: "n160" label: "1" }
+node: {title: "n160" label: "ProjIs 2 160" color: yellow info1: "visited: 9
+"}
+edge: {sourcename: "n160" targetname: "n161" label: "0" }
+node: {title: "n161" label: "Load  161"  info1: "visited: 9
+"}
+edge: {sourcename: "n161" targetname: "n165" label: "0" color: blue}
+edge: {sourcename: "n161" targetname: "n162" label: "1" }
+node: {title: "n162" label: "Sel a 162"  info1: "visited: 9
+Selecting entity of type int
+  from entity of type PRIMA
+"}
+edge: {sourcename: "n162" targetname: "n165" label: "0" color: blue}
+edge: {sourcename: "n162" targetname: "n163" label: "1" }
+node: {title: "n163" label: "ProjP 0 163" color: yellow info1: "visited: 9
+"}
+edge: {sourcename: "n163" targetname: "n164" label: "0" }
+node: {title: "n166" label: "ProjIs 1 166" color: yellow info1: "visited: 9
+"}
+edge: {sourcename: "n166" targetname: "n164" label: "0" }
+node: {title: "n167" label: "ProjM 0 167" color: yellow info1: "visited: 9
+"}
+edge: {sourcename: "n167" targetname: "n161" label: "0" color: blue}
+}
+
+graph: { title: "n157" label: "157" status:clustered color:yellow
+edge: {sourcename: "n157" targetname: "n156" label: "0" color: red}
+node: {title: "n156" label: "ProjX 0 156" color: yellow info1: "visited: 10
+"}
+edge: {sourcename: "n156" targetname: "n158" label: "0" color: red}
+node: {title: "n158" label: "Start  158" color: blue info1: "visited: 10
+start of method of type c
+  param 0 type: class_prima_ptr
+  param 1 type: int
+"}
+node: {title: "n164" label: "ProjT 4 164" color: yellow info1: "visited: 10
+"}
+edge: {sourcename: "n164" targetname: "n158" label: "0" }
+node: {title: "n165" label: "ProjM 1 165" color: yellow info1: "visited: 10
+"}
+edge: {sourcename: "n165" targetname: "n158" label: "0" color: blue}
+}
+
+node: {title: "n170" label: "Bad  170"  info1: "visited: 0
+"}
+}
index 664405f..300fc24 100644 (file)
@@ -1,5 +1,5 @@
 graph: { title: "ir graph of PRIMA_set_a"
-display_edge_labels: no
+display_edge_labels: yes
 layoutalgorithm: mindepth
 manhattan_edges: yes
 port_sharing: no
@@ -17,59 +17,59 @@ classname 10: "Array Element Type"
 classname 11: "Overwrites"
 classname 12: "Member"
 
-graph: { title: "n225" label: "225" status:clustered color:yellow
-edge: {sourcename: "n225" targetname: "n226" label: "0" color: red}
-node: {title: "n224" label: "End  224" color: blue info1: "visited: 20
+graph: { title: "n135" label: "135" status:clustered color:yellow
+edge: {sourcename: "n135" targetname: "n136" label: "0" color: red}
+node: {title: "n134" label: "End  134" color: blue info1: "visited: 12
 "}
 }
 
-graph: { title: "n227" label: "227" status:clustered color:yellow
-edge: {sourcename: "n227" targetname: "n228" label: "0" color: red}
-node: {title: "n226" label: "Return  226"  info1: "visited: 21
+graph: { title: "n137" label: "137" status:clustered color:yellow
+edge: {sourcename: "n137" targetname: "n138" label: "0" color: red}
+node: {title: "n136" label: "Return  136"  info1: "visited: 13
 return in method of type set_a
 "}
-edge: {sourcename: "n226" targetname: "n231" label: "0" color: blue}
-node: {title: "n231" label: "ProjM 0 231" color: yellow info1: "visited: 21
+edge: {sourcename: "n136" targetname: "n141" label: "0" color: blue}
+node: {title: "n141" label: "ProjM 0 141" color: yellow info1: "visited: 13
 "}
-edge: {sourcename: "n231" targetname: "n232" label: "0" color: blue}
-node: {title: "n232" label: "Store  232"  info1: "visited: 21
+edge: {sourcename: "n141" targetname: "n142" label: "0" color: blue}
+node: {title: "n142" label: "Store  142"  info1: "visited: 13
 "}
-edge: {sourcename: "n232" targetname: "n237" label: "0" color: blue}
-edge: {sourcename: "n232" targetname: "n235" label: "1" }
-edge: {sourcename: "n232" targetname: "n233" label: "2" }
-node: {title: "n233" label: "ProjIs 1 233" color: yellow info1: "visited: 21
+edge: {sourcename: "n142" targetname: "n147" label: "0" color: blue}
+edge: {sourcename: "n142" targetname: "n145" label: "1" }
+edge: {sourcename: "n142" targetname: "n143" label: "2" }
+node: {title: "n143" label: "ProjIs 1 143" color: yellow info1: "visited: 13
 "}
-edge: {sourcename: "n233" targetname: "n234" label: "0" }
-node: {title: "n235" label: "Sel a 235"  info1: "visited: 21
+edge: {sourcename: "n143" targetname: "n144" label: "0" }
+node: {title: "n145" label: "Sel a 145"  info1: "visited: 13
 Selecting entity of type int
   from entity of type PRIMA
 "}
-edge: {sourcename: "n235" targetname: "n237" label: "0" color: blue}
-edge: {sourcename: "n235" targetname: "n236" label: "1" }
-node: {title: "n236" label: "ProjP 0 236" color: yellow info1: "visited: 21
+edge: {sourcename: "n145" targetname: "n147" label: "0" color: blue}
+edge: {sourcename: "n145" targetname: "n146" label: "1" }
+node: {title: "n146" label: "ProjP 0 146" color: yellow info1: "visited: 13
 "}
-edge: {sourcename: "n236" targetname: "n234" label: "0" }
+edge: {sourcename: "n146" targetname: "n144" label: "0" }
 }
 
-graph: { title: "n229" label: "229" status:clustered color:yellow
-edge: {sourcename: "n229" targetname: "n228" label: "0" color: red}
-node: {title: "n228" label: "ProjX 0 228" color: yellow info1: "visited: 22
+graph: { title: "n139" label: "139" status:clustered color:yellow
+edge: {sourcename: "n139" targetname: "n138" label: "0" color: red}
+node: {title: "n138" label: "ProjX 0 138" color: yellow info1: "visited: 14
 "}
-edge: {sourcename: "n228" targetname: "n230" label: "0" color: red}
-node: {title: "n230" label: "Start  230" color: blue info1: "visited: 22
+edge: {sourcename: "n138" targetname: "n140" label: "0" color: red}
+node: {title: "n140" label: "Start  140" color: blue info1: "visited: 14
 start of method of type set_a
   param 0 type: class_prima_ptr
   param 1 type: int
 "}
-node: {title: "n234" label: "ProjT 4 234" color: yellow info1: "visited: 22
+node: {title: "n144" label: "ProjT 4 144" color: yellow info1: "visited: 14
 "}
-edge: {sourcename: "n234" targetname: "n230" label: "0" }
-node: {title: "n237" label: "ProjM 1 237" color: yellow info1: "visited: 22
+edge: {sourcename: "n144" targetname: "n140" label: "0" }
+node: {title: "n147" label: "ProjM 1 147" color: yellow info1: "visited: 14
 "}
-edge: {sourcename: "n237" targetname: "n230" label: "0" color: blue}
+edge: {sourcename: "n147" targetname: "n140" label: "0" color: blue}
 }
 
-node: {title: "n240" label: "Bad  240"  info1: "visited: 0
+node: {title: "n150" label: "Bad  150"  info1: "visited: 0
 "}
 node: {title: "e15" label: "ent a" color: yellow
  info1: "
@@ -153,5 +153,5 @@ edge: { sourcename: "t19" targetname: "t12"class: 6 label: "res 0" color: green}
 node: {title: "t59" label: "class set_aframe_tp" info1: "state: layout_undefined
 size: -1B,
 " color: green}
-edge: { sourcename: "n235" targetname: "e15"class: 2 priority: 2 linestyle: dotted}
+edge: { sourcename: "n145" targetname: "e15"class: 2 priority: 2 linestyle: dotted}
 }
diff --git a/testprograms/ref-results/PRIMA_set_a.vcg b/testprograms/ref-results/PRIMA_set_a.vcg
new file mode 100644 (file)
index 0000000..d829565
--- /dev/null
@@ -0,0 +1,74 @@
+graph: { title: "ir graph of PRIMA_set_a"
+display_edge_labels: yes
+layoutalgorithm: mindepth
+manhattan_edges: yes
+port_sharing: no
+orientation: bottom_to_top
+classname 1: "Data"
+classname 2: "Block"
+classname 3: "Entity type"
+classname 4: "Entity owner"
+classname 5: "Method Param"
+classname 6: "Method Res"
+classname 7: "Super"
+classname 8: "Union"
+classname 9: "Points-to"
+classname 10: "Array Element Type"
+classname 11: "Overwrites"
+classname 12: "Member"
+
+graph: { title: "n135" label: "135" status:clustered color:yellow
+edge: {sourcename: "n135" targetname: "n136" label: "0" color: red}
+node: {title: "n134" label: "End  134" color: blue info1: "visited: 8
+"}
+}
+
+graph: { title: "n137" label: "137" status:clustered color:yellow
+edge: {sourcename: "n137" targetname: "n138" label: "0" color: red}
+node: {title: "n136" label: "Return  136"  info1: "visited: 9
+return in method of type set_a
+"}
+edge: {sourcename: "n136" targetname: "n141" label: "0" color: blue}
+node: {title: "n141" label: "ProjM 0 141" color: yellow info1: "visited: 9
+"}
+edge: {sourcename: "n141" targetname: "n142" label: "0" color: blue}
+node: {title: "n142" label: "Store  142"  info1: "visited: 9
+"}
+edge: {sourcename: "n142" targetname: "n147" label: "0" color: blue}
+edge: {sourcename: "n142" targetname: "n145" label: "1" }
+edge: {sourcename: "n142" targetname: "n143" label: "2" }
+node: {title: "n143" label: "ProjIs 1 143" color: yellow info1: "visited: 9
+"}
+edge: {sourcename: "n143" targetname: "n144" label: "0" }
+node: {title: "n145" label: "Sel a 145"  info1: "visited: 9
+Selecting entity of type int
+  from entity of type PRIMA
+"}
+edge: {sourcename: "n145" targetname: "n147" label: "0" color: blue}
+edge: {sourcename: "n145" targetname: "n146" label: "1" }
+node: {title: "n146" label: "ProjP 0 146" color: yellow info1: "visited: 9
+"}
+edge: {sourcename: "n146" targetname: "n144" label: "0" }
+}
+
+graph: { title: "n139" label: "139" status:clustered color:yellow
+edge: {sourcename: "n139" targetname: "n138" label: "0" color: red}
+node: {title: "n138" label: "ProjX 0 138" color: yellow info1: "visited: 10
+"}
+edge: {sourcename: "n138" targetname: "n140" label: "0" color: red}
+node: {title: "n140" label: "Start  140" color: blue info1: "visited: 10
+start of method of type set_a
+  param 0 type: class_prima_ptr
+  param 1 type: int
+"}
+node: {title: "n144" label: "ProjT 4 144" color: yellow info1: "visited: 10
+"}
+edge: {sourcename: "n144" targetname: "n140" label: "0" }
+node: {title: "n147" label: "ProjM 1 147" color: yellow info1: "visited: 10
+"}
+edge: {sourcename: "n147" targetname: "n140" label: "0" color: blue}
+}
+
+node: {title: "n150" label: "Bad  150"  info1: "visited: 0
+"}
+}
diff --git a/testprograms/ref-results/c.vcg b/testprograms/ref-results/c.vcg
deleted file mode 100644 (file)
index 14f4613..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-graph: { title: "ir graph of c"
-display_edge_labels: no
-layoutalgorithm: mindepth
-manhattan_edges: yes
-port_sharing: no
-orientation: bottom_to_top
-classname 1: "Data"
-classname 2: "Block"
-classname 3: "Entity type"
-classname 4: "Entity owner"
-classname 5: "Method Param"
-classname 6: "Method Res"
-classname 7: "Super"
-classname 8: "Union"
-classname 9: "Points-to"
-classname 10: "Array Element Type"
-classname 11: "Overwrites"
-classname 12: "Member"
-
-graph: { title: "n243" label: "243" status:clustered color:yellow
-node: {title: "n242" label: "End  242" color: blue info1: "visited: 21
-"}
-}
-
-graph: { title: "n248" label: "248" status:clustered color:yellow
-edge: {sourcename: "n248" targetname: "n250" label: "0" color: red}
-edge: {sourcename: "n248" targetname: "n249" label: "1" color: red}
-node: {title: "n252" label: "PhiM  252" color: green info1: "visited: 22
-"}
-edge: {sourcename: "n252" targetname: "n261" label: "0" color: blue}
-edge: {sourcename: "n252" targetname: "n253" label: "1" color: blue}
-node: {title: "n249" label: "Jmp  249"  info1: "visited: 22
-"}
-node: {title: "n253" label: "Store  253"  info1: "visited: 22
-"}
-edge: {sourcename: "n253" targetname: "n252" label: "0" color: blue}
-edge: {sourcename: "n253" targetname: "n259" label: "1" }
-edge: {sourcename: "n253" targetname: "n254" label: "2" }
-node: {title: "n254" label: "PhiIs  254" color: green info1: "visited: 22
-"}
-edge: {sourcename: "n254" targetname: "n257" label: "0" }
-edge: {sourcename: "n254" targetname: "n255" label: "1" }
-node: {title: "n255" label: "PhiIs  255" color: green info1: "visited: 22
-"}
-edge: {sourcename: "n255" targetname: "n256" label: "0" }
-edge: {sourcename: "n255" targetname: "n254" label: "1" }
-node: {title: "n259" label: "Sel a 259"  info1: "visited: 22
-Selecting entity of type int
-  from entity of type PRIMA
-"}
-edge: {sourcename: "n259" targetname: "n252" label: "0" color: blue}
-edge: {sourcename: "n259" targetname: "n260" label: "1" }
-}
-
-graph: { title: "n251" label: "251" status:clustered color:yellow
-edge: {sourcename: "n251" targetname: "n246" label: "0" color: red}
-node: {title: "n250" label: "Jmp  250"  info1: "visited: 23
-"}
-node: {title: "n257" label: "ProjIs 1 257" color: yellow info1: "visited: 23
-"}
-edge: {sourcename: "n257" targetname: "n258" label: "0" }
-node: {title: "n260" label: "ProjP 0 260" color: yellow info1: "visited: 23
-"}
-edge: {sourcename: "n260" targetname: "n258" label: "0" }
-}
-
-graph: { title: "n245" label: "245" status:clustered color:yellow
-edge: {sourcename: "n245" targetname: "n246" label: "0" color: red}
-node: {title: "n246" label: "ProjX 0 246" color: yellow info1: "visited: 24
-"}
-edge: {sourcename: "n246" targetname: "n247" label: "0" color: red}
-node: {title: "n247" label: "Start  247" color: blue info1: "visited: 24
-start of method of type c
-  param 0 type: class_prima_ptr
-  param 1 type: int
-"}
-node: {title: "n256" label: "0x0Is  256" color: yellow info1: "visited: 24
-Const of type type_unknown
-"}
-node: {title: "n258" label: "ProjT 4 258" color: yellow info1: "visited: 24
-"}
-edge: {sourcename: "n258" targetname: "n247" label: "0" }
-node: {title: "n261" label: "ProjM 1 261" color: yellow info1: "visited: 24
-"}
-edge: {sourcename: "n261" targetname: "n247" label: "0" color: blue}
-}
-
-node: {title: "n244" label: "Bad  244"  info1: "visited: 0
-"}
-}
index 096b84a..2d91ef6 100644 (file)
@@ -6,91 +6,94 @@ use xvcg to view these graphs:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: EMPTY...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: IRR_CF...
+Creating an IR graph: ARRAY-STACK_EXAMPLE...
 Optimizing ...
-Dumping the graph and a control flow graph.
+Dumping the graph and a type graph.
 Use xvcg to view these graphs:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: ARRAY-STACK_EXAMPLE...
+Creating an IR graph: CALL_STR_EXAMPLE...
 Optimizing ...
-Dumping the graph and a type graph.
-Use xvcg to view these graphs:
+Done building the graph.  Dumping it.
+Use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: GLOBAL_VAR ...
+Creating an IR graph: COND_EXAMPLE...
 Optimizing ...
 Done building the graph.  Dumping it.
 Use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: IRR_LOOP...
-Optimizing ...
-Dumping the graph and a control flow graph.
-Use xvcg to view these graphs:
+Example program for constant entites.
+Creating type information...
+Done building the graph.  Dumping it.
+use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: CALL_STR_EXAMPLE...
+Creating an IR graph: CONST_EVAL_EXAMPLE...
 Optimizing ...
 Done building the graph.  Dumping it.
-Use xvcg to view this graph:
+use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-creating an IR graph: IF_ELSE_EXAMPLE...
-
+Creating an IR graph: DEAD_BLOCK...
 Optimizing ...
+Dumping the graph and a control flow graph.
+Use xvcg to view these graphs:
+/ben/goetz/bin/xvcg GRAPHNAME
+
+
+Creating an IR graph: EMPTY...
 Done building the graph.  Dumping it.
 use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: MEMORY_EXAMPLE...
+Creating an IR graph: ENDLESS_LOOP_EXAMPLE...
 Optimizing ...
 Done building the graph.  Dumping it.
 Use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: COND_EXAMPLE...
-Optimizing ...
+Creating an IR graph: FLOAT EXAMPLE...
 Done building the graph.  Dumping it.
-Use xvcg to view this graph:
+use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: IF_EXAMPLE...
+Creating an IR graph: GLOBAL_CSE_EXAMPLE...
+Optimizing ...
 Done building the graph.  Dumping it.
 use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: OO_PROGRAM_EXAMPLE...
-Creating IR graph for set_a:
-Creating IR graph for c:
+Creating an IR graph: GLOBAL_VAR ...
 Optimizing ...
-Dumping graphs of all procedures and a type graph.
-Use xvcg to view these graphs:
+Done building the graph.  Dumping it.
+Use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: CONST_EVAL_EXAMPLE...
+Creating an IR graph: IF_ELSE_EXAMPLE...
 Optimizing ...
 Done building the graph.  Dumping it.
 use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
+Creating an IR graph: IF_EXAMPLE...
+Done building the graph.  Dumping it.
+use xvcg to view this graph:
+/ben/goetz/bin/xvcg GRAPHNAME
+
+
 Creating an IR graph: IF_WHILE_EXAMPLE...
 Optimizing ...
 Done building the graph.  Dumping it with out-edges.
@@ -98,53 +101,62 @@ Use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: ...
+Creating type information for INHERITANCE_EXAMPLE ...
+Done building the graph.  Dumping it.
+use xvcg to view this graph:
+/ben/goetz/bin/xvcg GRAPHNAME
+
+
+Creating an IR graph: IRR_CF...
 Optimizing ...
 Dumping the graph and a control flow graph.
 Use xvcg to view these graphs:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: DEAD_BLOCK...
+Creating an IR graph: IRR_LOOP...
 Optimizing ...
 Dumping the graph and a control flow graph.
 Use xvcg to view these graphs:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating type information for INHERITANCE_EXAMPLE ...
+Creating an IR graph: MEMORY_EXAMPLE...
+Optimizing ...
 Done building the graph.  Dumping it.
-use xvcg to view this graph:
+Use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: WHILE_EXAMPLE...
+Creating an IR graph: OO_INLINE_EXAMPLE...
+Creating IR graph for set_a:
+Creating IR graph for c:
+Inlining set_a ...
+Inlineing c ...
 Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
+Dumping graphs of all procedures and a type graph.
+Use xvcg to view these graphs:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: ENDLESS_LOOP_EXAMPLE...
+Creating an IR graph: OO_PROGRAM_EXAMPLE...
+Creating IR graph for set_a:
+Creating IR graph for c:
 Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
+Dumping graphs of all procedures and a type graph.
+Use xvcg to view these graphs:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: GLOBAL_CSE_EXAMPLE...
+Creating an IR graph: THREE_CFPRED_EXAMPLE ...
 Optimizing ...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
+Dumping the graph and a control flow graph.
+Use xvcg to view these graphs:
 /ben/goetz/bin/xvcg GRAPHNAME
 
 
-Creating an IR graph: OO_INLINE_EXAMPLE...
-Creating IR graph for set_a:
-Creating IR graph for c:
-Inlining set_a ...
-INLINEing c ...
+Creating an IR graph: WHILE_EXAMPLE...
 Optimizing ...
-Dumping graphs of all procedures and a type graph.
-Use xvcg to view these graphs:
+Done building the graph.  Dumping it.
+Use xvcg to view this graph:
 /ben/goetz/bin/xvcg GRAPHNAME
diff --git a/testprograms/ref-results/set_a.vcg b/testprograms/ref-results/set_a.vcg
deleted file mode 100644 (file)
index 4254dfb..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-graph: { title: "ir graph of set_a"
-display_edge_labels: no
-layoutalgorithm: mindepth
-manhattan_edges: yes
-port_sharing: no
-orientation: bottom_to_top
-classname 1: "Data"
-classname 2: "Block"
-classname 3: "Entity type"
-classname 4: "Entity owner"
-classname 5: "Method Param"
-classname 6: "Method Res"
-classname 7: "Super"
-classname 8: "Union"
-classname 9: "Points-to"
-classname 10: "Array Element Type"
-classname 11: "Overwrites"
-classname 12: "Member"
-
-graph: { title: "n225" label: "225" status:clustered color:yellow
-edge: {sourcename: "n225" targetname: "n226" label: "0" color: red}
-node: {title: "n224" label: "End  224" color: blue info1: "visited: 16
-"}
-}
-
-graph: { title: "n227" label: "227" status:clustered color:yellow
-edge: {sourcename: "n227" targetname: "n228" label: "0" color: red}
-node: {title: "n226" label: "Return  226"  info1: "visited: 17
-return in method of type set_a
-"}
-edge: {sourcename: "n226" targetname: "n231" label: "0" color: blue}
-node: {title: "n231" label: "ProjM 0 231" color: yellow info1: "visited: 17
-"}
-edge: {sourcename: "n231" targetname: "n232" label: "0" color: blue}
-node: {title: "n232" label: "Store  232"  info1: "visited: 17
-"}
-edge: {sourcename: "n232" targetname: "n237" label: "0" color: blue}
-edge: {sourcename: "n232" targetname: "n235" label: "1" }
-edge: {sourcename: "n232" targetname: "n233" label: "2" }
-node: {title: "n233" label: "ProjIs 1 233" color: yellow info1: "visited: 17
-"}
-edge: {sourcename: "n233" targetname: "n234" label: "0" }
-node: {title: "n235" label: "Sel a 235"  info1: "visited: 17
-Selecting entity of type int
-  from entity of type PRIMA
-"}
-edge: {sourcename: "n235" targetname: "n237" label: "0" color: blue}
-edge: {sourcename: "n235" targetname: "n236" label: "1" }
-node: {title: "n236" label: "ProjP 0 236" color: yellow info1: "visited: 17
-"}
-edge: {sourcename: "n236" targetname: "n234" label: "0" }
-}
-
-graph: { title: "n229" label: "229" status:clustered color:yellow
-edge: {sourcename: "n229" targetname: "n228" label: "0" color: red}
-node: {title: "n228" label: "ProjX 0 228" color: yellow info1: "visited: 18
-"}
-edge: {sourcename: "n228" targetname: "n230" label: "0" color: red}
-node: {title: "n230" label: "Start  230" color: blue info1: "visited: 18
-start of method of type set_a
-  param 0 type: class_prima_ptr
-  param 1 type: int
-"}
-node: {title: "n234" label: "ProjT 4 234" color: yellow info1: "visited: 18
-"}
-edge: {sourcename: "n234" targetname: "n230" label: "0" }
-node: {title: "n237" label: "ProjM 1 237" color: yellow info1: "visited: 18
-"}
-edge: {sourcename: "n237" targetname: "n230" label: "0" color: blue}
-}
-
-node: {title: "n240" label: "Bad  240"  info1: "visited: 0
-"}
-}
diff --git a/testprograms/run-results.txt b/testprograms/run-results.txt
deleted file mode 100644 (file)
index 7390ef2..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-./array-heap_example; ./empty; ./irr_cf_example; ./array-stack_example; ./global_var_example; ./irr_loop_example; ./call_str_example; ./if_else_example; ./memory_example; ./cond_example; ./if_example; ./oo_program_example; ./const_eval_example; ./if_while_example; ./three_cfpred_example; ./dead_block_example; ./inheritance_example; ./while_example; ./endless_loop; ./global_cse; ./oo_inline_example;
-
-Creating an IR graph: ARRAY-HEAP_EXAMPLE...
-Optimizing ...
-Dumping the graph and a type graph.
-use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: EMPTY...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: IRR_CF...
-Optimizing ...
-Dumping the graph and a control flow graph.
-Use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: ARRAY-STACK_EXAMPLE...
-Optimizing ...
-Dumping the graph and a type graph.
-Use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: GLOBAL_VAR ...
-Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: IRR_LOOP...
-Optimizing ...
-Dumping the graph and a control flow graph.
-Use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: CALL_STR_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-creating an IR graph: IF_ELSE_EXAMPLE...
-
-Optimizing ...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: MEMORY_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: COND_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: IF_EXAMPLE...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: OO_PROGRAM_EXAMPLE...
-Creating IR graph for set_a:
-Creating IR graph for c:
-Optimizing ...
-Dumping graphs of all procedures and a type graph.
-Use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: CONST_EVAL_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: IF_WHILE_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it with out-edges.
-Use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: ...
-Optimizing ...
-Dumping the graph and a control flow graph.
-Use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: DEAD_BLOCK...
-Optimizing ...
-Dumping the graph and a control flow graph.
-Use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating type information...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: WHILE_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: ENDLESS_LOOP_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it.
-Use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: GLOBAL_CSE_EXAMPLE...
-Optimizing ...
-Done building the graph.  Dumping it.
-use xvcg to view this graph:
-/ben/goetz/bin/xvcg GRAPHNAME
-
-
-Creating an IR graph: OO_INLINE_EXAMPLE...
-Creating IR graph for set_a:
-Creating IR graph for c:
-Inlining set_a ...
-INLINEing c ...
-Optimizing ...
-Dumping graphs of all procedures and a type graph.
-Use xvcg to view these graphs:
-/ben/goetz/bin/xvcg GRAPHNAME
index c6edb4d..eb8a1b5 100644 (file)
@@ -75,7 +75,7 @@ int main(int argc, char **argv)
 #define METHODNAME "THREE_CFPRED_EXAMPLE_main"
 #define NRARGS 1
 #define NRES 1
-  printf("\nCreating an IR graph: ...\n");
+  printf("\nCreating an IR graph: THREE_CFPRED_EXAMPLE ...\n");
 
   owner = get_glob_type();
   proc_main = new_type_method(id_from_str(METHODNAME, strlen(METHODNAME)),