Points-to sets of all variables
[]:<A: A f()>/%this -> [[]:NewObj{<MultiArray: void main(java.lang.String[])>[0@L4] new A}]
[]:<A: A f()>/a -> [[]:NewObj{<A: A f()>[11@L15] new A}]
[]:<A: A f()>/aa -> [[]:NewObj{<A: A f()>[25@L19] newarray A[%intconst2]}]
[]:<A: A f()>/arr -> [[]:NewObj{<A: A f()>[6@L14] newmultiarray A[%intconst1][%intconst1][%intconst1]}]
[]:<A: A f()>/arr2 -> [[]:NewObj{<A: A f()>[21@L18] newmultiarray A[%intconst0][%intconst0][]}]
[]:<A: A f()>/iarr -> [[]:NewObj{<A: A f()>[1@L11] newarray int[%intconst0]}]
[]:<A: A f()>/temp$12 -> [[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[][] in <A: A f()>}]
[]:<A: A f()>/temp$14 -> [[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[] in <A: A f()>}]
[]:<A: A f()>/temp$18 -> [[]:MultiArrayObj{alloc=arr2 = newmultiarray A[%intconst0][%intconst0][],type=A[][] in <A: A f()>}]
[]:<A: A f()>/temp$20 -> [[]:NewObj{<A: A f()>[25@L19] newarray A[%intconst2]}]
[]:<A: A f()>/temp$23 -> [[]:MultiArrayObj{alloc=arr2 = newmultiarray A[%intconst0][%intconst0][],type=A[][] in <A: A f()>}]
[]:<A: A f()>/temp$5 -> [[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[][] in <A: A f()>}]
[]:<A: A f()>/temp$7 -> [[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[] in <A: A f()>}]
[]:<A: A f()>/temp$9 -> [[]:NewObj{<A: A f()>[11@L15] new A}]
[]:<A: void <init>()>/%this -> [[]:NewObj{<A: A f()>[11@L15] new A}, []:NewObj{<MultiArray: void main(java.lang.String[])>[0@L4] new A}]
[]:<MultiArray: void main(java.lang.String[])>/a -> [[]:NewObj{<A: A f()>[11@L15] new A}]
[]:<MultiArray: void main(java.lang.String[])>/args -> [[]:EntryPointObj{alloc=MethodParam{<MultiArray: void main(java.lang.String[])>/0},type=java.lang.String[] in <MultiArray: void main(java.lang.String[])>}]
[]:<MultiArray: void main(java.lang.String[])>/temp$0 -> [[]:NewObj{<MultiArray: void main(java.lang.String[])>[0@L4] new A}]
[]:<MultiArray: void main(java.lang.String[])>/temp$1 -> [[]:NewObj{<A: A f()>[11@L15] new A}]

Points-to sets of all static fields

Points-to sets of all instance fields

Points-to sets of all array indexes
[]:EntryPointObj{alloc=MethodParam{<MultiArray: void main(java.lang.String[])>/0},type=java.lang.String[] in <MultiArray: void main(java.lang.String[])>}[*] -> [[]:EntryPointObj{alloc=MethodParam{<MultiArray: void main(java.lang.String[])>/0}[*],type=java.lang.String in <MultiArray: void main(java.lang.String[])>}]
[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[] in <A: A f()>}[*] -> [[]:NewObj{<A: A f()>[11@L15] new A}]
[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[][] in <A: A f()>}[*] -> [[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[] in <A: A f()>}]
[]:MultiArrayObj{alloc=arr2 = newmultiarray A[%intconst0][%intconst0][],type=A[][] in <A: A f()>}[*] -> [[]:NewObj{<A: A f()>[25@L19] newarray A[%intconst2]}]
[]:NewObj{<A: A f()>[21@L18] newmultiarray A[%intconst0][%intconst0][]}[*] -> [[]:MultiArrayObj{alloc=arr2 = newmultiarray A[%intconst0][%intconst0][],type=A[][] in <A: A f()>}]
[]:NewObj{<A: A f()>[6@L14] newmultiarray A[%intconst1][%intconst1][%intconst1]}[*] -> [[]:MultiArrayObj{alloc=arr = newmultiarray A[%intconst1][%intconst1][%intconst1],type=A[][] in <A: A f()>}]

