Remove context sensitivity concerns from interprocedural-basic-aa, and
[oota-llvm.git] / test / Analysis / BasicAA / args-rets-allocas-loads.ll
1 ; RUN: opt -interprocedural-basic-aa -interprocedural-aa-eval -print-all-alias-modref-info -disable-output < %s |& FileCheck --check-prefix=IPAA %s
2 ; RUN: opt -basicaa -aa-eval -print-all-alias-modref-info -disable-output < %s |& FileCheck --check-prefix=FUNCAA %s
3
4 declare void @callee(double* %callee_arg)
5 declare void @nocap_callee(double* nocapture %nocap_callee_arg)
6
7 declare double* @normal_returner()
8 declare noalias double* @noalias_returner()
9
10 define void @caller_a(double* %arg_a0,
11                       double* %arg_a1,
12                       double* noalias %noalias_arg_a0,
13                       double* noalias %noalias_arg_a1,
14                       double** %indirect_a0,
15                       double** %indirect_a1) {
16   %loaded_a0 = load double** %indirect_a0
17   %loaded_a1 = load double** %indirect_a1
18
19   %escape_alloca_a0 = alloca double
20   %escape_alloca_a1 = alloca double
21   %noescape_alloca_a0 = alloca double
22   %noescape_alloca_a1 = alloca double
23
24   %normal_ret_a0 = call double* @normal_returner()
25   %normal_ret_a1 = call double* @normal_returner()
26   %noalias_ret_a0 = call double* @noalias_returner()
27   %noalias_ret_a1 = call double* @noalias_returner()
28
29   call void @callee(double* %escape_alloca_a0)
30   call void @callee(double* %escape_alloca_a1)
31   call void @nocap_callee(double* %noescape_alloca_a0)
32   call void @nocap_callee(double* %noescape_alloca_a1)
33
34   store double 0.0, double* %loaded_a0
35   store double 0.0, double* %loaded_a1
36   store double 0.0, double* %arg_a0
37   store double 0.0, double* %arg_a1
38   store double 0.0, double* %noalias_arg_a0
39   store double 0.0, double* %noalias_arg_a1
40   store double 0.0, double* %escape_alloca_a0
41   store double 0.0, double* %escape_alloca_a1
42   store double 0.0, double* %noescape_alloca_a0
43   store double 0.0, double* %noescape_alloca_a1
44   store double 0.0, double* %normal_ret_a0
45   store double 0.0, double* %normal_ret_a1
46   store double 0.0, double* %noalias_ret_a0
47   store double 0.0, double* %noalias_ret_a1
48   ret void
49 }
50
51 ; caller_b is the same as caller_a but with different names, to test
52 ; interprocedural queries.
53 define void @caller_b(double* %arg_b0,
54                       double* %arg_b1,
55                       double* noalias %noalias_arg_b0,
56                       double* noalias %noalias_arg_b1,
57                       double** %indirect_b0,
58                       double** %indirect_b1) {
59   %loaded_b0 = load double** %indirect_b0
60   %loaded_b1 = load double** %indirect_b1
61
62   %escape_alloca_b0 = alloca double
63   %escape_alloca_b1 = alloca double
64   %noescape_alloca_b0 = alloca double
65   %noescape_alloca_b1 = alloca double
66
67   %normal_ret_b0 = call double* @normal_returner()
68   %normal_ret_b1 = call double* @normal_returner()
69   %noalias_ret_b0 = call double* @noalias_returner()
70   %noalias_ret_b1 = call double* @noalias_returner()
71
72   call void @callee(double* %escape_alloca_b0)
73   call void @callee(double* %escape_alloca_b1)
74   call void @nocap_callee(double* %noescape_alloca_b0)
75   call void @nocap_callee(double* %noescape_alloca_b1)
76
77   store double 0.0, double* %loaded_b0
78   store double 0.0, double* %loaded_b1
79   store double 0.0, double* %arg_b0
80   store double 0.0, double* %arg_b1
81   store double 0.0, double* %noalias_arg_b0
82   store double 0.0, double* %noalias_arg_b1
83   store double 0.0, double* %escape_alloca_b0
84   store double 0.0, double* %escape_alloca_b1
85   store double 0.0, double* %noescape_alloca_b0
86   store double 0.0, double* %noescape_alloca_b1
87   store double 0.0, double* %normal_ret_b0
88   store double 0.0, double* %normal_ret_b1
89   store double 0.0, double* %noalias_ret_b0
90   store double 0.0, double* %noalias_ret_b1
91   ret void
92 }
93
94 ; FUNCAA: Function: caller_a: 16 pointers, 8 call sites
95 ; FUNCAA:   MayAlias:   double* %arg_a0, double* %arg_a1
96 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %noalias_arg_a0
97 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %noalias_arg_a0
98 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %noalias_arg_a1
99 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %noalias_arg_a1
100 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double* %noalias_arg_a1
101 ; FUNCAA:   MayAlias:   double* %arg_a0, double** %indirect_a0
102 ; FUNCAA:   MayAlias:   double* %arg_a1, double** %indirect_a0
103 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double** %indirect_a0
104 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double** %indirect_a0
105 ; FUNCAA:   MayAlias:   double* %arg_a0, double** %indirect_a1
106 ; FUNCAA:   MayAlias:   double* %arg_a1, double** %indirect_a1
107 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double** %indirect_a1
108 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double** %indirect_a1
109 ; FUNCAA:   MayAlias:   double** %indirect_a0, double** %indirect_a1
110 ; FUNCAA:   MayAlias:   double* %arg_a0, double* %loaded_a0
111 ; FUNCAA:   MayAlias:   double* %arg_a1, double* %loaded_a0
112 ; FUNCAA:   NoAlias:    double* %loaded_a0, double* %noalias_arg_a0
113 ; FUNCAA:   NoAlias:    double* %loaded_a0, double* %noalias_arg_a1
114 ; FUNCAA:   MayAlias:   double* %loaded_a0, double** %indirect_a0
115 ; FUNCAA:   MayAlias:   double* %loaded_a0, double** %indirect_a1
116 ; FUNCAA:   MayAlias:   double* %arg_a0, double* %loaded_a1
117 ; FUNCAA:   MayAlias:   double* %arg_a1, double* %loaded_a1
118 ; FUNCAA:   NoAlias:    double* %loaded_a1, double* %noalias_arg_a0
119 ; FUNCAA:   NoAlias:    double* %loaded_a1, double* %noalias_arg_a1
120 ; FUNCAA:   MayAlias:   double* %loaded_a1, double** %indirect_a0
121 ; FUNCAA:   MayAlias:   double* %loaded_a1, double** %indirect_a1
122 ; FUNCAA:   MayAlias:   double* %loaded_a0, double* %loaded_a1
123 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %escape_alloca_a0
124 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %escape_alloca_a0
125 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double* %noalias_arg_a0
126 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double* %noalias_arg_a1
127 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double** %indirect_a0
128 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double** %indirect_a1
129 ; FUNCAA:   MayAlias:   double* %escape_alloca_a0, double* %loaded_a0
130 ; FUNCAA:   MayAlias:   double* %escape_alloca_a0, double* %loaded_a1
131 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %escape_alloca_a1
132 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %escape_alloca_a1
133 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double* %noalias_arg_a0
134 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double* %noalias_arg_a1
135 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double** %indirect_a0
136 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double** %indirect_a1
137 ; FUNCAA:   MayAlias:   double* %escape_alloca_a1, double* %loaded_a0
138 ; FUNCAA:   MayAlias:   double* %escape_alloca_a1, double* %loaded_a1
139 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double* %escape_alloca_a1
140 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %noescape_alloca_a0
141 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %noescape_alloca_a0
142 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double* %noescape_alloca_a0
143 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double* %noescape_alloca_a0
144 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a0, double** %indirect_a0
145 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a0, double** %indirect_a1
146 ; FUNCAA:   NoAlias:    double* %loaded_a0, double* %noescape_alloca_a0
147 ; FUNCAA:   NoAlias:    double* %loaded_a1, double* %noescape_alloca_a0
148 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double* %noescape_alloca_a0
149 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double* %noescape_alloca_a0
150 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %noescape_alloca_a1
151 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %noescape_alloca_a1
152 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double* %noescape_alloca_a1
153 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double* %noescape_alloca_a1
154 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a1, double** %indirect_a0
155 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a1, double** %indirect_a1
156 ; FUNCAA:   NoAlias:    double* %loaded_a0, double* %noescape_alloca_a1
157 ; FUNCAA:   NoAlias:    double* %loaded_a1, double* %noescape_alloca_a1
158 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double* %noescape_alloca_a1
159 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double* %noescape_alloca_a1
160 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a0, double* %noescape_alloca_a1
161 ; FUNCAA:   MayAlias:   double* %arg_a0, double* %normal_ret_a0
162 ; FUNCAA:   MayAlias:   double* %arg_a1, double* %normal_ret_a0
163 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double* %normal_ret_a0
164 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double* %normal_ret_a0
165 ; FUNCAA:   MayAlias:   double* %normal_ret_a0, double** %indirect_a0
166 ; FUNCAA:   MayAlias:   double* %normal_ret_a0, double** %indirect_a1
167 ; FUNCAA:   MayAlias:   double* %loaded_a0, double* %normal_ret_a0
168 ; FUNCAA:   MayAlias:   double* %loaded_a1, double* %normal_ret_a0
169 ; FUNCAA:   MayAlias:   double* %escape_alloca_a0, double* %normal_ret_a0
170 ; FUNCAA:   MayAlias:   double* %escape_alloca_a1, double* %normal_ret_a0
171 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a0, double* %normal_ret_a0
172 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a1, double* %normal_ret_a0
173 ; FUNCAA:   MayAlias:   double* %arg_a0, double* %normal_ret_a1
174 ; FUNCAA:   MayAlias:   double* %arg_a1, double* %normal_ret_a1
175 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double* %normal_ret_a1
176 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double* %normal_ret_a1
177 ; FUNCAA:   MayAlias:   double* %normal_ret_a1, double** %indirect_a0
178 ; FUNCAA:   MayAlias:   double* %normal_ret_a1, double** %indirect_a1
179 ; FUNCAA:   MayAlias:   double* %loaded_a0, double* %normal_ret_a1
180 ; FUNCAA:   MayAlias:   double* %loaded_a1, double* %normal_ret_a1
181 ; FUNCAA:   MayAlias:   double* %escape_alloca_a0, double* %normal_ret_a1
182 ; FUNCAA:   MayAlias:   double* %escape_alloca_a1, double* %normal_ret_a1
183 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a0, double* %normal_ret_a1
184 ; FUNCAA:   NoAlias:    double* %noescape_alloca_a1, double* %normal_ret_a1
185 ; FUNCAA:   MayAlias:   double* %normal_ret_a0, double* %normal_ret_a1
186 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %noalias_ret_a0
187 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %noalias_ret_a0
188 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double* %noalias_ret_a0
189 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double* %noalias_ret_a0
190 ; FUNCAA:   NoAlias:    double* %noalias_ret_a0, double** %indirect_a0
191 ; FUNCAA:   NoAlias:    double* %noalias_ret_a0, double** %indirect_a1
192 ; FUNCAA:   NoAlias:    double* %loaded_a0, double* %noalias_ret_a0
193 ; FUNCAA:   NoAlias:    double* %loaded_a1, double* %noalias_ret_a0
194 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double* %noalias_ret_a0
195 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double* %noalias_ret_a0
196 ; FUNCAA:   NoAlias:    double* %noalias_ret_a0, double* %noescape_alloca_a0
197 ; FUNCAA:   NoAlias:    double* %noalias_ret_a0, double* %noescape_alloca_a1
198 ; FUNCAA:   NoAlias:    double* %noalias_ret_a0, double* %normal_ret_a0
199 ; FUNCAA:   NoAlias:    double* %noalias_ret_a0, double* %normal_ret_a1
200 ; FUNCAA:   NoAlias:    double* %arg_a0, double* %noalias_ret_a1
201 ; FUNCAA:   NoAlias:    double* %arg_a1, double* %noalias_ret_a1
202 ; FUNCAA:   NoAlias:    double* %noalias_arg_a0, double* %noalias_ret_a1
203 ; FUNCAA:   NoAlias:    double* %noalias_arg_a1, double* %noalias_ret_a1
204 ; FUNCAA:   NoAlias:    double* %noalias_ret_a1, double** %indirect_a0
205 ; FUNCAA:   NoAlias:    double* %noalias_ret_a1, double** %indirect_a1
206 ; FUNCAA:   NoAlias:    double* %loaded_a0, double* %noalias_ret_a1
207 ; FUNCAA:   NoAlias:    double* %loaded_a1, double* %noalias_ret_a1
208 ; FUNCAA:   NoAlias:    double* %escape_alloca_a0, double* %noalias_ret_a1
209 ; FUNCAA:   NoAlias:    double* %escape_alloca_a1, double* %noalias_ret_a1
210 ; FUNCAA:   NoAlias:    double* %noalias_ret_a1, double* %noescape_alloca_a0
211 ; FUNCAA:   NoAlias:    double* %noalias_ret_a1, double* %noescape_alloca_a1
212 ; FUNCAA:   NoAlias:    double* %noalias_ret_a1, double* %normal_ret_a0
213 ; FUNCAA:   NoAlias:    double* %noalias_ret_a1, double* %normal_ret_a1
214 ; FUNCAA:   NoAlias:    double* %noalias_ret_a0, double* %noalias_ret_a1
215 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
216 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
217 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
218 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
219 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
220 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
221 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
222 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
223 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
224 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
225 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a0 <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
226 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a1 <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
227 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
228 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
229 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a0     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
230 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a1     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
231 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
232 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
233 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
234 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
235 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
236 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
237 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
238 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
239 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
240 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
241 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a0 <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
242 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a1 <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
243 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
244 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
245 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a0     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
246 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a1     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
247 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
248 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
249 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
250 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
251 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
252 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
253 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
254 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
255 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
256 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
257 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a0 <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
258 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a1 <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
259 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
260 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
261 ; FUNCAA:     ModRef:  Ptr: double* %noalias_ret_a0     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
262 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a1     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
263 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
264 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
265 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
266 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
267 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
268 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
269 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
270 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
271 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
272 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
273 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a0 <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
274 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a1 <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
275 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
276 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
277 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a0     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
278 ; FUNCAA:     ModRef:  Ptr: double* %noalias_ret_a1     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
279 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  call void @callee(double* %escape_alloca_a0)
280 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  call void @callee(double* %escape_alloca_a0)
281 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  call void @callee(double* %escape_alloca_a0)
282 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  call void @callee(double* %escape_alloca_a0)
283 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  call void @callee(double* %escape_alloca_a0)
284 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  call void @callee(double* %escape_alloca_a0)
285 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  call void @callee(double* %escape_alloca_a0)
286 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  call void @callee(double* %escape_alloca_a0)
287 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  call void @callee(double* %escape_alloca_a0)
288 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  call void @callee(double* %escape_alloca_a0)
289 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a0 <->  call void @callee(double* %escape_alloca_a0)
290 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a1 <->  call void @callee(double* %escape_alloca_a0)
291 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  call void @callee(double* %escape_alloca_a0)
292 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  call void @callee(double* %escape_alloca_a0)
293 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a0     <->  call void @callee(double* %escape_alloca_a0)
294 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a1     <->  call void @callee(double* %escape_alloca_a0)
295 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  call void @callee(double* %escape_alloca_a1)
296 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  call void @callee(double* %escape_alloca_a1)
297 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  call void @callee(double* %escape_alloca_a1)
298 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  call void @callee(double* %escape_alloca_a1)
299 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  call void @callee(double* %escape_alloca_a1)
300 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  call void @callee(double* %escape_alloca_a1)
301 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  call void @callee(double* %escape_alloca_a1)
302 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  call void @callee(double* %escape_alloca_a1)
303 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  call void @callee(double* %escape_alloca_a1)
304 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  call void @callee(double* %escape_alloca_a1)
305 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a0 <->  call void @callee(double* %escape_alloca_a1)
306 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a1 <->  call void @callee(double* %escape_alloca_a1)
307 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  call void @callee(double* %escape_alloca_a1)
308 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  call void @callee(double* %escape_alloca_a1)
309 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a0     <->  call void @callee(double* %escape_alloca_a1)
310 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a1     <->  call void @callee(double* %escape_alloca_a1)
311 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  call void @nocap_callee(double* %noescape_alloca_a0)
312 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  call void @nocap_callee(double* %noescape_alloca_a0)
313 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  call void @nocap_callee(double* %noescape_alloca_a0)
314 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  call void @nocap_callee(double* %noescape_alloca_a0)
315 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  call void @nocap_callee(double* %noescape_alloca_a0)
316 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  call void @nocap_callee(double* %noescape_alloca_a0)
317 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  call void @nocap_callee(double* %noescape_alloca_a0)
318 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  call void @nocap_callee(double* %noescape_alloca_a0)
319 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  call void @nocap_callee(double* %noescape_alloca_a0)
320 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  call void @nocap_callee(double* %noescape_alloca_a0)
321 ; FUNCAA:     ModRef:  Ptr: double* %noescape_alloca_a0 <->  call void @nocap_callee(double* %noescape_alloca_a0)
322 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a1 <->  call void @nocap_callee(double* %noescape_alloca_a0)
323 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  call void @nocap_callee(double* %noescape_alloca_a0)
324 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  call void @nocap_callee(double* %noescape_alloca_a0)
325 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a0     <->  call void @nocap_callee(double* %noescape_alloca_a0)
326 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a1     <->  call void @nocap_callee(double* %noescape_alloca_a0)
327 ; FUNCAA:     ModRef:  Ptr: double* %arg_a0     <->  call void @nocap_callee(double* %noescape_alloca_a1)
328 ; FUNCAA:     ModRef:  Ptr: double* %arg_a1     <->  call void @nocap_callee(double* %noescape_alloca_a1)
329 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a0     <->  call void @nocap_callee(double* %noescape_alloca_a1)
330 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_a1     <->  call void @nocap_callee(double* %noescape_alloca_a1)
331 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a0       <->  call void @nocap_callee(double* %noescape_alloca_a1)
332 ; FUNCAA:     ModRef:  Ptr: double** %indirect_a1       <->  call void @nocap_callee(double* %noescape_alloca_a1)
333 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a0  <->  call void @nocap_callee(double* %noescape_alloca_a1)
334 ; FUNCAA:     ModRef:  Ptr: double* %loaded_a1  <->  call void @nocap_callee(double* %noescape_alloca_a1)
335 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a0   <->  call void @nocap_callee(double* %noescape_alloca_a1)
336 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_a1   <->  call void @nocap_callee(double* %noescape_alloca_a1)
337 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_a0 <->  call void @nocap_callee(double* %noescape_alloca_a1)
338 ; FUNCAA:     ModRef:  Ptr: double* %noescape_alloca_a1 <->  call void @nocap_callee(double* %noescape_alloca_a1)
339 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a0      <->  call void @nocap_callee(double* %noescape_alloca_a1)
340 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_a1      <->  call void @nocap_callee(double* %noescape_alloca_a1)
341 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a0     <->  call void @nocap_callee(double* %noescape_alloca_a1)
342 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_a1     <->  call void @nocap_callee(double* %noescape_alloca_a1)
343 ; FUNCAA: Function: caller_b: 16 pointers, 8 call sites
344 ; FUNCAA:   MayAlias:   double* %arg_b0, double* %arg_b1
345 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %noalias_arg_b0
346 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %noalias_arg_b0
347 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %noalias_arg_b1
348 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %noalias_arg_b1
349 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double* %noalias_arg_b1
350 ; FUNCAA:   MayAlias:   double* %arg_b0, double** %indirect_b0
351 ; FUNCAA:   MayAlias:   double* %arg_b1, double** %indirect_b0
352 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double** %indirect_b0
353 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double** %indirect_b0
354 ; FUNCAA:   MayAlias:   double* %arg_b0, double** %indirect_b1
355 ; FUNCAA:   MayAlias:   double* %arg_b1, double** %indirect_b1
356 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double** %indirect_b1
357 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double** %indirect_b1
358 ; FUNCAA:   MayAlias:   double** %indirect_b0, double** %indirect_b1
359 ; FUNCAA:   MayAlias:   double* %arg_b0, double* %loaded_b0
360 ; FUNCAA:   MayAlias:   double* %arg_b1, double* %loaded_b0
361 ; FUNCAA:   NoAlias:    double* %loaded_b0, double* %noalias_arg_b0
362 ; FUNCAA:   NoAlias:    double* %loaded_b0, double* %noalias_arg_b1
363 ; FUNCAA:   MayAlias:   double* %loaded_b0, double** %indirect_b0
364 ; FUNCAA:   MayAlias:   double* %loaded_b0, double** %indirect_b1
365 ; FUNCAA:   MayAlias:   double* %arg_b0, double* %loaded_b1
366 ; FUNCAA:   MayAlias:   double* %arg_b1, double* %loaded_b1
367 ; FUNCAA:   NoAlias:    double* %loaded_b1, double* %noalias_arg_b0
368 ; FUNCAA:   NoAlias:    double* %loaded_b1, double* %noalias_arg_b1
369 ; FUNCAA:   MayAlias:   double* %loaded_b1, double** %indirect_b0
370 ; FUNCAA:   MayAlias:   double* %loaded_b1, double** %indirect_b1
371 ; FUNCAA:   MayAlias:   double* %loaded_b0, double* %loaded_b1
372 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %escape_alloca_b0
373 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %escape_alloca_b0
374 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double* %noalias_arg_b0
375 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double* %noalias_arg_b1
376 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double** %indirect_b0
377 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double** %indirect_b1
378 ; FUNCAA:   MayAlias:   double* %escape_alloca_b0, double* %loaded_b0
379 ; FUNCAA:   MayAlias:   double* %escape_alloca_b0, double* %loaded_b1
380 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %escape_alloca_b1
381 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %escape_alloca_b1
382 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double* %noalias_arg_b0
383 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double* %noalias_arg_b1
384 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double** %indirect_b0
385 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double** %indirect_b1
386 ; FUNCAA:   MayAlias:   double* %escape_alloca_b1, double* %loaded_b0
387 ; FUNCAA:   MayAlias:   double* %escape_alloca_b1, double* %loaded_b1
388 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double* %escape_alloca_b1
389 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %noescape_alloca_b0
390 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %noescape_alloca_b0
391 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double* %noescape_alloca_b0
392 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double* %noescape_alloca_b0
393 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b0, double** %indirect_b0
394 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b0, double** %indirect_b1
395 ; FUNCAA:   NoAlias:    double* %loaded_b0, double* %noescape_alloca_b0
396 ; FUNCAA:   NoAlias:    double* %loaded_b1, double* %noescape_alloca_b0
397 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double* %noescape_alloca_b0
398 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double* %noescape_alloca_b0
399 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %noescape_alloca_b1
400 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %noescape_alloca_b1
401 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double* %noescape_alloca_b1
402 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double* %noescape_alloca_b1
403 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b1, double** %indirect_b0
404 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b1, double** %indirect_b1
405 ; FUNCAA:   NoAlias:    double* %loaded_b0, double* %noescape_alloca_b1
406 ; FUNCAA:   NoAlias:    double* %loaded_b1, double* %noescape_alloca_b1
407 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double* %noescape_alloca_b1
408 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double* %noescape_alloca_b1
409 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b0, double* %noescape_alloca_b1
410 ; FUNCAA:   MayAlias:   double* %arg_b0, double* %normal_ret_b0
411 ; FUNCAA:   MayAlias:   double* %arg_b1, double* %normal_ret_b0
412 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double* %normal_ret_b0
413 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double* %normal_ret_b0
414 ; FUNCAA:   MayAlias:   double* %normal_ret_b0, double** %indirect_b0
415 ; FUNCAA:   MayAlias:   double* %normal_ret_b0, double** %indirect_b1
416 ; FUNCAA:   MayAlias:   double* %loaded_b0, double* %normal_ret_b0
417 ; FUNCAA:   MayAlias:   double* %loaded_b1, double* %normal_ret_b0
418 ; FUNCAA:   MayAlias:   double* %escape_alloca_b0, double* %normal_ret_b0
419 ; FUNCAA:   MayAlias:   double* %escape_alloca_b1, double* %normal_ret_b0
420 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b0, double* %normal_ret_b0
421 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b1, double* %normal_ret_b0
422 ; FUNCAA:   MayAlias:   double* %arg_b0, double* %normal_ret_b1
423 ; FUNCAA:   MayAlias:   double* %arg_b1, double* %normal_ret_b1
424 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double* %normal_ret_b1
425 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double* %normal_ret_b1
426 ; FUNCAA:   MayAlias:   double* %normal_ret_b1, double** %indirect_b0
427 ; FUNCAA:   MayAlias:   double* %normal_ret_b1, double** %indirect_b1
428 ; FUNCAA:   MayAlias:   double* %loaded_b0, double* %normal_ret_b1
429 ; FUNCAA:   MayAlias:   double* %loaded_b1, double* %normal_ret_b1
430 ; FUNCAA:   MayAlias:   double* %escape_alloca_b0, double* %normal_ret_b1
431 ; FUNCAA:   MayAlias:   double* %escape_alloca_b1, double* %normal_ret_b1
432 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b0, double* %normal_ret_b1
433 ; FUNCAA:   NoAlias:    double* %noescape_alloca_b1, double* %normal_ret_b1
434 ; FUNCAA:   MayAlias:   double* %normal_ret_b0, double* %normal_ret_b1
435 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %noalias_ret_b0
436 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %noalias_ret_b0
437 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double* %noalias_ret_b0
438 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double* %noalias_ret_b0
439 ; FUNCAA:   NoAlias:    double* %noalias_ret_b0, double** %indirect_b0
440 ; FUNCAA:   NoAlias:    double* %noalias_ret_b0, double** %indirect_b1
441 ; FUNCAA:   NoAlias:    double* %loaded_b0, double* %noalias_ret_b0
442 ; FUNCAA:   NoAlias:    double* %loaded_b1, double* %noalias_ret_b0
443 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double* %noalias_ret_b0
444 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double* %noalias_ret_b0
445 ; FUNCAA:   NoAlias:    double* %noalias_ret_b0, double* %noescape_alloca_b0
446 ; FUNCAA:   NoAlias:    double* %noalias_ret_b0, double* %noescape_alloca_b1
447 ; FUNCAA:   NoAlias:    double* %noalias_ret_b0, double* %normal_ret_b0
448 ; FUNCAA:   NoAlias:    double* %noalias_ret_b0, double* %normal_ret_b1
449 ; FUNCAA:   NoAlias:    double* %arg_b0, double* %noalias_ret_b1
450 ; FUNCAA:   NoAlias:    double* %arg_b1, double* %noalias_ret_b1
451 ; FUNCAA:   NoAlias:    double* %noalias_arg_b0, double* %noalias_ret_b1
452 ; FUNCAA:   NoAlias:    double* %noalias_arg_b1, double* %noalias_ret_b1
453 ; FUNCAA:   NoAlias:    double* %noalias_ret_b1, double** %indirect_b0
454 ; FUNCAA:   NoAlias:    double* %noalias_ret_b1, double** %indirect_b1
455 ; FUNCAA:   NoAlias:    double* %loaded_b0, double* %noalias_ret_b1
456 ; FUNCAA:   NoAlias:    double* %loaded_b1, double* %noalias_ret_b1
457 ; FUNCAA:   NoAlias:    double* %escape_alloca_b0, double* %noalias_ret_b1
458 ; FUNCAA:   NoAlias:    double* %escape_alloca_b1, double* %noalias_ret_b1
459 ; FUNCAA:   NoAlias:    double* %noalias_ret_b1, double* %noescape_alloca_b0
460 ; FUNCAA:   NoAlias:    double* %noalias_ret_b1, double* %noescape_alloca_b1
461 ; FUNCAA:   NoAlias:    double* %noalias_ret_b1, double* %normal_ret_b0
462 ; FUNCAA:   NoAlias:    double* %noalias_ret_b1, double* %normal_ret_b1
463 ; FUNCAA:   NoAlias:    double* %noalias_ret_b0, double* %noalias_ret_b1
464 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
465 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
466 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
467 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
468 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
469 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
470 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
471 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
472 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
473 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
474 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b0 <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
475 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b1 <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
476 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
477 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
478 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b0     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
479 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b1     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
480 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
481 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
482 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
483 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
484 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
485 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
486 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
487 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
488 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
489 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
490 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b0 <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
491 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b1 <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
492 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
493 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
494 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b0     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
495 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b1     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
496 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
497 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
498 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
499 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
500 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
501 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
502 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
503 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
504 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
505 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
506 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b0 <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
507 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b1 <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
508 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
509 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
510 ; FUNCAA:     ModRef:  Ptr: double* %noalias_ret_b0     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
511 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b1     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
512 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
513 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
514 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
515 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
516 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
517 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
518 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
519 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
520 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
521 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
522 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b0 <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
523 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b1 <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
524 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
525 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
526 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b0     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
527 ; FUNCAA:     ModRef:  Ptr: double* %noalias_ret_b1     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
528 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  call void @callee(double* %escape_alloca_b0)
529 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  call void @callee(double* %escape_alloca_b0)
530 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  call void @callee(double* %escape_alloca_b0)
531 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  call void @callee(double* %escape_alloca_b0)
532 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  call void @callee(double* %escape_alloca_b0)
533 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  call void @callee(double* %escape_alloca_b0)
534 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  call void @callee(double* %escape_alloca_b0)
535 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  call void @callee(double* %escape_alloca_b0)
536 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  call void @callee(double* %escape_alloca_b0)
537 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  call void @callee(double* %escape_alloca_b0)
538 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b0 <->  call void @callee(double* %escape_alloca_b0)
539 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b1 <->  call void @callee(double* %escape_alloca_b0)
540 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  call void @callee(double* %escape_alloca_b0)
541 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  call void @callee(double* %escape_alloca_b0)
542 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b0     <->  call void @callee(double* %escape_alloca_b0)
543 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b1     <->  call void @callee(double* %escape_alloca_b0)
544 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  call void @callee(double* %escape_alloca_b1)
545 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  call void @callee(double* %escape_alloca_b1)
546 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  call void @callee(double* %escape_alloca_b1)
547 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  call void @callee(double* %escape_alloca_b1)
548 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  call void @callee(double* %escape_alloca_b1)
549 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  call void @callee(double* %escape_alloca_b1)
550 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  call void @callee(double* %escape_alloca_b1)
551 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  call void @callee(double* %escape_alloca_b1)
552 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  call void @callee(double* %escape_alloca_b1)
553 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  call void @callee(double* %escape_alloca_b1)
554 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b0 <->  call void @callee(double* %escape_alloca_b1)
555 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b1 <->  call void @callee(double* %escape_alloca_b1)
556 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  call void @callee(double* %escape_alloca_b1)
557 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  call void @callee(double* %escape_alloca_b1)
558 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b0     <->  call void @callee(double* %escape_alloca_b1)
559 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b1     <->  call void @callee(double* %escape_alloca_b1)
560 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  call void @nocap_callee(double* %noescape_alloca_b0)
561 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  call void @nocap_callee(double* %noescape_alloca_b0)
562 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  call void @nocap_callee(double* %noescape_alloca_b0)
563 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  call void @nocap_callee(double* %noescape_alloca_b0)
564 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  call void @nocap_callee(double* %noescape_alloca_b0)
565 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  call void @nocap_callee(double* %noescape_alloca_b0)
566 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  call void @nocap_callee(double* %noescape_alloca_b0)
567 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  call void @nocap_callee(double* %noescape_alloca_b0)
568 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  call void @nocap_callee(double* %noescape_alloca_b0)
569 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  call void @nocap_callee(double* %noescape_alloca_b0)
570 ; FUNCAA:     ModRef:  Ptr: double* %noescape_alloca_b0 <->  call void @nocap_callee(double* %noescape_alloca_b0)
571 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b1 <->  call void @nocap_callee(double* %noescape_alloca_b0)
572 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  call void @nocap_callee(double* %noescape_alloca_b0)
573 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  call void @nocap_callee(double* %noescape_alloca_b0)
574 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b0     <->  call void @nocap_callee(double* %noescape_alloca_b0)
575 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b1     <->  call void @nocap_callee(double* %noescape_alloca_b0)
576 ; FUNCAA:     ModRef:  Ptr: double* %arg_b0     <->  call void @nocap_callee(double* %noescape_alloca_b1)
577 ; FUNCAA:     ModRef:  Ptr: double* %arg_b1     <->  call void @nocap_callee(double* %noescape_alloca_b1)
578 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b0     <->  call void @nocap_callee(double* %noescape_alloca_b1)
579 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_arg_b1     <->  call void @nocap_callee(double* %noescape_alloca_b1)
580 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b0       <->  call void @nocap_callee(double* %noescape_alloca_b1)
581 ; FUNCAA:     ModRef:  Ptr: double** %indirect_b1       <->  call void @nocap_callee(double* %noescape_alloca_b1)
582 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b0  <->  call void @nocap_callee(double* %noescape_alloca_b1)
583 ; FUNCAA:     ModRef:  Ptr: double* %loaded_b1  <->  call void @nocap_callee(double* %noescape_alloca_b1)
584 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b0   <->  call void @nocap_callee(double* %noescape_alloca_b1)
585 ; FUNCAA:     ModRef:  Ptr: double* %escape_alloca_b1   <->  call void @nocap_callee(double* %noescape_alloca_b1)
586 ; FUNCAA:   NoModRef:  Ptr: double* %noescape_alloca_b0 <->  call void @nocap_callee(double* %noescape_alloca_b1)
587 ; FUNCAA:     ModRef:  Ptr: double* %noescape_alloca_b1 <->  call void @nocap_callee(double* %noescape_alloca_b1)
588 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b0      <->  call void @nocap_callee(double* %noescape_alloca_b1)
589 ; FUNCAA:     ModRef:  Ptr: double* %normal_ret_b1      <->  call void @nocap_callee(double* %noescape_alloca_b1)
590 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b0     <->  call void @nocap_callee(double* %noescape_alloca_b1)
591 ; FUNCAA:   NoModRef:  Ptr: double* %noalias_ret_b1     <->  call void @nocap_callee(double* %noescape_alloca_b1)
592 ; FUNCAA: ===== Alias Analysis Evaluator Report =====
593 ; FUNCAA:   240 Total Alias Queries Performed
594 ; FUNCAA:   168 no alias responses (70.0%)
595 ; FUNCAA:   72 may alias responses (30.0%)
596 ; FUNCAA:   0 must alias responses (0.0%)
597 ; FUNCAA:   Alias Analysis Evaluator Pointer Alias Summary: 70%/30%/0%
598 ; FUNCAA:   256 Total ModRef Queries Performed
599 ; FUNCAA:   88 no mod/ref responses (34.3%)
600 ; FUNCAA:   0 mod responses (0.0%)
601 ; FUNCAA:   0 ref responses (0.0%)
602 ; FUNCAA:   168 mod & ref responses (65.6%)
603 ; FUNCAA:   Alias Analysis Evaluator Mod/Ref Summary: 34%/0%/0%/65%
604
605 ; IPAA: Module: 34 pointers, 16 call sites
606 ; IPAA:   MayAlias:     double* %callee_arg, double* %nocap_callee_arg
607 ; IPAA:   MayAlias:     double* %arg_a0, double* %callee_arg
608 ; IPAA:   MayAlias:     double* %arg_a0, double* %nocap_callee_arg
609 ; IPAA:   MayAlias:     double* %arg_a1, double* %callee_arg
610 ; IPAA:   MayAlias:     double* %arg_a1, double* %nocap_callee_arg
611 ; IPAA:   MayAlias:     double* %arg_a0, double* %arg_a1
612 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_arg_a0
613 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %nocap_callee_arg
614 ; IPAA:   NoAlias:      double* %arg_a0, double* %noalias_arg_a0
615 ; IPAA:   NoAlias:      double* %arg_a1, double* %noalias_arg_a0
616 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_arg_a1
617 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %nocap_callee_arg
618 ; IPAA:   NoAlias:      double* %arg_a0, double* %noalias_arg_a1
619 ; IPAA:   NoAlias:      double* %arg_a1, double* %noalias_arg_a1
620 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double* %noalias_arg_a1
621 ; IPAA:   MayAlias:     double* %callee_arg, double** %indirect_a0
622 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double** %indirect_a0
623 ; IPAA:   MayAlias:     double* %arg_a0, double** %indirect_a0
624 ; IPAA:   MayAlias:     double* %arg_a1, double** %indirect_a0
625 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double** %indirect_a0
626 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double** %indirect_a0
627 ; IPAA:   MayAlias:     double* %callee_arg, double** %indirect_a1
628 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double** %indirect_a1
629 ; IPAA:   MayAlias:     double* %arg_a0, double** %indirect_a1
630 ; IPAA:   MayAlias:     double* %arg_a1, double** %indirect_a1
631 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double** %indirect_a1
632 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double** %indirect_a1
633 ; IPAA:   MayAlias:     double** %indirect_a0, double** %indirect_a1
634 ; IPAA:   MayAlias:     double* %callee_arg, double* %loaded_a0
635 ; IPAA:   MayAlias:     double* %loaded_a0, double* %nocap_callee_arg
636 ; IPAA:   MayAlias:     double* %arg_a0, double* %loaded_a0
637 ; IPAA:   MayAlias:     double* %arg_a1, double* %loaded_a0
638 ; IPAA:   NoAlias:      double* %loaded_a0, double* %noalias_arg_a0
639 ; IPAA:   NoAlias:      double* %loaded_a0, double* %noalias_arg_a1
640 ; IPAA:   MayAlias:     double* %loaded_a0, double** %indirect_a0
641 ; IPAA:   MayAlias:     double* %loaded_a0, double** %indirect_a1
642 ; IPAA:   MayAlias:     double* %callee_arg, double* %loaded_a1
643 ; IPAA:   MayAlias:     double* %loaded_a1, double* %nocap_callee_arg
644 ; IPAA:   MayAlias:     double* %arg_a0, double* %loaded_a1
645 ; IPAA:   MayAlias:     double* %arg_a1, double* %loaded_a1
646 ; IPAA:   NoAlias:      double* %loaded_a1, double* %noalias_arg_a0
647 ; IPAA:   NoAlias:      double* %loaded_a1, double* %noalias_arg_a1
648 ; IPAA:   MayAlias:     double* %loaded_a1, double** %indirect_a0
649 ; IPAA:   MayAlias:     double* %loaded_a1, double** %indirect_a1
650 ; IPAA:   MayAlias:     double* %loaded_a0, double* %loaded_a1
651 ; IPAA:   MayAlias:     double* %callee_arg, double* %escape_alloca_a0
652 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %nocap_callee_arg
653 ; IPAA:   NoAlias:      double* %arg_a0, double* %escape_alloca_a0
654 ; IPAA:   NoAlias:      double* %arg_a1, double* %escape_alloca_a0
655 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noalias_arg_a0
656 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noalias_arg_a1
657 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double** %indirect_a0
658 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double** %indirect_a1
659 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %loaded_a0
660 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %loaded_a1
661 ; IPAA:   MayAlias:     double* %callee_arg, double* %escape_alloca_a1
662 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %nocap_callee_arg
663 ; IPAA:   NoAlias:      double* %arg_a0, double* %escape_alloca_a1
664 ; IPAA:   NoAlias:      double* %arg_a1, double* %escape_alloca_a1
665 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noalias_arg_a0
666 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noalias_arg_a1
667 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double** %indirect_a0
668 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double** %indirect_a1
669 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %loaded_a0
670 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %loaded_a1
671 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %escape_alloca_a1
672 ; IPAA:   MayAlias:     double* %callee_arg, double* %noescape_alloca_a0
673 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %noescape_alloca_a0
674 ; IPAA:   NoAlias:      double* %arg_a0, double* %noescape_alloca_a0
675 ; IPAA:   NoAlias:      double* %arg_a1, double* %noescape_alloca_a0
676 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double* %noescape_alloca_a0
677 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double* %noescape_alloca_a0
678 ; IPAA:   NoAlias:      double* %noescape_alloca_a0, double** %indirect_a0
679 ; IPAA:   NoAlias:      double* %noescape_alloca_a0, double** %indirect_a1
680 ; IPAA:   NoAlias:      double* %loaded_a0, double* %noescape_alloca_a0
681 ; IPAA:   NoAlias:      double* %loaded_a1, double* %noescape_alloca_a0
682 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noescape_alloca_a0
683 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noescape_alloca_a0
684 ; IPAA:   MayAlias:     double* %callee_arg, double* %noescape_alloca_a1
685 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %noescape_alloca_a1
686 ; IPAA:   NoAlias:      double* %arg_a0, double* %noescape_alloca_a1
687 ; IPAA:   NoAlias:      double* %arg_a1, double* %noescape_alloca_a1
688 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double* %noescape_alloca_a1
689 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double* %noescape_alloca_a1
690 ; IPAA:   NoAlias:      double* %noescape_alloca_a1, double** %indirect_a0
691 ; IPAA:   NoAlias:      double* %noescape_alloca_a1, double** %indirect_a1
692 ; IPAA:   NoAlias:      double* %loaded_a0, double* %noescape_alloca_a1
693 ; IPAA:   NoAlias:      double* %loaded_a1, double* %noescape_alloca_a1
694 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noescape_alloca_a1
695 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noescape_alloca_a1
696 ; IPAA:   NoAlias:      double* %noescape_alloca_a0, double* %noescape_alloca_a1
697 ; IPAA:   MayAlias:     double* %callee_arg, double* %normal_ret_a0
698 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %normal_ret_a0
699 ; IPAA:   MayAlias:     double* %arg_a0, double* %normal_ret_a0
700 ; IPAA:   MayAlias:     double* %arg_a1, double* %normal_ret_a0
701 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double* %normal_ret_a0
702 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double* %normal_ret_a0
703 ; IPAA:   MayAlias:     double* %normal_ret_a0, double** %indirect_a0
704 ; IPAA:   MayAlias:     double* %normal_ret_a0, double** %indirect_a1
705 ; IPAA:   MayAlias:     double* %loaded_a0, double* %normal_ret_a0
706 ; IPAA:   MayAlias:     double* %loaded_a1, double* %normal_ret_a0
707 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %normal_ret_a0
708 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %normal_ret_a0
709 ; IPAA:   NoAlias:      double* %noescape_alloca_a0, double* %normal_ret_a0
710 ; IPAA:   NoAlias:      double* %noescape_alloca_a1, double* %normal_ret_a0
711 ; IPAA:   MayAlias:     double* %callee_arg, double* %normal_ret_a1
712 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %normal_ret_a1
713 ; IPAA:   MayAlias:     double* %arg_a0, double* %normal_ret_a1
714 ; IPAA:   MayAlias:     double* %arg_a1, double* %normal_ret_a1
715 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double* %normal_ret_a1
716 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double* %normal_ret_a1
717 ; IPAA:   MayAlias:     double* %normal_ret_a1, double** %indirect_a0
718 ; IPAA:   MayAlias:     double* %normal_ret_a1, double** %indirect_a1
719 ; IPAA:   MayAlias:     double* %loaded_a0, double* %normal_ret_a1
720 ; IPAA:   MayAlias:     double* %loaded_a1, double* %normal_ret_a1
721 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %normal_ret_a1
722 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %normal_ret_a1
723 ; IPAA:   NoAlias:      double* %noescape_alloca_a0, double* %normal_ret_a1
724 ; IPAA:   NoAlias:      double* %noescape_alloca_a1, double* %normal_ret_a1
725 ; IPAA:   MayAlias:     double* %normal_ret_a0, double* %normal_ret_a1
726 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_ret_a0
727 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double* %nocap_callee_arg
728 ; IPAA:   NoAlias:      double* %arg_a0, double* %noalias_ret_a0
729 ; IPAA:   NoAlias:      double* %arg_a1, double* %noalias_ret_a0
730 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double* %noalias_ret_a0
731 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double* %noalias_ret_a0
732 ; IPAA:   NoAlias:      double* %noalias_ret_a0, double** %indirect_a0
733 ; IPAA:   NoAlias:      double* %noalias_ret_a0, double** %indirect_a1
734 ; IPAA:   NoAlias:      double* %loaded_a0, double* %noalias_ret_a0
735 ; IPAA:   NoAlias:      double* %loaded_a1, double* %noalias_ret_a0
736 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noalias_ret_a0
737 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noalias_ret_a0
738 ; IPAA:   NoAlias:      double* %noalias_ret_a0, double* %noescape_alloca_a0
739 ; IPAA:   NoAlias:      double* %noalias_ret_a0, double* %noescape_alloca_a1
740 ; IPAA:   NoAlias:      double* %noalias_ret_a0, double* %normal_ret_a0
741 ; IPAA:   NoAlias:      double* %noalias_ret_a0, double* %normal_ret_a1
742 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_ret_a1
743 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double* %nocap_callee_arg
744 ; IPAA:   NoAlias:      double* %arg_a0, double* %noalias_ret_a1
745 ; IPAA:   NoAlias:      double* %arg_a1, double* %noalias_ret_a1
746 ; IPAA:   NoAlias:      double* %noalias_arg_a0, double* %noalias_ret_a1
747 ; IPAA:   NoAlias:      double* %noalias_arg_a1, double* %noalias_ret_a1
748 ; IPAA:   NoAlias:      double* %noalias_ret_a1, double** %indirect_a0
749 ; IPAA:   NoAlias:      double* %noalias_ret_a1, double** %indirect_a1
750 ; IPAA:   NoAlias:      double* %loaded_a0, double* %noalias_ret_a1
751 ; IPAA:   NoAlias:      double* %loaded_a1, double* %noalias_ret_a1
752 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noalias_ret_a1
753 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noalias_ret_a1
754 ; IPAA:   NoAlias:      double* %noalias_ret_a1, double* %noescape_alloca_a0
755 ; IPAA:   NoAlias:      double* %noalias_ret_a1, double* %noescape_alloca_a1
756 ; IPAA:   NoAlias:      double* %noalias_ret_a1, double* %normal_ret_a0
757 ; IPAA:   NoAlias:      double* %noalias_ret_a1, double* %normal_ret_a1
758 ; IPAA:   NoAlias:      double* %noalias_ret_a0, double* %noalias_ret_a1
759 ; IPAA:   MayAlias:     double* %arg_b0, double* %callee_arg
760 ; IPAA:   MayAlias:     double* %arg_b0, double* %nocap_callee_arg
761 ; IPAA:   MayAlias:     double* %arg_a0, double* %arg_b0
762 ; IPAA:   MayAlias:     double* %arg_a1, double* %arg_b0
763 ; IPAA:   MayAlias:     double* %arg_b0, double* %noalias_arg_a0
764 ; IPAA:   MayAlias:     double* %arg_b0, double* %noalias_arg_a1
765 ; IPAA:   MayAlias:     double* %arg_b0, double** %indirect_a0
766 ; IPAA:   MayAlias:     double* %arg_b0, double** %indirect_a1
767 ; IPAA:   MayAlias:     double* %arg_b0, double* %loaded_a0
768 ; IPAA:   MayAlias:     double* %arg_b0, double* %loaded_a1
769 ; IPAA:   MayAlias:     double* %arg_b0, double* %escape_alloca_a0
770 ; IPAA:   MayAlias:     double* %arg_b0, double* %escape_alloca_a1
771 ; IPAA:   MayAlias:     double* %arg_b0, double* %noescape_alloca_a0
772 ; IPAA:   MayAlias:     double* %arg_b0, double* %noescape_alloca_a1
773 ; IPAA:   MayAlias:     double* %arg_b0, double* %normal_ret_a0
774 ; IPAA:   MayAlias:     double* %arg_b0, double* %normal_ret_a1
775 ; IPAA:   MayAlias:     double* %arg_b0, double* %noalias_ret_a0
776 ; IPAA:   MayAlias:     double* %arg_b0, double* %noalias_ret_a1
777 ; IPAA:   MayAlias:     double* %arg_b1, double* %callee_arg
778 ; IPAA:   MayAlias:     double* %arg_b1, double* %nocap_callee_arg
779 ; IPAA:   MayAlias:     double* %arg_a0, double* %arg_b1
780 ; IPAA:   MayAlias:     double* %arg_a1, double* %arg_b1
781 ; IPAA:   MayAlias:     double* %arg_b1, double* %noalias_arg_a0
782 ; IPAA:   MayAlias:     double* %arg_b1, double* %noalias_arg_a1
783 ; IPAA:   MayAlias:     double* %arg_b1, double** %indirect_a0
784 ; IPAA:   MayAlias:     double* %arg_b1, double** %indirect_a1
785 ; IPAA:   MayAlias:     double* %arg_b1, double* %loaded_a0
786 ; IPAA:   MayAlias:     double* %arg_b1, double* %loaded_a1
787 ; IPAA:   MayAlias:     double* %arg_b1, double* %escape_alloca_a0
788 ; IPAA:   MayAlias:     double* %arg_b1, double* %escape_alloca_a1
789 ; IPAA:   MayAlias:     double* %arg_b1, double* %noescape_alloca_a0
790 ; IPAA:   MayAlias:     double* %arg_b1, double* %noescape_alloca_a1
791 ; IPAA:   MayAlias:     double* %arg_b1, double* %normal_ret_a0
792 ; IPAA:   MayAlias:     double* %arg_b1, double* %normal_ret_a1
793 ; IPAA:   MayAlias:     double* %arg_b1, double* %noalias_ret_a0
794 ; IPAA:   MayAlias:     double* %arg_b1, double* %noalias_ret_a1
795 ; IPAA:   MayAlias:     double* %arg_b0, double* %arg_b1
796 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_arg_b0
797 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double* %nocap_callee_arg
798 ; IPAA:   MayAlias:     double* %arg_a0, double* %noalias_arg_b0
799 ; IPAA:   MayAlias:     double* %arg_a1, double* %noalias_arg_b0
800 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %noalias_arg_b0
801 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %noalias_arg_b0
802 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double** %indirect_a0
803 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double** %indirect_a1
804 ; IPAA:   MayAlias:     double* %loaded_a0, double* %noalias_arg_b0
805 ; IPAA:   MayAlias:     double* %loaded_a1, double* %noalias_arg_b0
806 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %noalias_arg_b0
807 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %noalias_arg_b0
808 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double* %noescape_alloca_a0
809 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double* %noescape_alloca_a1
810 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double* %normal_ret_a0
811 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double* %normal_ret_a1
812 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double* %noalias_ret_a0
813 ; IPAA:   MayAlias:     double* %noalias_arg_b0, double* %noalias_ret_a1
814 ; IPAA:   NoAlias:      double* %arg_b0, double* %noalias_arg_b0
815 ; IPAA:   NoAlias:      double* %arg_b1, double* %noalias_arg_b0
816 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_arg_b1
817 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double* %nocap_callee_arg
818 ; IPAA:   MayAlias:     double* %arg_a0, double* %noalias_arg_b1
819 ; IPAA:   MayAlias:     double* %arg_a1, double* %noalias_arg_b1
820 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %noalias_arg_b1
821 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %noalias_arg_b1
822 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double** %indirect_a0
823 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double** %indirect_a1
824 ; IPAA:   MayAlias:     double* %loaded_a0, double* %noalias_arg_b1
825 ; IPAA:   MayAlias:     double* %loaded_a1, double* %noalias_arg_b1
826 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %noalias_arg_b1
827 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %noalias_arg_b1
828 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double* %noescape_alloca_a0
829 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double* %noescape_alloca_a1
830 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double* %normal_ret_a0
831 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double* %normal_ret_a1
832 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double* %noalias_ret_a0
833 ; IPAA:   MayAlias:     double* %noalias_arg_b1, double* %noalias_ret_a1
834 ; IPAA:   NoAlias:      double* %arg_b0, double* %noalias_arg_b1
835 ; IPAA:   NoAlias:      double* %arg_b1, double* %noalias_arg_b1
836 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double* %noalias_arg_b1
837 ; IPAA:   MayAlias:     double* %callee_arg, double** %indirect_b0
838 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double** %indirect_b0
839 ; IPAA:   MayAlias:     double* %arg_a0, double** %indirect_b0
840 ; IPAA:   MayAlias:     double* %arg_a1, double** %indirect_b0
841 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double** %indirect_b0
842 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double** %indirect_b0
843 ; IPAA:   MayAlias:     double** %indirect_a0, double** %indirect_b0
844 ; IPAA:   MayAlias:     double** %indirect_a1, double** %indirect_b0
845 ; IPAA:   MayAlias:     double* %loaded_a0, double** %indirect_b0
846 ; IPAA:   MayAlias:     double* %loaded_a1, double** %indirect_b0
847 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double** %indirect_b0
848 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double** %indirect_b0
849 ; IPAA:   MayAlias:     double* %noescape_alloca_a0, double** %indirect_b0
850 ; IPAA:   MayAlias:     double* %noescape_alloca_a1, double** %indirect_b0
851 ; IPAA:   MayAlias:     double* %normal_ret_a0, double** %indirect_b0
852 ; IPAA:   MayAlias:     double* %normal_ret_a1, double** %indirect_b0
853 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double** %indirect_b0
854 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double** %indirect_b0
855 ; IPAA:   MayAlias:     double* %arg_b0, double** %indirect_b0
856 ; IPAA:   MayAlias:     double* %arg_b1, double** %indirect_b0
857 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double** %indirect_b0
858 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double** %indirect_b0
859 ; IPAA:   MayAlias:     double* %callee_arg, double** %indirect_b1
860 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double** %indirect_b1
861 ; IPAA:   MayAlias:     double* %arg_a0, double** %indirect_b1
862 ; IPAA:   MayAlias:     double* %arg_a1, double** %indirect_b1
863 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double** %indirect_b1
864 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double** %indirect_b1
865 ; IPAA:   MayAlias:     double** %indirect_a0, double** %indirect_b1
866 ; IPAA:   MayAlias:     double** %indirect_a1, double** %indirect_b1
867 ; IPAA:   MayAlias:     double* %loaded_a0, double** %indirect_b1
868 ; IPAA:   MayAlias:     double* %loaded_a1, double** %indirect_b1
869 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double** %indirect_b1
870 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double** %indirect_b1
871 ; IPAA:   MayAlias:     double* %noescape_alloca_a0, double** %indirect_b1
872 ; IPAA:   MayAlias:     double* %noescape_alloca_a1, double** %indirect_b1
873 ; IPAA:   MayAlias:     double* %normal_ret_a0, double** %indirect_b1
874 ; IPAA:   MayAlias:     double* %normal_ret_a1, double** %indirect_b1
875 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double** %indirect_b1
876 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double** %indirect_b1
877 ; IPAA:   MayAlias:     double* %arg_b0, double** %indirect_b1
878 ; IPAA:   MayAlias:     double* %arg_b1, double** %indirect_b1
879 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double** %indirect_b1
880 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double** %indirect_b1
881 ; IPAA:   MayAlias:     double** %indirect_b0, double** %indirect_b1
882 ; IPAA:   MayAlias:     double* %callee_arg, double* %loaded_b0
883 ; IPAA:   MayAlias:     double* %loaded_b0, double* %nocap_callee_arg
884 ; IPAA:   MayAlias:     double* %arg_a0, double* %loaded_b0
885 ; IPAA:   MayAlias:     double* %arg_a1, double* %loaded_b0
886 ; IPAA:   MayAlias:     double* %loaded_b0, double* %noalias_arg_a0
887 ; IPAA:   MayAlias:     double* %loaded_b0, double* %noalias_arg_a1
888 ; IPAA:   MayAlias:     double* %loaded_b0, double** %indirect_a0
889 ; IPAA:   MayAlias:     double* %loaded_b0, double** %indirect_a1
890 ; IPAA:   MayAlias:     double* %loaded_a0, double* %loaded_b0
891 ; IPAA:   MayAlias:     double* %loaded_a1, double* %loaded_b0
892 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %loaded_b0
893 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %loaded_b0
894 ; IPAA:   MayAlias:     double* %loaded_b0, double* %noescape_alloca_a0
895 ; IPAA:   MayAlias:     double* %loaded_b0, double* %noescape_alloca_a1
896 ; IPAA:   MayAlias:     double* %loaded_b0, double* %normal_ret_a0
897 ; IPAA:   MayAlias:     double* %loaded_b0, double* %normal_ret_a1
898 ; IPAA:   MayAlias:     double* %loaded_b0, double* %noalias_ret_a0
899 ; IPAA:   MayAlias:     double* %loaded_b0, double* %noalias_ret_a1
900 ; IPAA:   MayAlias:     double* %arg_b0, double* %loaded_b0
901 ; IPAA:   MayAlias:     double* %arg_b1, double* %loaded_b0
902 ; IPAA:   NoAlias:      double* %loaded_b0, double* %noalias_arg_b0
903 ; IPAA:   NoAlias:      double* %loaded_b0, double* %noalias_arg_b1
904 ; IPAA:   MayAlias:     double* %loaded_b0, double** %indirect_b0
905 ; IPAA:   MayAlias:     double* %loaded_b0, double** %indirect_b1
906 ; IPAA:   MayAlias:     double* %callee_arg, double* %loaded_b1
907 ; IPAA:   MayAlias:     double* %loaded_b1, double* %nocap_callee_arg
908 ; IPAA:   MayAlias:     double* %arg_a0, double* %loaded_b1
909 ; IPAA:   MayAlias:     double* %arg_a1, double* %loaded_b1
910 ; IPAA:   MayAlias:     double* %loaded_b1, double* %noalias_arg_a0
911 ; IPAA:   MayAlias:     double* %loaded_b1, double* %noalias_arg_a1
912 ; IPAA:   MayAlias:     double* %loaded_b1, double** %indirect_a0
913 ; IPAA:   MayAlias:     double* %loaded_b1, double** %indirect_a1
914 ; IPAA:   MayAlias:     double* %loaded_a0, double* %loaded_b1
915 ; IPAA:   MayAlias:     double* %loaded_a1, double* %loaded_b1
916 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %loaded_b1
917 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %loaded_b1
918 ; IPAA:   MayAlias:     double* %loaded_b1, double* %noescape_alloca_a0
919 ; IPAA:   MayAlias:     double* %loaded_b1, double* %noescape_alloca_a1
920 ; IPAA:   MayAlias:     double* %loaded_b1, double* %normal_ret_a0
921 ; IPAA:   MayAlias:     double* %loaded_b1, double* %normal_ret_a1
922 ; IPAA:   MayAlias:     double* %loaded_b1, double* %noalias_ret_a0
923 ; IPAA:   MayAlias:     double* %loaded_b1, double* %noalias_ret_a1
924 ; IPAA:   MayAlias:     double* %arg_b0, double* %loaded_b1
925 ; IPAA:   MayAlias:     double* %arg_b1, double* %loaded_b1
926 ; IPAA:   NoAlias:      double* %loaded_b1, double* %noalias_arg_b0
927 ; IPAA:   NoAlias:      double* %loaded_b1, double* %noalias_arg_b1
928 ; IPAA:   MayAlias:     double* %loaded_b1, double** %indirect_b0
929 ; IPAA:   MayAlias:     double* %loaded_b1, double** %indirect_b1
930 ; IPAA:   MayAlias:     double* %loaded_b0, double* %loaded_b1
931 ; IPAA:   MayAlias:     double* %callee_arg, double* %escape_alloca_b0
932 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %nocap_callee_arg
933 ; IPAA:   MayAlias:     double* %arg_a0, double* %escape_alloca_b0
934 ; IPAA:   MayAlias:     double* %arg_a1, double* %escape_alloca_b0
935 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %noalias_arg_a0
936 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %noalias_arg_a1
937 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double** %indirect_a0
938 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double** %indirect_a1
939 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %loaded_a0
940 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %loaded_a1
941 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %escape_alloca_b0
942 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %escape_alloca_b0
943 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noescape_alloca_a0
944 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noescape_alloca_a1
945 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %normal_ret_a0
946 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %normal_ret_a1
947 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %noalias_ret_a0
948 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %noalias_ret_a1
949 ; IPAA:   NoAlias:      double* %arg_b0, double* %escape_alloca_b0
950 ; IPAA:   NoAlias:      double* %arg_b1, double* %escape_alloca_b0
951 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noalias_arg_b0
952 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noalias_arg_b1
953 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double** %indirect_b0
954 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double** %indirect_b1
955 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %loaded_b0
956 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %loaded_b1
957 ; IPAA:   MayAlias:     double* %callee_arg, double* %escape_alloca_b1
958 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %nocap_callee_arg
959 ; IPAA:   MayAlias:     double* %arg_a0, double* %escape_alloca_b1
960 ; IPAA:   MayAlias:     double* %arg_a1, double* %escape_alloca_b1
961 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %noalias_arg_a0
962 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %noalias_arg_a1
963 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double** %indirect_a0
964 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double** %indirect_a1
965 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %loaded_a0
966 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %loaded_a1
967 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %escape_alloca_b1
968 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %escape_alloca_b1
969 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noescape_alloca_a0
970 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noescape_alloca_a1
971 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %normal_ret_a0
972 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %normal_ret_a1
973 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %noalias_ret_a0
974 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %noalias_ret_a1
975 ; IPAA:   NoAlias:      double* %arg_b0, double* %escape_alloca_b1
976 ; IPAA:   NoAlias:      double* %arg_b1, double* %escape_alloca_b1
977 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noalias_arg_b0
978 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noalias_arg_b1
979 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double** %indirect_b0
980 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double** %indirect_b1
981 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %loaded_b0
982 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %loaded_b1
983 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %escape_alloca_b1
984 ; IPAA:   MayAlias:     double* %callee_arg, double* %noescape_alloca_b0
985 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %noescape_alloca_b0
986 ; IPAA:   MayAlias:     double* %arg_a0, double* %noescape_alloca_b0
987 ; IPAA:   MayAlias:     double* %arg_a1, double* %noescape_alloca_b0
988 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %noescape_alloca_b0
989 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %noescape_alloca_b0
990 ; IPAA:   MayAlias:     double* %noescape_alloca_b0, double** %indirect_a0
991 ; IPAA:   MayAlias:     double* %noescape_alloca_b0, double** %indirect_a1
992 ; IPAA:   MayAlias:     double* %loaded_a0, double* %noescape_alloca_b0
993 ; IPAA:   MayAlias:     double* %loaded_a1, double* %noescape_alloca_b0
994 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noescape_alloca_b0
995 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noescape_alloca_b0
996 ; IPAA:   NoAlias:      double* %noescape_alloca_a0, double* %noescape_alloca_b0
997 ; IPAA:   NoAlias:      double* %noescape_alloca_a1, double* %noescape_alloca_b0
998 ; IPAA:   MayAlias:     double* %noescape_alloca_b0, double* %normal_ret_a0
999 ; IPAA:   MayAlias:     double* %noescape_alloca_b0, double* %normal_ret_a1
1000 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double* %noescape_alloca_b0
1001 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double* %noescape_alloca_b0
1002 ; IPAA:   NoAlias:      double* %arg_b0, double* %noescape_alloca_b0
1003 ; IPAA:   NoAlias:      double* %arg_b1, double* %noescape_alloca_b0
1004 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double* %noescape_alloca_b0
1005 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double* %noescape_alloca_b0
1006 ; IPAA:   NoAlias:      double* %noescape_alloca_b0, double** %indirect_b0
1007 ; IPAA:   NoAlias:      double* %noescape_alloca_b0, double** %indirect_b1
1008 ; IPAA:   NoAlias:      double* %loaded_b0, double* %noescape_alloca_b0
1009 ; IPAA:   NoAlias:      double* %loaded_b1, double* %noescape_alloca_b0
1010 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noescape_alloca_b0
1011 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noescape_alloca_b0
1012 ; IPAA:   MayAlias:     double* %callee_arg, double* %noescape_alloca_b1
1013 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %noescape_alloca_b1
1014 ; IPAA:   MayAlias:     double* %arg_a0, double* %noescape_alloca_b1
1015 ; IPAA:   MayAlias:     double* %arg_a1, double* %noescape_alloca_b1
1016 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %noescape_alloca_b1
1017 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %noescape_alloca_b1
1018 ; IPAA:   MayAlias:     double* %noescape_alloca_b1, double** %indirect_a0
1019 ; IPAA:   MayAlias:     double* %noescape_alloca_b1, double** %indirect_a1
1020 ; IPAA:   MayAlias:     double* %loaded_a0, double* %noescape_alloca_b1
1021 ; IPAA:   MayAlias:     double* %loaded_a1, double* %noescape_alloca_b1
1022 ; IPAA:   NoAlias:      double* %escape_alloca_a0, double* %noescape_alloca_b1
1023 ; IPAA:   NoAlias:      double* %escape_alloca_a1, double* %noescape_alloca_b1
1024 ; IPAA:   NoAlias:      double* %noescape_alloca_a0, double* %noescape_alloca_b1
1025 ; IPAA:   NoAlias:      double* %noescape_alloca_a1, double* %noescape_alloca_b1
1026 ; IPAA:   MayAlias:     double* %noescape_alloca_b1, double* %normal_ret_a0
1027 ; IPAA:   MayAlias:     double* %noescape_alloca_b1, double* %normal_ret_a1
1028 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double* %noescape_alloca_b1
1029 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double* %noescape_alloca_b1
1030 ; IPAA:   NoAlias:      double* %arg_b0, double* %noescape_alloca_b1
1031 ; IPAA:   NoAlias:      double* %arg_b1, double* %noescape_alloca_b1
1032 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double* %noescape_alloca_b1
1033 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double* %noescape_alloca_b1
1034 ; IPAA:   NoAlias:      double* %noescape_alloca_b1, double** %indirect_b0
1035 ; IPAA:   NoAlias:      double* %noescape_alloca_b1, double** %indirect_b1
1036 ; IPAA:   NoAlias:      double* %loaded_b0, double* %noescape_alloca_b1
1037 ; IPAA:   NoAlias:      double* %loaded_b1, double* %noescape_alloca_b1
1038 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noescape_alloca_b1
1039 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noescape_alloca_b1
1040 ; IPAA:   NoAlias:      double* %noescape_alloca_b0, double* %noescape_alloca_b1
1041 ; IPAA:   MayAlias:     double* %callee_arg, double* %normal_ret_b0
1042 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %normal_ret_b0
1043 ; IPAA:   MayAlias:     double* %arg_a0, double* %normal_ret_b0
1044 ; IPAA:   MayAlias:     double* %arg_a1, double* %normal_ret_b0
1045 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %normal_ret_b0
1046 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %normal_ret_b0
1047 ; IPAA:   MayAlias:     double* %normal_ret_b0, double** %indirect_a0
1048 ; IPAA:   MayAlias:     double* %normal_ret_b0, double** %indirect_a1
1049 ; IPAA:   MayAlias:     double* %loaded_a0, double* %normal_ret_b0
1050 ; IPAA:   MayAlias:     double* %loaded_a1, double* %normal_ret_b0
1051 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %normal_ret_b0
1052 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %normal_ret_b0
1053 ; IPAA:   MayAlias:     double* %noescape_alloca_a0, double* %normal_ret_b0
1054 ; IPAA:   MayAlias:     double* %noescape_alloca_a1, double* %normal_ret_b0
1055 ; IPAA:   MayAlias:     double* %normal_ret_a0, double* %normal_ret_b0
1056 ; IPAA:   MayAlias:     double* %normal_ret_a1, double* %normal_ret_b0
1057 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double* %normal_ret_b0
1058 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double* %normal_ret_b0
1059 ; IPAA:   MayAlias:     double* %arg_b0, double* %normal_ret_b0
1060 ; IPAA:   MayAlias:     double* %arg_b1, double* %normal_ret_b0
1061 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double* %normal_ret_b0
1062 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double* %normal_ret_b0
1063 ; IPAA:   MayAlias:     double* %normal_ret_b0, double** %indirect_b0
1064 ; IPAA:   MayAlias:     double* %normal_ret_b0, double** %indirect_b1
1065 ; IPAA:   MayAlias:     double* %loaded_b0, double* %normal_ret_b0
1066 ; IPAA:   MayAlias:     double* %loaded_b1, double* %normal_ret_b0
1067 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %normal_ret_b0
1068 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %normal_ret_b0
1069 ; IPAA:   NoAlias:      double* %noescape_alloca_b0, double* %normal_ret_b0
1070 ; IPAA:   NoAlias:      double* %noescape_alloca_b1, double* %normal_ret_b0
1071 ; IPAA:   MayAlias:     double* %callee_arg, double* %normal_ret_b1
1072 ; IPAA:   MayAlias:     double* %nocap_callee_arg, double* %normal_ret_b1
1073 ; IPAA:   MayAlias:     double* %arg_a0, double* %normal_ret_b1
1074 ; IPAA:   MayAlias:     double* %arg_a1, double* %normal_ret_b1
1075 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %normal_ret_b1
1076 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %normal_ret_b1
1077 ; IPAA:   MayAlias:     double* %normal_ret_b1, double** %indirect_a0
1078 ; IPAA:   MayAlias:     double* %normal_ret_b1, double** %indirect_a1
1079 ; IPAA:   MayAlias:     double* %loaded_a0, double* %normal_ret_b1
1080 ; IPAA:   MayAlias:     double* %loaded_a1, double* %normal_ret_b1
1081 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %normal_ret_b1
1082 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %normal_ret_b1
1083 ; IPAA:   MayAlias:     double* %noescape_alloca_a0, double* %normal_ret_b1
1084 ; IPAA:   MayAlias:     double* %noescape_alloca_a1, double* %normal_ret_b1
1085 ; IPAA:   MayAlias:     double* %normal_ret_a0, double* %normal_ret_b1
1086 ; IPAA:   MayAlias:     double* %normal_ret_a1, double* %normal_ret_b1
1087 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double* %normal_ret_b1
1088 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double* %normal_ret_b1
1089 ; IPAA:   MayAlias:     double* %arg_b0, double* %normal_ret_b1
1090 ; IPAA:   MayAlias:     double* %arg_b1, double* %normal_ret_b1
1091 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double* %normal_ret_b1
1092 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double* %normal_ret_b1
1093 ; IPAA:   MayAlias:     double* %normal_ret_b1, double** %indirect_b0
1094 ; IPAA:   MayAlias:     double* %normal_ret_b1, double** %indirect_b1
1095 ; IPAA:   MayAlias:     double* %loaded_b0, double* %normal_ret_b1
1096 ; IPAA:   MayAlias:     double* %loaded_b1, double* %normal_ret_b1
1097 ; IPAA:   MayAlias:     double* %escape_alloca_b0, double* %normal_ret_b1
1098 ; IPAA:   MayAlias:     double* %escape_alloca_b1, double* %normal_ret_b1
1099 ; IPAA:   NoAlias:      double* %noescape_alloca_b0, double* %normal_ret_b1
1100 ; IPAA:   NoAlias:      double* %noescape_alloca_b1, double* %normal_ret_b1
1101 ; IPAA:   MayAlias:     double* %normal_ret_b0, double* %normal_ret_b1
1102 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_ret_b0
1103 ; IPAA:   MayAlias:     double* %noalias_ret_b0, double* %nocap_callee_arg
1104 ; IPAA:   MayAlias:     double* %arg_a0, double* %noalias_ret_b0
1105 ; IPAA:   MayAlias:     double* %arg_a1, double* %noalias_ret_b0
1106 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %noalias_ret_b0
1107 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %noalias_ret_b0
1108 ; IPAA:   MayAlias:     double* %noalias_ret_b0, double** %indirect_a0
1109 ; IPAA:   MayAlias:     double* %noalias_ret_b0, double** %indirect_a1
1110 ; IPAA:   MayAlias:     double* %loaded_a0, double* %noalias_ret_b0
1111 ; IPAA:   MayAlias:     double* %loaded_a1, double* %noalias_ret_b0
1112 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %noalias_ret_b0
1113 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %noalias_ret_b0
1114 ; IPAA:   MayAlias:     double* %noalias_ret_b0, double* %noescape_alloca_a0
1115 ; IPAA:   MayAlias:     double* %noalias_ret_b0, double* %noescape_alloca_a1
1116 ; IPAA:   MayAlias:     double* %noalias_ret_b0, double* %normal_ret_a0
1117 ; IPAA:   MayAlias:     double* %noalias_ret_b0, double* %normal_ret_a1
1118 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double* %noalias_ret_b0
1119 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double* %noalias_ret_b0
1120 ; IPAA:   NoAlias:      double* %arg_b0, double* %noalias_ret_b0
1121 ; IPAA:   NoAlias:      double* %arg_b1, double* %noalias_ret_b0
1122 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double* %noalias_ret_b0
1123 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double* %noalias_ret_b0
1124 ; IPAA:   NoAlias:      double* %noalias_ret_b0, double** %indirect_b0
1125 ; IPAA:   NoAlias:      double* %noalias_ret_b0, double** %indirect_b1
1126 ; IPAA:   NoAlias:      double* %loaded_b0, double* %noalias_ret_b0
1127 ; IPAA:   NoAlias:      double* %loaded_b1, double* %noalias_ret_b0
1128 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noalias_ret_b0
1129 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noalias_ret_b0
1130 ; IPAA:   NoAlias:      double* %noalias_ret_b0, double* %noescape_alloca_b0
1131 ; IPAA:   NoAlias:      double* %noalias_ret_b0, double* %noescape_alloca_b1
1132 ; IPAA:   NoAlias:      double* %noalias_ret_b0, double* %normal_ret_b0
1133 ; IPAA:   NoAlias:      double* %noalias_ret_b0, double* %normal_ret_b1
1134 ; IPAA:   MayAlias:     double* %callee_arg, double* %noalias_ret_b1
1135 ; IPAA:   MayAlias:     double* %noalias_ret_b1, double* %nocap_callee_arg
1136 ; IPAA:   MayAlias:     double* %arg_a0, double* %noalias_ret_b1
1137 ; IPAA:   MayAlias:     double* %arg_a1, double* %noalias_ret_b1
1138 ; IPAA:   MayAlias:     double* %noalias_arg_a0, double* %noalias_ret_b1
1139 ; IPAA:   MayAlias:     double* %noalias_arg_a1, double* %noalias_ret_b1
1140 ; IPAA:   MayAlias:     double* %noalias_ret_b1, double** %indirect_a0
1141 ; IPAA:   MayAlias:     double* %noalias_ret_b1, double** %indirect_a1
1142 ; IPAA:   MayAlias:     double* %loaded_a0, double* %noalias_ret_b1
1143 ; IPAA:   MayAlias:     double* %loaded_a1, double* %noalias_ret_b1
1144 ; IPAA:   MayAlias:     double* %escape_alloca_a0, double* %noalias_ret_b1
1145 ; IPAA:   MayAlias:     double* %escape_alloca_a1, double* %noalias_ret_b1
1146 ; IPAA:   MayAlias:     double* %noalias_ret_b1, double* %noescape_alloca_a0
1147 ; IPAA:   MayAlias:     double* %noalias_ret_b1, double* %noescape_alloca_a1
1148 ; IPAA:   MayAlias:     double* %noalias_ret_b1, double* %normal_ret_a0
1149 ; IPAA:   MayAlias:     double* %noalias_ret_b1, double* %normal_ret_a1
1150 ; IPAA:   MayAlias:     double* %noalias_ret_a0, double* %noalias_ret_b1
1151 ; IPAA:   MayAlias:     double* %noalias_ret_a1, double* %noalias_ret_b1
1152 ; IPAA:   NoAlias:      double* %arg_b0, double* %noalias_ret_b1
1153 ; IPAA:   NoAlias:      double* %arg_b1, double* %noalias_ret_b1
1154 ; IPAA:   NoAlias:      double* %noalias_arg_b0, double* %noalias_ret_b1
1155 ; IPAA:   NoAlias:      double* %noalias_arg_b1, double* %noalias_ret_b1
1156 ; IPAA:   NoAlias:      double* %noalias_ret_b1, double** %indirect_b0
1157 ; IPAA:   NoAlias:      double* %noalias_ret_b1, double** %indirect_b1
1158 ; IPAA:   NoAlias:      double* %loaded_b0, double* %noalias_ret_b1
1159 ; IPAA:   NoAlias:      double* %loaded_b1, double* %noalias_ret_b1
1160 ; IPAA:   NoAlias:      double* %escape_alloca_b0, double* %noalias_ret_b1
1161 ; IPAA:   NoAlias:      double* %escape_alloca_b1, double* %noalias_ret_b1
1162 ; IPAA:   NoAlias:      double* %noalias_ret_b1, double* %noescape_alloca_b0
1163 ; IPAA:   NoAlias:      double* %noalias_ret_b1, double* %noescape_alloca_b1
1164 ; IPAA:   NoAlias:      double* %noalias_ret_b1, double* %normal_ret_b0
1165 ; IPAA:   NoAlias:      double* %noalias_ret_b1, double* %normal_ret_b1
1166 ; IPAA:   NoAlias:      double* %noalias_ret_b0, double* %noalias_ret_b1
1167 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1168 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1169 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1170 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1171 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1172 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1173 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1174 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1175 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1176 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1177 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1178 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1179 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a0   <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1180 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a1   <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1181 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1182 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1183 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a0       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1184 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a1       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1185 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1186 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1187 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1188 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1189 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1190 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1191 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1192 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1193 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1194 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1195 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1196 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1197 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1198 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1199 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1200 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  %normal_ret_a0 = call double* @normal_returner() ; <double*> [#uses=1]
1201 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1202 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1203 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1204 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1205 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1206 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1207 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1208 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1209 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1210 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1211 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1212 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1213 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a0   <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1214 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a1   <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1215 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1216 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1217 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a0       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1218 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a1       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1219 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1220 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1221 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1222 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1223 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1224 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1225 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1226 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1227 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1228 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1229 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1230 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1231 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1232 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1233 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1234 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  %normal_ret_a1 = call double* @normal_returner() ; <double*> [#uses=1]
1235 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1236 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1237 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1238 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1239 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1240 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1241 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1242 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1243 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1244 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1245 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1246 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1247 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a0   <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1248 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a1   <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1249 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1250 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1251 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1252 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a1       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1253 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1254 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1255 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1256 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1257 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1258 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1259 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1260 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1261 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1262 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1263 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1264 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1265 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1266 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1267 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1268 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  %noalias_ret_a0 = call double* @noalias_returner() ; <double*> [#uses=1]
1269 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1270 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1271 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1272 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1273 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1274 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1275 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1276 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1277 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1278 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1279 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1280 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1281 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a0   <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1282 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a1   <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1283 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1284 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1285 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a0       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1286 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1287 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1288 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1289 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1290 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1291 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1292 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1293 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1294 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1295 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1296 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1297 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1298 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1299 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1300 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1301 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1302 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  %noalias_ret_a1 = call double* @noalias_returner() ; <double*> [#uses=1]
1303 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @callee(double* %escape_alloca_a0)
1304 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @callee(double* %escape_alloca_a0)
1305 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @callee(double* %escape_alloca_a0)
1306 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @callee(double* %escape_alloca_a0)
1307 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  call void @callee(double* %escape_alloca_a0)
1308 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  call void @callee(double* %escape_alloca_a0)
1309 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @callee(double* %escape_alloca_a0)
1310 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @callee(double* %escape_alloca_a0)
1311 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @callee(double* %escape_alloca_a0)
1312 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @callee(double* %escape_alloca_a0)
1313 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @callee(double* %escape_alloca_a0)
1314 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @callee(double* %escape_alloca_a0)
1315 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @callee(double* %escape_alloca_a0)
1316 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @callee(double* %escape_alloca_a0)
1317 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @callee(double* %escape_alloca_a0)
1318 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @callee(double* %escape_alloca_a0)
1319 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a0       <->  call void @callee(double* %escape_alloca_a0)
1320 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a1       <->  call void @callee(double* %escape_alloca_a0)
1321 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @callee(double* %escape_alloca_a0)
1322 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @callee(double* %escape_alloca_a0)
1323 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  call void @callee(double* %escape_alloca_a0)
1324 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  call void @callee(double* %escape_alloca_a0)
1325 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @callee(double* %escape_alloca_a0)
1326 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @callee(double* %escape_alloca_a0)
1327 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @callee(double* %escape_alloca_a0)
1328 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @callee(double* %escape_alloca_a0)
1329 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @callee(double* %escape_alloca_a0)
1330 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @callee(double* %escape_alloca_a0)
1331 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @callee(double* %escape_alloca_a0)
1332 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @callee(double* %escape_alloca_a0)
1333 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @callee(double* %escape_alloca_a0)
1334 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @callee(double* %escape_alloca_a0)
1335 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  call void @callee(double* %escape_alloca_a0)
1336 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  call void @callee(double* %escape_alloca_a0)
1337 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @callee(double* %escape_alloca_a1)
1338 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @callee(double* %escape_alloca_a1)
1339 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @callee(double* %escape_alloca_a1)
1340 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @callee(double* %escape_alloca_a1)
1341 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  call void @callee(double* %escape_alloca_a1)
1342 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  call void @callee(double* %escape_alloca_a1)
1343 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @callee(double* %escape_alloca_a1)
1344 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @callee(double* %escape_alloca_a1)
1345 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @callee(double* %escape_alloca_a1)
1346 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @callee(double* %escape_alloca_a1)
1347 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @callee(double* %escape_alloca_a1)
1348 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @callee(double* %escape_alloca_a1)
1349 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @callee(double* %escape_alloca_a1)
1350 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @callee(double* %escape_alloca_a1)
1351 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @callee(double* %escape_alloca_a1)
1352 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @callee(double* %escape_alloca_a1)
1353 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a0       <->  call void @callee(double* %escape_alloca_a1)
1354 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a1       <->  call void @callee(double* %escape_alloca_a1)
1355 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @callee(double* %escape_alloca_a1)
1356 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @callee(double* %escape_alloca_a1)
1357 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  call void @callee(double* %escape_alloca_a1)
1358 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  call void @callee(double* %escape_alloca_a1)
1359 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @callee(double* %escape_alloca_a1)
1360 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @callee(double* %escape_alloca_a1)
1361 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @callee(double* %escape_alloca_a1)
1362 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @callee(double* %escape_alloca_a1)
1363 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @callee(double* %escape_alloca_a1)
1364 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @callee(double* %escape_alloca_a1)
1365 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @callee(double* %escape_alloca_a1)
1366 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @callee(double* %escape_alloca_a1)
1367 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @callee(double* %escape_alloca_a1)
1368 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @callee(double* %escape_alloca_a1)
1369 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  call void @callee(double* %escape_alloca_a1)
1370 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  call void @callee(double* %escape_alloca_a1)
1371 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @nocap_callee(double* %noescape_alloca_a0)
1372 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @nocap_callee(double* %noescape_alloca_a0)
1373 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1374 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1375 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1376 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1377 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @nocap_callee(double* %noescape_alloca_a0)
1378 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @nocap_callee(double* %noescape_alloca_a0)
1379 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @nocap_callee(double* %noescape_alloca_a0)
1380 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @nocap_callee(double* %noescape_alloca_a0)
1381 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @nocap_callee(double* %noescape_alloca_a0)
1382 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @nocap_callee(double* %noescape_alloca_a0)
1383 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @nocap_callee(double* %noescape_alloca_a0)
1384 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @nocap_callee(double* %noescape_alloca_a0)
1385 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @nocap_callee(double* %noescape_alloca_a0)
1386 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @nocap_callee(double* %noescape_alloca_a0)
1387 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a0       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1388 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a1       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1389 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1390 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1391 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1392 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1393 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @nocap_callee(double* %noescape_alloca_a0)
1394 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @nocap_callee(double* %noescape_alloca_a0)
1395 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @nocap_callee(double* %noescape_alloca_a0)
1396 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @nocap_callee(double* %noescape_alloca_a0)
1397 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @nocap_callee(double* %noescape_alloca_a0)
1398 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @nocap_callee(double* %noescape_alloca_a0)
1399 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @nocap_callee(double* %noescape_alloca_a0)
1400 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @nocap_callee(double* %noescape_alloca_a0)
1401 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @nocap_callee(double* %noescape_alloca_a0)
1402 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @nocap_callee(double* %noescape_alloca_a0)
1403 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1404 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  call void @nocap_callee(double* %noescape_alloca_a0)
1405 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @nocap_callee(double* %noescape_alloca_a1)
1406 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @nocap_callee(double* %noescape_alloca_a1)
1407 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1408 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1409 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1410 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1411 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @nocap_callee(double* %noescape_alloca_a1)
1412 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @nocap_callee(double* %noescape_alloca_a1)
1413 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @nocap_callee(double* %noescape_alloca_a1)
1414 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @nocap_callee(double* %noescape_alloca_a1)
1415 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @nocap_callee(double* %noescape_alloca_a1)
1416 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @nocap_callee(double* %noescape_alloca_a1)
1417 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @nocap_callee(double* %noescape_alloca_a1)
1418 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @nocap_callee(double* %noescape_alloca_a1)
1419 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @nocap_callee(double* %noescape_alloca_a1)
1420 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @nocap_callee(double* %noescape_alloca_a1)
1421 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a0       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1422 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_a1       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1423 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1424 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1425 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1426 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1427 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @nocap_callee(double* %noescape_alloca_a1)
1428 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @nocap_callee(double* %noescape_alloca_a1)
1429 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @nocap_callee(double* %noescape_alloca_a1)
1430 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @nocap_callee(double* %noescape_alloca_a1)
1431 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @nocap_callee(double* %noescape_alloca_a1)
1432 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @nocap_callee(double* %noescape_alloca_a1)
1433 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @nocap_callee(double* %noescape_alloca_a1)
1434 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @nocap_callee(double* %noescape_alloca_a1)
1435 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @nocap_callee(double* %noescape_alloca_a1)
1436 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @nocap_callee(double* %noescape_alloca_a1)
1437 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1438 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  call void @nocap_callee(double* %noescape_alloca_a1)
1439 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1440 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1441 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1442 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1443 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1444 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1445 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1446 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1447 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1448 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1449 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1450 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1451 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1452 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1453 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1454 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1455 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1456 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1457 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1458 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1459 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1460 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1461 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1462 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1463 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1464 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1465 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1466 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1467 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b0   <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1468 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b1   <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1469 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1470 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1471 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b0       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1472 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b1       <->  %normal_ret_b0 = call double* @normal_returner() ; <double*> [#uses=1]
1473 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1474 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1475 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1476 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1477 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1478 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1479 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1480 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1481 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1482 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1483 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1484 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1485 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1486 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1487 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1488 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1489 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1490 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1491 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1492 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1493 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1494 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1495 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1496 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1497 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1498 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1499 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1500 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1501 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b0   <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1502 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b1   <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1503 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1504 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1505 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b0       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1506 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b1       <->  %normal_ret_b1 = call double* @normal_returner() ; <double*> [#uses=1]
1507 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1508 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1509 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1510 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1511 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1512 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1513 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1514 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1515 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1516 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1517 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1518 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1519 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1520 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1521 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1522 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1523 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1524 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1525 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1526 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1527 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1528 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1529 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1530 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1531 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1532 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1533 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1534 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1535 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b0   <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1536 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b1   <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1537 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1538 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1539 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b0       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1540 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b1       <->  %noalias_ret_b0 = call double* @noalias_returner() ; <double*> [#uses=1]
1541 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1542 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1543 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1544 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1545 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1546 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1547 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1548 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1549 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1550 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1551 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1552 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1553 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1554 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1555 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1556 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1557 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1558 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1559 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1560 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1561 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1562 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1563 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1564 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1565 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1566 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1567 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1568 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1569 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b0   <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1570 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b1   <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1571 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1572 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1573 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b0       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1574 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_b1       <->  %noalias_ret_b1 = call double* @noalias_returner() ; <double*> [#uses=1]
1575 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @callee(double* %escape_alloca_b0)
1576 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @callee(double* %escape_alloca_b0)
1577 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @callee(double* %escape_alloca_b0)
1578 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @callee(double* %escape_alloca_b0)
1579 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  call void @callee(double* %escape_alloca_b0)
1580 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  call void @callee(double* %escape_alloca_b0)
1581 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @callee(double* %escape_alloca_b0)
1582 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @callee(double* %escape_alloca_b0)
1583 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @callee(double* %escape_alloca_b0)
1584 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @callee(double* %escape_alloca_b0)
1585 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @callee(double* %escape_alloca_b0)
1586 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @callee(double* %escape_alloca_b0)
1587 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @callee(double* %escape_alloca_b0)
1588 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @callee(double* %escape_alloca_b0)
1589 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @callee(double* %escape_alloca_b0)
1590 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @callee(double* %escape_alloca_b0)
1591 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  call void @callee(double* %escape_alloca_b0)
1592 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  call void @callee(double* %escape_alloca_b0)
1593 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @callee(double* %escape_alloca_b0)
1594 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @callee(double* %escape_alloca_b0)
1595 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  call void @callee(double* %escape_alloca_b0)
1596 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  call void @callee(double* %escape_alloca_b0)
1597 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @callee(double* %escape_alloca_b0)
1598 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @callee(double* %escape_alloca_b0)
1599 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @callee(double* %escape_alloca_b0)
1600 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @callee(double* %escape_alloca_b0)
1601 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @callee(double* %escape_alloca_b0)
1602 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @callee(double* %escape_alloca_b0)
1603 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @callee(double* %escape_alloca_b0)
1604 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @callee(double* %escape_alloca_b0)
1605 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @callee(double* %escape_alloca_b0)
1606 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @callee(double* %escape_alloca_b0)
1607 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b0       <->  call void @callee(double* %escape_alloca_b0)
1608 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b1       <->  call void @callee(double* %escape_alloca_b0)
1609 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @callee(double* %escape_alloca_b1)
1610 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @callee(double* %escape_alloca_b1)
1611 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @callee(double* %escape_alloca_b1)
1612 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @callee(double* %escape_alloca_b1)
1613 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  call void @callee(double* %escape_alloca_b1)
1614 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  call void @callee(double* %escape_alloca_b1)
1615 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @callee(double* %escape_alloca_b1)
1616 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @callee(double* %escape_alloca_b1)
1617 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @callee(double* %escape_alloca_b1)
1618 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @callee(double* %escape_alloca_b1)
1619 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @callee(double* %escape_alloca_b1)
1620 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @callee(double* %escape_alloca_b1)
1621 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @callee(double* %escape_alloca_b1)
1622 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @callee(double* %escape_alloca_b1)
1623 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @callee(double* %escape_alloca_b1)
1624 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @callee(double* %escape_alloca_b1)
1625 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  call void @callee(double* %escape_alloca_b1)
1626 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  call void @callee(double* %escape_alloca_b1)
1627 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @callee(double* %escape_alloca_b1)
1628 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @callee(double* %escape_alloca_b1)
1629 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  call void @callee(double* %escape_alloca_b1)
1630 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  call void @callee(double* %escape_alloca_b1)
1631 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @callee(double* %escape_alloca_b1)
1632 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @callee(double* %escape_alloca_b1)
1633 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @callee(double* %escape_alloca_b1)
1634 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @callee(double* %escape_alloca_b1)
1635 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @callee(double* %escape_alloca_b1)
1636 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @callee(double* %escape_alloca_b1)
1637 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @callee(double* %escape_alloca_b1)
1638 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @callee(double* %escape_alloca_b1)
1639 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @callee(double* %escape_alloca_b1)
1640 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @callee(double* %escape_alloca_b1)
1641 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b0       <->  call void @callee(double* %escape_alloca_b1)
1642 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b1       <->  call void @callee(double* %escape_alloca_b1)
1643 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @nocap_callee(double* %noescape_alloca_b0)
1644 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @nocap_callee(double* %noescape_alloca_b0)
1645 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1646 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1647 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1648 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1649 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @nocap_callee(double* %noescape_alloca_b0)
1650 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @nocap_callee(double* %noescape_alloca_b0)
1651 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @nocap_callee(double* %noescape_alloca_b0)
1652 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @nocap_callee(double* %noescape_alloca_b0)
1653 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @nocap_callee(double* %noescape_alloca_b0)
1654 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @nocap_callee(double* %noescape_alloca_b0)
1655 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @nocap_callee(double* %noescape_alloca_b0)
1656 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @nocap_callee(double* %noescape_alloca_b0)
1657 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @nocap_callee(double* %noescape_alloca_b0)
1658 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @nocap_callee(double* %noescape_alloca_b0)
1659 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1660 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1661 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1662 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1663 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1664 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1665 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @nocap_callee(double* %noescape_alloca_b0)
1666 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @nocap_callee(double* %noescape_alloca_b0)
1667 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @nocap_callee(double* %noescape_alloca_b0)
1668 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @nocap_callee(double* %noescape_alloca_b0)
1669 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @nocap_callee(double* %noescape_alloca_b0)
1670 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @nocap_callee(double* %noescape_alloca_b0)
1671 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @nocap_callee(double* %noescape_alloca_b0)
1672 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @nocap_callee(double* %noescape_alloca_b0)
1673 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @nocap_callee(double* %noescape_alloca_b0)
1674 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @nocap_callee(double* %noescape_alloca_b0)
1675 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b0       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1676 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b1       <->  call void @nocap_callee(double* %noescape_alloca_b0)
1677 ; IPAA:     ModRef:  Ptr: double* %callee_arg   <->  call void @nocap_callee(double* %noescape_alloca_b1)
1678 ; IPAA:     ModRef:  Ptr: double* %nocap_callee_arg     <->  call void @nocap_callee(double* %noescape_alloca_b1)
1679 ; IPAA:     ModRef:  Ptr: double* %arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1680 ; IPAA:     ModRef:  Ptr: double* %arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1681 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a0       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1682 ; IPAA:     ModRef:  Ptr: double* %noalias_arg_a1       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1683 ; IPAA:     ModRef:  Ptr: double** %indirect_a0 <->  call void @nocap_callee(double* %noescape_alloca_b1)
1684 ; IPAA:     ModRef:  Ptr: double** %indirect_a1 <->  call void @nocap_callee(double* %noescape_alloca_b1)
1685 ; IPAA:     ModRef:  Ptr: double* %loaded_a0    <->  call void @nocap_callee(double* %noescape_alloca_b1)
1686 ; IPAA:     ModRef:  Ptr: double* %loaded_a1    <->  call void @nocap_callee(double* %noescape_alloca_b1)
1687 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a0     <->  call void @nocap_callee(double* %noescape_alloca_b1)
1688 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_a1     <->  call void @nocap_callee(double* %noescape_alloca_b1)
1689 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a0   <->  call void @nocap_callee(double* %noescape_alloca_b1)
1690 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_a1   <->  call void @nocap_callee(double* %noescape_alloca_b1)
1691 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a0        <->  call void @nocap_callee(double* %noescape_alloca_b1)
1692 ; IPAA:     ModRef:  Ptr: double* %normal_ret_a1        <->  call void @nocap_callee(double* %noescape_alloca_b1)
1693 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a0       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1694 ; IPAA:     ModRef:  Ptr: double* %noalias_ret_a1       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1695 ; IPAA:     ModRef:  Ptr: double* %arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1696 ; IPAA:     ModRef:  Ptr: double* %arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1697 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b0       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1698 ; IPAA:   NoModRef:  Ptr: double* %noalias_arg_b1       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1699 ; IPAA:     ModRef:  Ptr: double** %indirect_b0 <->  call void @nocap_callee(double* %noescape_alloca_b1)
1700 ; IPAA:     ModRef:  Ptr: double** %indirect_b1 <->  call void @nocap_callee(double* %noescape_alloca_b1)
1701 ; IPAA:     ModRef:  Ptr: double* %loaded_b0    <->  call void @nocap_callee(double* %noescape_alloca_b1)
1702 ; IPAA:     ModRef:  Ptr: double* %loaded_b1    <->  call void @nocap_callee(double* %noescape_alloca_b1)
1703 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b0     <->  call void @nocap_callee(double* %noescape_alloca_b1)
1704 ; IPAA:     ModRef:  Ptr: double* %escape_alloca_b1     <->  call void @nocap_callee(double* %noescape_alloca_b1)
1705 ; IPAA:   NoModRef:  Ptr: double* %noescape_alloca_b0   <->  call void @nocap_callee(double* %noescape_alloca_b1)
1706 ; IPAA:     ModRef:  Ptr: double* %noescape_alloca_b1   <->  call void @nocap_callee(double* %noescape_alloca_b1)
1707 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b0        <->  call void @nocap_callee(double* %noescape_alloca_b1)
1708 ; IPAA:     ModRef:  Ptr: double* %normal_ret_b1        <->  call void @nocap_callee(double* %noescape_alloca_b1)
1709 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b0       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1710 ; IPAA:   NoModRef:  Ptr: double* %noalias_ret_b1       <->  call void @nocap_callee(double* %noescape_alloca_b1)
1711 ; IPAA: ===== Alias Analysis Evaluator Report =====
1712 ; IPAA:   561 Total Alias Queries Performed
1713 ; IPAA:   184 no alias responses (32.7%)
1714 ; IPAA:   377 may alias responses (67.2%)
1715 ; IPAA:   0 must alias responses (0.0%)
1716 ; IPAA:   Alias Analysis Evaluator Pointer Alias Summary: 32%/67%/0%
1717 ; IPAA:   544 Total ModRef Queries Performed
1718 ; IPAA:   88 no mod/ref responses (16.1%)
1719 ; IPAA:   0 mod responses (0.0%)
1720 ; IPAA:   0 ref responses (0.0%)
1721 ; IPAA:   456 mod & ref responses (83.8%)
1722 ; IPAA:   Alias Analysis Evaluator Mod/Ref Summary: 16%/0%/0%/83%