First implementation of lowering for calls with compound return values
[libfirm] / testprograms / ref-results / IF_EXAMPLE_main.vcg
index 67e2884..a163cc2 100644 (file)
@@ -5,12 +5,7 @@ manhattan_edges: yes
 port_sharing: no
 orientation: bottom_to_top
 classname 1:  "intrablock Data"
-classname 16: "interblock Data"
 classname 2:  "Block"
-classname 13: "Control Flow"
-classname 14: "intrablock Memory"
-classname 17: "interblock Memory"
-classname 15: "Dominators"
 classname 3:  "Entity type"
 classname 4:  "Entity owner"
 classname 5:  "Method Param"
@@ -21,136 +16,360 @@ classname 9:  "Points-to"
 classname 10: "Array Element Type"
 classname 11: "Overwrites"
 classname 12: "Member"
+classname 13: "Control Flow"
+classname 14: "intrablock Memory"
+classname 15: "Dominators"
+classname 16: "interblock Data"
+classname 17: "interblock Memory"
+classname 18: "Exception Control Flow for Interval Analysis"
+classname 19: "Postdominators"
 infoname 1: "Attribute"
 infoname 2: "Verification errors"
+infoname 3: "Debug info"
+colorentry 100:    0   0    0
+colorentry 101:   20   0    0
+colorentry 102:   40   0    0
+colorentry 103:   60   0    0
+colorentry 104:   80   0    0
+colorentry 105:  100   0    0
+colorentry 106:  120   0    0
+colorentry 107:  140   0    0
+colorentry 108:  150   0    0
+colorentry 109:  180   0    0
+colorentry 110:  200   0    0
+colorentry 111:  220   0    0
+colorentry 112:  240   0    0
+colorentry 113:  255   0    0
+colorentry 113:  255  20   20
+colorentry 114:  255  40   40
+colorentry 115:  255  60   60
+colorentry 116:  255  80   80
+colorentry 117:  255 100  100
+colorentry 118:  255 120  120
+colorentry 119:  255 140  140
+colorentry 120:  255 150  150
+colorentry 121:  255 180  180
+colorentry 122:  255 200  200
+colorentry 123:  255 220  220
+colorentry 124:  255 240  240
+colorentry 125:  255 250  250
 
-graph: { title: "g25" label: "IF_EXAMPLE_main" status:clustered color:white
-graph: { title: "n15"  label: "Block 15" status:clustered color:yellow
-edge: {sourcename: "n15" targetname: "n49" label: "0" class:13 priority:60 color:red}
-node: {title: "n16" label: "End  16"  info1: "mode:    X
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 0
-"color: blue}
+graph: { title: "g30" label: "IF_EXAMPLE_main" status:clustered color:white
+info1: "entity IF_EXAMPLE_main (16)
+  type:  IF_EXAMPLE_main (14)
+  owner: GlobalType (0)
+  Does not overwrite other entities.
+  Is not overwritten by other entities.
+  allocation:  allocation_static
+  visibility:  visibility_local
+  variability: variability_constant
+  calling convention: cdecl
+  atomic value: SymC &IF_EXAMPLE_main
+  volatility:  volatility_non_volatile
+  peculiarity: peculiarity_existent
+  ld_name: no yet set
+  offset:  -1 bits, -1 bytes
+  irg = 30
+
+"
+graph: { title: "n19"  label: "Block 19" status:clustered color:yellow
+ info1: "Block 19
+  mode:    BB
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+     0:    Return 54
+  Private Attributes:
+  backedges:
+  block visited: 0
+  Execution freqency statistics:
+"
+edge: {sourcename: "n19" targetname: "n54" label: "0" class:13 priority:60 color:red}
+node: {title: "n20" label: "End 20"  info1: "End 20
+  mode:    X
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   0
+  pred nodes:
+    -1:    Block 19
+  Private Attributes:
+"
+color:blue}
 }
 
-graph: { title: "n40"  label: "Block 40" status:clustered color:yellow
-edge: {sourcename: "n40" targetname: "n32" label: "0" class:13 priority:60 color:red}
-edge: {sourcename: "n40" targetname: "n39" label: "1" class:13 priority:60 color:red}
-node: {title: "n49" label: "Return  49"  info1: "mode:    X
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 2
-return in method of type IF_EXAMPLE_main
-  res 0 type: int
-"}
-edge: {sourcename: "n49" targetname: "n23" label: "0" class:17 priority:10 color:blue}
-edge: {sourcename: "n49" targetname: "n42" label: "1" class:1  priority:50}
-node: {title: "n42" label: "PhiIs  42"  info1: "mode:    Is
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 2 backedges:
-"color: green}
-edge: {sourcename: "n42" targetname: "n27" label: "0" class:16 priority:10}
-edge: {sourcename: "n42" targetname: "n37" label: "1" class:16 priority:10}
+graph: { title: "n45"  label: "Block 45" status:clustered color:yellow
+ info1: "Block 45
+  mode:    BB
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   2
+  pred nodes:
+     0:    Proj 37
+     1:    Jmp 44
+  Private Attributes:
+  backedges:
+  block visited: 0
+  Execution freqency statistics:
+"
+edge: {sourcename: "n45" targetname: "n37" label: "0" class:13 priority:60 color:red}
+edge: {sourcename: "n45" targetname: "n44" label: "1" class:13 priority:60 color:red}
+node: {title: "n54" label: "Return 54"  info1: "Return 54
+  mode:    X
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   2
+  pred nodes:
+    -1:    Block 45
+     0:    Proj 28
+     1:    Phi 47
+  Private Attributes:
+  return in method of type IF_EXAMPLE_main
+    res 0 type: int
+"
+}
+edge: {sourcename: "n54" targetname: "n28" label: "0" class:17 priority:10 color:blue}
+edge: {sourcename: "n54" targetname: "n47" label: "1" class:1  priority:50}
+node: {title: "n47" label: "PhiIs 47"  info1: "Phi 47
+  mode:    Is
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   2
+  pred nodes:
+    -1:    Block 45
+     0:    Proj 32
+     1:    Sub 42
+  Private Attributes:
+  backedges:
+"
+color:green}
+edge: {sourcename: "n47" targetname: "n32" label: "0" class:16 priority:10}
+edge: {sourcename: "n47" targetname: "n42" label: "1" class:16 priority:10}
 }
 
-graph: { title: "n34"  label: "Block 34" status:clustered color:yellow
-edge: {sourcename: "n34" targetname: "n33" label: "0" class:13 priority:60 color:red}
-node: {title: "n37" label: "SubIs  37"  info1: "mode:    Is
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 2
-"}
-edge: {sourcename: "n37" targetname: "n27" label: "0" class:16 priority:10}
-edge: {sourcename: "n37" targetname: "n35" label: "1" class:16 priority:10}
-node: {title: "n39" label: "Jmp  39"  info1: "mode:    X
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 0
-"}
+graph: { title: "n39"  label: "Block 39" status:clustered color:yellow
+ info1: "Block 39
+  mode:    BB
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+     0:    Proj 38
+  Private Attributes:
+  backedges:
+  block visited: 0
+  Execution freqency statistics:
+"
+edge: {sourcename: "n39" targetname: "n38" label: "0" class:13 priority:60 color:red}
+node: {title: "n42" label: "SubIs 42"  info1: "Sub 42
+  mode:    Is
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   2
+  pred nodes:
+    -1:    Block 39
+     0:    Proj 32
+     1:    0x3 40
+  Private Attributes:
+"
+}
+edge: {sourcename: "n42" targetname: "n32" label: "0" class:16 priority:10}
+edge: {sourcename: "n42" targetname: "n40" label: "1" class:16 priority:10}
+node: {title: "n44" label: "Jmp 44"  info1: "Jmp 44
+  mode:    X
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   0
+  pred nodes:
+    -1:    Block 39
+  Private Attributes:
+"
+}
 }
 
-graph: { title: "n26"  label: "Block 26" status:clustered color:yellow
-edge: {sourcename: "n26" targetname: "n20" label: "0" class:13 priority:60 color:red}
-node: {title: "n32" label: "ProjX 0 32"  info1: "mode:    X
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"color: yellow}
-edge: {sourcename: "n32" targetname: "n31" label: "0" class:13 priority:60 color:red}
-node: {title: "n33" label: "ProjX 1 33"  info1: "mode:    X
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"color: yellow}
-edge: {sourcename: "n33" targetname: "n31" label: "0" class:13 priority:60 color:red}
-node: {title: "n31" label: "Cond  31"  info1: "mode:    T
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"}
-edge: {sourcename: "n31" targetname: "n30" label: "0" class:1  priority:50}
-node: {title: "n30" label: "Projb Eq 30"  info1: "mode:    b
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"color: yellow}
-edge: {sourcename: "n30" targetname: "n29" label: "0" class:1  priority:50}
-node: {title: "n29" label: "CmpT  29"  info1: "mode:    T
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 2
-"}
-edge: {sourcename: "n29" targetname: "n27" label: "0" class:1  priority:50}
-edge: {sourcename: "n29" targetname: "n28" label: "1" class:16 priority:10}
-node: {title: "n27" label: "ProjIs 0 27"  info1: "mode:    Is
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"color: yellow}
-edge: {sourcename: "n27" targetname: "n24" label: "0" class:16 priority:10}
+graph: { title: "n31"  label: "Block 31" status:clustered color:yellow
+ info1: "Block 31
+  mode:    BB
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+     0:    Proj 25
+  Private Attributes:
+  backedges:
+  block visited: 0
+  Execution freqency statistics:
+"
+edge: {sourcename: "n31" targetname: "n25" label: "0" class:13 priority:60 color:red}
+node: {title: "n37" label: "ProjX false 37"  info1: "Proj 37
+  mode:    X
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 31
+     0:    Cond 36
+  Private Attributes:
+  proj nr: 0
+"
+color:yellow}
+edge: {sourcename: "n37" targetname: "n36" label: "0" class:13 priority:60 color:red}
+node: {title: "n38" label: "ProjX true 38"  info1: "Proj 38
+  mode:    X
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 31
+     0:    Cond 36
+  Private Attributes:
+  proj nr: 1
+"
+color:yellow}
+edge: {sourcename: "n38" targetname: "n36" label: "0" class:13 priority:60 color:red}
+node: {title: "n36" label: "Cond 36"  info1: "Cond 36
+  mode:    T
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 31
+     0:    Proj 35
+  Private Attributes:
+  condition kind: dense
+  default ProjNr: 0
+"
+}
+edge: {sourcename: "n36" targetname: "n35" label: "0" class:1  priority:50}
+node: {title: "n35" label: "Projb Eq 35"  info1: "Proj 35
+  mode:    b
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 31
+     0:    Cmp 34
+  Private Attributes:
+  proj nr: 1
+"
+color:yellow}
+edge: {sourcename: "n35" targetname: "n34" label: "0" class:1  priority:50}
+node: {title: "n34" label: "Cmp 34"  info1: "Cmp 34
+  mode:    T
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   2
+  pred nodes:
+    -1:    Block 31
+     0:    Proj 32
+     1:    0x2 33
+  Private Attributes:
+"
+}
+edge: {sourcename: "n34" targetname: "n32" label: "0" class:1  priority:50}
+edge: {sourcename: "n34" targetname: "n33" label: "1" class:16 priority:10}
+node: {title: "n32" label: "ProjIs Arg 0 32"  info1: "Proj 32
+  mode:    Is
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 31
+     0:    Proj 29
+  Private Attributes:
+  proj nr: 0
+"
+color:yellow}
+edge: {sourcename: "n32" targetname: "n29" label: "0" class:16 priority:10}
 }
 
-graph: { title: "n17"  label: "Block 17" status:clustered color:yellow
-edge: {sourcename: "n17" targetname: "n20" label: "0" class:13 priority:60 color:red}
-node: {title: "n23" label: "ProjM 1 23"  info1: "mode:    M
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"color: yellow}
-edge: {sourcename: "n23" targetname: "n18" label: "0" class:17 priority:10 color:blue}
-node: {title: "n35" label: "0x3Is  35"  info1: "mode:    Is
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 0
-Const of type type_unknown
-"color: yellow}
-node: {title: "n24" label: "ProjT 4 24"  info1: "mode:    T
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"color: yellow}
-edge: {sourcename: "n24" targetname: "n18" label: "0" class:1  priority:50}
-node: {title: "n28" label: "0x2Is  28"  info1: "mode:    Is
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 0
-Const of type type_unknown
-"color: yellow}
-node: {title: "n20" label: "ProjX 0 20"  info1: "mode:    X
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 1
-"color: yellow}
-edge: {sourcename: "n20" targetname: "n18" label: "0" class:13 priority:60 color:red}
-node: {title: "n18" label: "Start  18"  info1: "mode:    T
-visited: 8
-irg:     IF_EXAMPLE_main
-arity: 0
-start of method of type IF_EXAMPLE_main
-  param 0 type: int
-"color: blue}
+graph: { title: "n21"  label: "Block 21" status:clustered color:yellow
+ info1: "Block 21
+  mode:    BB
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+     0:    Proj 25
+  Private Attributes:
+  backedges:
+  block visited: 0
+  Execution freqency statistics:
+"
+edge: {sourcename: "n21" targetname: "n25" label: "0" class:13 priority:60 color:red}
+node: {title: "n28" label: "ProjM 1 28"  info1: "Proj 28
+  mode:    M
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 21
+     0:    Start 22
+  Private Attributes:
+  proj nr: 1
+"
+color:yellow}
+edge: {sourcename: "n28" targetname: "n22" label: "0" class:17 priority:10 color:blue}
+node: {title: "n40" label: "0x3Is 40"  info1: "0x3 40
+  mode:    Is
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   0
+  pred nodes:
+    -1:    Block 21
+  Private Attributes:
+  Const of type type_unknown
+"
+color:yellow}
+node: {title: "n29" label: "ProjT T_args 29"  info1: "Proj 29
+  mode:    T
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 21
+     0:    Start 22
+  Private Attributes:
+  proj nr: 4
+"
+color:yellow}
+edge: {sourcename: "n29" targetname: "n22" label: "0" class:1  priority:50}
+node: {title: "n33" label: "0x2Is 33"  info1: "0x2 33
+  mode:    Is
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   0
+  pred nodes:
+    -1:    Block 21
+  Private Attributes:
+  Const of type type_unknown
+"
+color:yellow}
+node: {title: "n25" label: "ProjX X_initial_exec 25"  info1: "Proj 25
+  mode:    X
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   1
+  pred nodes:
+    -1:    Block 21
+     0:    Start 22
+  Private Attributes:
+  proj nr: 0
+"
+color:yellow}
+edge: {sourcename: "n25" targetname: "n22" label: "0" class:13 priority:60 color:red}
+node: {title: "n22" label: "Start 22"  info1: "Start 22
+  mode:    T
+  visited: 8
+  irg:     IF_EXAMPLE_main
+  arity:   0
+  pred nodes:
+    -1:    Block 21
+  Private Attributes:
+  start of method of type IF_EXAMPLE_main
+    param 0 type: int
+"
+color:blue}
 }
 
 }