1 /*
2  * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * This code is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 only, as
7  * published by the Free Software Foundation.  Oracle designates this
8  * particular file as subject to the "Classpath" exception as provided
9  * by Oracle in the LICENSE file that accompanied this code.
10  *
11  * This code is distributed in the hope that it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14  * version 2 for more details (a copy is included in the LICENSE file that
15  * accompanied this code).
16  *
17  * You should have received a copy of the GNU General Public License version
18  * 2 along with this work; if not, write to the Free Software Foundation,
19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20  *
21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22  * or visit www.oracle.com if you need additional information or have any
23  * questions.
24  */
25 package java.lang.invoke;
26 
27 import jdk.internal.vm.annotation.ForceInline;
28 
29 // This class is auto-generated by java.lang.invoke.VarHandles$GuardMethodGenerator. Do not edit.
30 final class VarHandleGuards {
31 
32     @ForceInline
33     @LambdaForm.Compiled
guard_L_L(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad)34     final static Object guard_L_L(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad) throws Throwable {
35         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
36             Object r = MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
37             return ad.returnType.cast(r);
38         }
39         else {
40             MethodHandle mh = handle.getMethodHandle(ad.mode);
41             return mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
42         }
43     }
44 
45     @ForceInline
46     @LambdaForm.Compiled
guard_LL_V(VarHandle handle, Object arg0, Object arg1, VarHandle.AccessDescriptor ad)47     final static void guard_LL_V(VarHandle handle, Object arg0, Object arg1, VarHandle.AccessDescriptor ad) throws Throwable {
48         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
49             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
50         }
51         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
52             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
53         }
54         else {
55             MethodHandle mh = handle.getMethodHandle(ad.mode);
56             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
57         }
58     }
59 
60     @ForceInline
61     @LambdaForm.Compiled
guard_LL_L(VarHandle handle, Object arg0, Object arg1, VarHandle.AccessDescriptor ad)62     final static Object guard_LL_L(VarHandle handle, Object arg0, Object arg1, VarHandle.AccessDescriptor ad) throws Throwable {
63         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
64             Object r = MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
65             return ad.returnType.cast(r);
66         }
67         else {
68             MethodHandle mh = handle.getMethodHandle(ad.mode);
69             return mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
70         }
71     }
72 
73     @ForceInline
74     @LambdaForm.Compiled
guard_LLL_Z(VarHandle handle, Object arg0, Object arg1, Object arg2, VarHandle.AccessDescriptor ad)75     final static boolean guard_LLL_Z(VarHandle handle, Object arg0, Object arg1, Object arg2, VarHandle.AccessDescriptor ad) throws Throwable {
76         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
77             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
78         }
79         else {
80             MethodHandle mh = handle.getMethodHandle(ad.mode);
81             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
82         }
83     }
84 
85     @ForceInline
86     @LambdaForm.Compiled
guard_LLL_L(VarHandle handle, Object arg0, Object arg1, Object arg2, VarHandle.AccessDescriptor ad)87     final static Object guard_LLL_L(VarHandle handle, Object arg0, Object arg1, Object arg2, VarHandle.AccessDescriptor ad) throws Throwable {
88         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
89             Object r = MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
90             return ad.returnType.cast(r);
91         }
92         else {
93             MethodHandle mh = handle.getMethodHandle(ad.mode);
94             return mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
95         }
96     }
97 
98     @ForceInline
99     @LambdaForm.Compiled
guard_L_I(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad)100     final static int guard_L_I(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad) throws Throwable {
101         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
102             return (int) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
103         }
104         else {
105             MethodHandle mh = handle.getMethodHandle(ad.mode);
106             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
107         }
108     }
109 
110     @ForceInline
111     @LambdaForm.Compiled
guard_LI_V(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad)112     final static void guard_LI_V(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
113         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
114             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
115         }
116         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
117             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
118         }
119         else {
120             MethodHandle mh = handle.getMethodHandle(ad.mode);
121             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
122         }
123     }
124 
125     @ForceInline
126     @LambdaForm.Compiled
guard_LI_I(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad)127     final static int guard_LI_I(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
128         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
129             return (int) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
130         }
131         else {
132             MethodHandle mh = handle.getMethodHandle(ad.mode);
133             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
134         }
135     }
136 
137     @ForceInline
138     @LambdaForm.Compiled
guard_LII_Z(VarHandle handle, Object arg0, int arg1, int arg2, VarHandle.AccessDescriptor ad)139     final static boolean guard_LII_Z(VarHandle handle, Object arg0, int arg1, int arg2, VarHandle.AccessDescriptor ad) throws Throwable {
140         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
141             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
142         }
143         else {
144             MethodHandle mh = handle.getMethodHandle(ad.mode);
145             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
146         }
147     }
148 
149     @ForceInline
150     @LambdaForm.Compiled
guard_LII_I(VarHandle handle, Object arg0, int arg1, int arg2, VarHandle.AccessDescriptor ad)151     final static int guard_LII_I(VarHandle handle, Object arg0, int arg1, int arg2, VarHandle.AccessDescriptor ad) throws Throwable {
152         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
153             return (int) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
154         }
155         else {
156             MethodHandle mh = handle.getMethodHandle(ad.mode);
157             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
158         }
159     }
160 
161     @ForceInline
162     @LambdaForm.Compiled
guard_L_J(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad)163     final static long guard_L_J(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad) throws Throwable {
164         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
165             return (long) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
166         }
167         else {
168             MethodHandle mh = handle.getMethodHandle(ad.mode);
169             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
170         }
171     }
172 
173     @ForceInline
174     @LambdaForm.Compiled
guard_LJ_V(VarHandle handle, Object arg0, long arg1, VarHandle.AccessDescriptor ad)175     final static void guard_LJ_V(VarHandle handle, Object arg0, long arg1, VarHandle.AccessDescriptor ad) throws Throwable {
176         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
177             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
178         }
179         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
180             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
181         }
182         else {
183             MethodHandle mh = handle.getMethodHandle(ad.mode);
184             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
185         }
186     }
187 
188     @ForceInline
189     @LambdaForm.Compiled
guard_LJ_J(VarHandle handle, Object arg0, long arg1, VarHandle.AccessDescriptor ad)190     final static long guard_LJ_J(VarHandle handle, Object arg0, long arg1, VarHandle.AccessDescriptor ad) throws Throwable {
191         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
192             return (long) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
193         }
194         else {
195             MethodHandle mh = handle.getMethodHandle(ad.mode);
196             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
197         }
198     }
199 
200     @ForceInline
201     @LambdaForm.Compiled
guard_LJJ_Z(VarHandle handle, Object arg0, long arg1, long arg2, VarHandle.AccessDescriptor ad)202     final static boolean guard_LJJ_Z(VarHandle handle, Object arg0, long arg1, long arg2, VarHandle.AccessDescriptor ad) throws Throwable {
203         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
204             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
205         }
206         else {
207             MethodHandle mh = handle.getMethodHandle(ad.mode);
208             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
209         }
210     }
211 
212     @ForceInline
213     @LambdaForm.Compiled
guard_LJJ_J(VarHandle handle, Object arg0, long arg1, long arg2, VarHandle.AccessDescriptor ad)214     final static long guard_LJJ_J(VarHandle handle, Object arg0, long arg1, long arg2, VarHandle.AccessDescriptor ad) throws Throwable {
215         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
216             return (long) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
217         }
218         else {
219             MethodHandle mh = handle.getMethodHandle(ad.mode);
220             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
221         }
222     }
223 
224     @ForceInline
225     @LambdaForm.Compiled
guard_L_F(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad)226     final static float guard_L_F(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad) throws Throwable {
227         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
228             return (float) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
229         }
230         else {
231             MethodHandle mh = handle.getMethodHandle(ad.mode);
232             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
233         }
234     }
235 
236     @ForceInline
237     @LambdaForm.Compiled
guard_LF_V(VarHandle handle, Object arg0, float arg1, VarHandle.AccessDescriptor ad)238     final static void guard_LF_V(VarHandle handle, Object arg0, float arg1, VarHandle.AccessDescriptor ad) throws Throwable {
239         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
240             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
241         }
242         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
243             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
244         }
245         else {
246             MethodHandle mh = handle.getMethodHandle(ad.mode);
247             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
248         }
249     }
250 
251     @ForceInline
252     @LambdaForm.Compiled
guard_LF_F(VarHandle handle, Object arg0, float arg1, VarHandle.AccessDescriptor ad)253     final static float guard_LF_F(VarHandle handle, Object arg0, float arg1, VarHandle.AccessDescriptor ad) throws Throwable {
254         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
255             return (float) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
256         }
257         else {
258             MethodHandle mh = handle.getMethodHandle(ad.mode);
259             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
260         }
261     }
262 
263     @ForceInline
264     @LambdaForm.Compiled
guard_LFF_Z(VarHandle handle, Object arg0, float arg1, float arg2, VarHandle.AccessDescriptor ad)265     final static boolean guard_LFF_Z(VarHandle handle, Object arg0, float arg1, float arg2, VarHandle.AccessDescriptor ad) throws Throwable {
266         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
267             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
268         }
269         else {
270             MethodHandle mh = handle.getMethodHandle(ad.mode);
271             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
272         }
273     }
274 
275     @ForceInline
276     @LambdaForm.Compiled
guard_LFF_F(VarHandle handle, Object arg0, float arg1, float arg2, VarHandle.AccessDescriptor ad)277     final static float guard_LFF_F(VarHandle handle, Object arg0, float arg1, float arg2, VarHandle.AccessDescriptor ad) throws Throwable {
278         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
279             return (float) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
280         }
281         else {
282             MethodHandle mh = handle.getMethodHandle(ad.mode);
283             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
284         }
285     }
286 
287     @ForceInline
288     @LambdaForm.Compiled
guard_L_D(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad)289     final static double guard_L_D(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad) throws Throwable {
290         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
291             return (double) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
292         }
293         else {
294             MethodHandle mh = handle.getMethodHandle(ad.mode);
295             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
296         }
297     }
298 
299     @ForceInline
300     @LambdaForm.Compiled
guard_LD_V(VarHandle handle, Object arg0, double arg1, VarHandle.AccessDescriptor ad)301     final static void guard_LD_V(VarHandle handle, Object arg0, double arg1, VarHandle.AccessDescriptor ad) throws Throwable {
302         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
303             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
304         }
305         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
306             MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
307         }
308         else {
309             MethodHandle mh = handle.getMethodHandle(ad.mode);
310             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
311         }
312     }
313 
314     @ForceInline
315     @LambdaForm.Compiled
guard_LD_D(VarHandle handle, Object arg0, double arg1, VarHandle.AccessDescriptor ad)316     final static double guard_LD_D(VarHandle handle, Object arg0, double arg1, VarHandle.AccessDescriptor ad) throws Throwable {
317         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
318             return (double) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
319         }
320         else {
321             MethodHandle mh = handle.getMethodHandle(ad.mode);
322             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
323         }
324     }
325 
326     @ForceInline
327     @LambdaForm.Compiled
guard_LDD_Z(VarHandle handle, Object arg0, double arg1, double arg2, VarHandle.AccessDescriptor ad)328     final static boolean guard_LDD_Z(VarHandle handle, Object arg0, double arg1, double arg2, VarHandle.AccessDescriptor ad) throws Throwable {
329         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
330             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
331         }
332         else {
333             MethodHandle mh = handle.getMethodHandle(ad.mode);
334             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
335         }
336     }
337 
338     @ForceInline
339     @LambdaForm.Compiled
guard_LDD_D(VarHandle handle, Object arg0, double arg1, double arg2, VarHandle.AccessDescriptor ad)340     final static double guard_LDD_D(VarHandle handle, Object arg0, double arg1, double arg2, VarHandle.AccessDescriptor ad) throws Throwable {
341         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
342             return (double) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
343         }
344         else {
345             MethodHandle mh = handle.getMethodHandle(ad.mode);
346             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
347         }
348     }
349 
350     @ForceInline
351     @LambdaForm.Compiled
guard__L(VarHandle handle, VarHandle.AccessDescriptor ad)352     final static Object guard__L(VarHandle handle, VarHandle.AccessDescriptor ad) throws Throwable {
353         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
354             Object r = MethodHandle.linkToStatic(handle, handle.vform.getMemberName(ad.mode));
355             return ad.returnType.cast(r);
356         }
357         else {
358             MethodHandle mh = handle.getMethodHandle(ad.mode);
359             return mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle);
360         }
361     }
362 
363     @ForceInline
364     @LambdaForm.Compiled
guard_L_V(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad)365     final static void guard_L_V(VarHandle handle, Object arg0, VarHandle.AccessDescriptor ad) throws Throwable {
366         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
367             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
368         }
369         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
370             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
371         }
372         else {
373             MethodHandle mh = handle.getMethodHandle(ad.mode);
374             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
375         }
376     }
377 
378     @ForceInline
379     @LambdaForm.Compiled
guard_LL_Z(VarHandle handle, Object arg0, Object arg1, VarHandle.AccessDescriptor ad)380     final static boolean guard_LL_Z(VarHandle handle, Object arg0, Object arg1, VarHandle.AccessDescriptor ad) throws Throwable {
381         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
382             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
383         }
384         else {
385             MethodHandle mh = handle.getMethodHandle(ad.mode);
386             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
387         }
388     }
389 
390     @ForceInline
391     @LambdaForm.Compiled
guard__I(VarHandle handle, VarHandle.AccessDescriptor ad)392     final static int guard__I(VarHandle handle, VarHandle.AccessDescriptor ad) throws Throwable {
393         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
394             return (int) MethodHandle.linkToStatic(handle, handle.vform.getMemberName(ad.mode));
395         }
396         else {
397             MethodHandle mh = handle.getMethodHandle(ad.mode);
398             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle);
399         }
400     }
401 
402     @ForceInline
403     @LambdaForm.Compiled
guard_I_V(VarHandle handle, int arg0, VarHandle.AccessDescriptor ad)404     final static void guard_I_V(VarHandle handle, int arg0, VarHandle.AccessDescriptor ad) throws Throwable {
405         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
406             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
407         }
408         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
409             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
410         }
411         else {
412             MethodHandle mh = handle.getMethodHandle(ad.mode);
413             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
414         }
415     }
416 
417     @ForceInline
418     @LambdaForm.Compiled
guard_I_I(VarHandle handle, int arg0, VarHandle.AccessDescriptor ad)419     final static int guard_I_I(VarHandle handle, int arg0, VarHandle.AccessDescriptor ad) throws Throwable {
420         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
421             return (int) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
422         }
423         else {
424             MethodHandle mh = handle.getMethodHandle(ad.mode);
425             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
426         }
427     }
428 
429     @ForceInline
430     @LambdaForm.Compiled
guard_II_Z(VarHandle handle, int arg0, int arg1, VarHandle.AccessDescriptor ad)431     final static boolean guard_II_Z(VarHandle handle, int arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
432         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
433             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
434         }
435         else {
436             MethodHandle mh = handle.getMethodHandle(ad.mode);
437             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
438         }
439     }
440 
441     @ForceInline
442     @LambdaForm.Compiled
guard_II_I(VarHandle handle, int arg0, int arg1, VarHandle.AccessDescriptor ad)443     final static int guard_II_I(VarHandle handle, int arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
444         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
445             return (int) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
446         }
447         else {
448             MethodHandle mh = handle.getMethodHandle(ad.mode);
449             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
450         }
451     }
452 
453     @ForceInline
454     @LambdaForm.Compiled
guard__J(VarHandle handle, VarHandle.AccessDescriptor ad)455     final static long guard__J(VarHandle handle, VarHandle.AccessDescriptor ad) throws Throwable {
456         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
457             return (long) MethodHandle.linkToStatic(handle, handle.vform.getMemberName(ad.mode));
458         }
459         else {
460             MethodHandle mh = handle.getMethodHandle(ad.mode);
461             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle);
462         }
463     }
464 
465     @ForceInline
466     @LambdaForm.Compiled
guard_J_V(VarHandle handle, long arg0, VarHandle.AccessDescriptor ad)467     final static void guard_J_V(VarHandle handle, long arg0, VarHandle.AccessDescriptor ad) throws Throwable {
468         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
469             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
470         }
471         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
472             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
473         }
474         else {
475             MethodHandle mh = handle.getMethodHandle(ad.mode);
476             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
477         }
478     }
479 
480     @ForceInline
481     @LambdaForm.Compiled
guard_J_J(VarHandle handle, long arg0, VarHandle.AccessDescriptor ad)482     final static long guard_J_J(VarHandle handle, long arg0, VarHandle.AccessDescriptor ad) throws Throwable {
483         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
484             return (long) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
485         }
486         else {
487             MethodHandle mh = handle.getMethodHandle(ad.mode);
488             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
489         }
490     }
491 
492     @ForceInline
493     @LambdaForm.Compiled
guard_JJ_Z(VarHandle handle, long arg0, long arg1, VarHandle.AccessDescriptor ad)494     final static boolean guard_JJ_Z(VarHandle handle, long arg0, long arg1, VarHandle.AccessDescriptor ad) throws Throwable {
495         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
496             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
497         }
498         else {
499             MethodHandle mh = handle.getMethodHandle(ad.mode);
500             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
501         }
502     }
503 
504     @ForceInline
505     @LambdaForm.Compiled
guard_JJ_J(VarHandle handle, long arg0, long arg1, VarHandle.AccessDescriptor ad)506     final static long guard_JJ_J(VarHandle handle, long arg0, long arg1, VarHandle.AccessDescriptor ad) throws Throwable {
507         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
508             return (long) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
509         }
510         else {
511             MethodHandle mh = handle.getMethodHandle(ad.mode);
512             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
513         }
514     }
515 
516     @ForceInline
517     @LambdaForm.Compiled
guard__F(VarHandle handle, VarHandle.AccessDescriptor ad)518     final static float guard__F(VarHandle handle, VarHandle.AccessDescriptor ad) throws Throwable {
519         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
520             return (float) MethodHandle.linkToStatic(handle, handle.vform.getMemberName(ad.mode));
521         }
522         else {
523             MethodHandle mh = handle.getMethodHandle(ad.mode);
524             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle);
525         }
526     }
527 
528     @ForceInline
529     @LambdaForm.Compiled
guard_F_V(VarHandle handle, float arg0, VarHandle.AccessDescriptor ad)530     final static void guard_F_V(VarHandle handle, float arg0, VarHandle.AccessDescriptor ad) throws Throwable {
531         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
532             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
533         }
534         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
535             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
536         }
537         else {
538             MethodHandle mh = handle.getMethodHandle(ad.mode);
539             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
540         }
541     }
542 
543     @ForceInline
544     @LambdaForm.Compiled
guard_F_F(VarHandle handle, float arg0, VarHandle.AccessDescriptor ad)545     final static float guard_F_F(VarHandle handle, float arg0, VarHandle.AccessDescriptor ad) throws Throwable {
546         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
547             return (float) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
548         }
549         else {
550             MethodHandle mh = handle.getMethodHandle(ad.mode);
551             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
552         }
553     }
554 
555     @ForceInline
556     @LambdaForm.Compiled
guard_FF_Z(VarHandle handle, float arg0, float arg1, VarHandle.AccessDescriptor ad)557     final static boolean guard_FF_Z(VarHandle handle, float arg0, float arg1, VarHandle.AccessDescriptor ad) throws Throwable {
558         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
559             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
560         }
561         else {
562             MethodHandle mh = handle.getMethodHandle(ad.mode);
563             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
564         }
565     }
566 
567     @ForceInline
568     @LambdaForm.Compiled
guard_FF_F(VarHandle handle, float arg0, float arg1, VarHandle.AccessDescriptor ad)569     final static float guard_FF_F(VarHandle handle, float arg0, float arg1, VarHandle.AccessDescriptor ad) throws Throwable {
570         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
571             return (float) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
572         }
573         else {
574             MethodHandle mh = handle.getMethodHandle(ad.mode);
575             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
576         }
577     }
578 
579     @ForceInline
580     @LambdaForm.Compiled
guard__D(VarHandle handle, VarHandle.AccessDescriptor ad)581     final static double guard__D(VarHandle handle, VarHandle.AccessDescriptor ad) throws Throwable {
582         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
583             return (double) MethodHandle.linkToStatic(handle, handle.vform.getMemberName(ad.mode));
584         }
585         else {
586             MethodHandle mh = handle.getMethodHandle(ad.mode);
587             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle);
588         }
589     }
590 
591     @ForceInline
592     @LambdaForm.Compiled
guard_D_V(VarHandle handle, double arg0, VarHandle.AccessDescriptor ad)593     final static void guard_D_V(VarHandle handle, double arg0, VarHandle.AccessDescriptor ad) throws Throwable {
594         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
595             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
596         }
597         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
598             MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
599         }
600         else {
601             MethodHandle mh = handle.getMethodHandle(ad.mode);
602             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
603         }
604     }
605 
606     @ForceInline
607     @LambdaForm.Compiled
guard_D_D(VarHandle handle, double arg0, VarHandle.AccessDescriptor ad)608     final static double guard_D_D(VarHandle handle, double arg0, VarHandle.AccessDescriptor ad) throws Throwable {
609         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
610             return (double) MethodHandle.linkToStatic(handle, arg0, handle.vform.getMemberName(ad.mode));
611         }
612         else {
613             MethodHandle mh = handle.getMethodHandle(ad.mode);
614             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0);
615         }
616     }
617 
618     @ForceInline
619     @LambdaForm.Compiled
guard_DD_Z(VarHandle handle, double arg0, double arg1, VarHandle.AccessDescriptor ad)620     final static boolean guard_DD_Z(VarHandle handle, double arg0, double arg1, VarHandle.AccessDescriptor ad) throws Throwable {
621         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
622             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
623         }
624         else {
625             MethodHandle mh = handle.getMethodHandle(ad.mode);
626             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
627         }
628     }
629 
630     @ForceInline
631     @LambdaForm.Compiled
guard_DD_D(VarHandle handle, double arg0, double arg1, VarHandle.AccessDescriptor ad)632     final static double guard_DD_D(VarHandle handle, double arg0, double arg1, VarHandle.AccessDescriptor ad) throws Throwable {
633         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
634             return (double) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
635         }
636         else {
637             MethodHandle mh = handle.getMethodHandle(ad.mode);
638             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
639         }
640     }
641 
642     @ForceInline
643     @LambdaForm.Compiled
guard_LI_L(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad)644     final static Object guard_LI_L(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
645         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
646             Object r = MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
647             return ad.returnType.cast(r);
648         }
649         else {
650             MethodHandle mh = handle.getMethodHandle(ad.mode);
651             return mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
652         }
653     }
654 
655     @ForceInline
656     @LambdaForm.Compiled
guard_LIL_V(VarHandle handle, Object arg0, int arg1, Object arg2, VarHandle.AccessDescriptor ad)657     final static void guard_LIL_V(VarHandle handle, Object arg0, int arg1, Object arg2, VarHandle.AccessDescriptor ad) throws Throwable {
658         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
659             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
660         }
661         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
662             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
663         }
664         else {
665             MethodHandle mh = handle.getMethodHandle(ad.mode);
666             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
667         }
668     }
669 
670     @ForceInline
671     @LambdaForm.Compiled
guard_LIL_L(VarHandle handle, Object arg0, int arg1, Object arg2, VarHandle.AccessDescriptor ad)672     final static Object guard_LIL_L(VarHandle handle, Object arg0, int arg1, Object arg2, VarHandle.AccessDescriptor ad) throws Throwable {
673         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
674             Object r = MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
675             return ad.returnType.cast(r);
676         }
677         else {
678             MethodHandle mh = handle.getMethodHandle(ad.mode);
679             return mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
680         }
681     }
682 
683     @ForceInline
684     @LambdaForm.Compiled
guard_LILL_Z(VarHandle handle, Object arg0, int arg1, Object arg2, Object arg3, VarHandle.AccessDescriptor ad)685     final static boolean guard_LILL_Z(VarHandle handle, Object arg0, int arg1, Object arg2, Object arg3, VarHandle.AccessDescriptor ad) throws Throwable {
686         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
687             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
688         }
689         else {
690             MethodHandle mh = handle.getMethodHandle(ad.mode);
691             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
692         }
693     }
694 
695     @ForceInline
696     @LambdaForm.Compiled
guard_LILL_L(VarHandle handle, Object arg0, int arg1, Object arg2, Object arg3, VarHandle.AccessDescriptor ad)697     final static Object guard_LILL_L(VarHandle handle, Object arg0, int arg1, Object arg2, Object arg3, VarHandle.AccessDescriptor ad) throws Throwable {
698         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
699             Object r = MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
700             return ad.returnType.cast(r);
701         }
702         else {
703             MethodHandle mh = handle.getMethodHandle(ad.mode);
704             return mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
705         }
706     }
707 
708     @ForceInline
709     @LambdaForm.Compiled
guard_LII_V(VarHandle handle, Object arg0, int arg1, int arg2, VarHandle.AccessDescriptor ad)710     final static void guard_LII_V(VarHandle handle, Object arg0, int arg1, int arg2, VarHandle.AccessDescriptor ad) throws Throwable {
711         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
712             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
713         }
714         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
715             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
716         }
717         else {
718             MethodHandle mh = handle.getMethodHandle(ad.mode);
719             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
720         }
721     }
722 
723     @ForceInline
724     @LambdaForm.Compiled
guard_LIII_Z(VarHandle handle, Object arg0, int arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad)725     final static boolean guard_LIII_Z(VarHandle handle, Object arg0, int arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad) throws Throwable {
726         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
727             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
728         }
729         else {
730             MethodHandle mh = handle.getMethodHandle(ad.mode);
731             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
732         }
733     }
734 
735     @ForceInline
736     @LambdaForm.Compiled
guard_LIII_I(VarHandle handle, Object arg0, int arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad)737     final static int guard_LIII_I(VarHandle handle, Object arg0, int arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad) throws Throwable {
738         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
739             return (int) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
740         }
741         else {
742             MethodHandle mh = handle.getMethodHandle(ad.mode);
743             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
744         }
745     }
746 
747     @ForceInline
748     @LambdaForm.Compiled
guard_LI_J(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad)749     final static long guard_LI_J(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
750         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
751             return (long) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
752         }
753         else {
754             MethodHandle mh = handle.getMethodHandle(ad.mode);
755             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
756         }
757     }
758 
759     @ForceInline
760     @LambdaForm.Compiled
guard_LIJ_V(VarHandle handle, Object arg0, int arg1, long arg2, VarHandle.AccessDescriptor ad)761     final static void guard_LIJ_V(VarHandle handle, Object arg0, int arg1, long arg2, VarHandle.AccessDescriptor ad) throws Throwable {
762         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
763             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
764         }
765         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
766             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
767         }
768         else {
769             MethodHandle mh = handle.getMethodHandle(ad.mode);
770             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
771         }
772     }
773 
774     @ForceInline
775     @LambdaForm.Compiled
guard_LIJ_J(VarHandle handle, Object arg0, int arg1, long arg2, VarHandle.AccessDescriptor ad)776     final static long guard_LIJ_J(VarHandle handle, Object arg0, int arg1, long arg2, VarHandle.AccessDescriptor ad) throws Throwable {
777         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
778             return (long) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
779         }
780         else {
781             MethodHandle mh = handle.getMethodHandle(ad.mode);
782             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
783         }
784     }
785 
786     @ForceInline
787     @LambdaForm.Compiled
guard_LIJJ_Z(VarHandle handle, Object arg0, int arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad)788     final static boolean guard_LIJJ_Z(VarHandle handle, Object arg0, int arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad) throws Throwable {
789         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
790             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
791         }
792         else {
793             MethodHandle mh = handle.getMethodHandle(ad.mode);
794             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
795         }
796     }
797 
798     @ForceInline
799     @LambdaForm.Compiled
guard_LIJJ_J(VarHandle handle, Object arg0, int arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad)800     final static long guard_LIJJ_J(VarHandle handle, Object arg0, int arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad) throws Throwable {
801         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
802             return (long) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
803         }
804         else {
805             MethodHandle mh = handle.getMethodHandle(ad.mode);
806             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
807         }
808     }
809 
810     @ForceInline
811     @LambdaForm.Compiled
guard_LI_F(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad)812     final static float guard_LI_F(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
813         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
814             return (float) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
815         }
816         else {
817             MethodHandle mh = handle.getMethodHandle(ad.mode);
818             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
819         }
820     }
821 
822     @ForceInline
823     @LambdaForm.Compiled
guard_LIF_V(VarHandle handle, Object arg0, int arg1, float arg2, VarHandle.AccessDescriptor ad)824     final static void guard_LIF_V(VarHandle handle, Object arg0, int arg1, float arg2, VarHandle.AccessDescriptor ad) throws Throwable {
825         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
826             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
827         }
828         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
829             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
830         }
831         else {
832             MethodHandle mh = handle.getMethodHandle(ad.mode);
833             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
834         }
835     }
836 
837     @ForceInline
838     @LambdaForm.Compiled
guard_LIF_F(VarHandle handle, Object arg0, int arg1, float arg2, VarHandle.AccessDescriptor ad)839     final static float guard_LIF_F(VarHandle handle, Object arg0, int arg1, float arg2, VarHandle.AccessDescriptor ad) throws Throwable {
840         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
841             return (float) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
842         }
843         else {
844             MethodHandle mh = handle.getMethodHandle(ad.mode);
845             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
846         }
847     }
848 
849     @ForceInline
850     @LambdaForm.Compiled
guard_LIFF_Z(VarHandle handle, Object arg0, int arg1, float arg2, float arg3, VarHandle.AccessDescriptor ad)851     final static boolean guard_LIFF_Z(VarHandle handle, Object arg0, int arg1, float arg2, float arg3, VarHandle.AccessDescriptor ad) throws Throwable {
852         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
853             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
854         }
855         else {
856             MethodHandle mh = handle.getMethodHandle(ad.mode);
857             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
858         }
859     }
860 
861     @ForceInline
862     @LambdaForm.Compiled
guard_LIFF_F(VarHandle handle, Object arg0, int arg1, float arg2, float arg3, VarHandle.AccessDescriptor ad)863     final static float guard_LIFF_F(VarHandle handle, Object arg0, int arg1, float arg2, float arg3, VarHandle.AccessDescriptor ad) throws Throwable {
864         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
865             return (float) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
866         }
867         else {
868             MethodHandle mh = handle.getMethodHandle(ad.mode);
869             return (float) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
870         }
871     }
872 
873     @ForceInline
874     @LambdaForm.Compiled
guard_LI_D(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad)875     final static double guard_LI_D(VarHandle handle, Object arg0, int arg1, VarHandle.AccessDescriptor ad) throws Throwable {
876         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
877             return (double) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
878         }
879         else {
880             MethodHandle mh = handle.getMethodHandle(ad.mode);
881             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
882         }
883     }
884 
885     @ForceInline
886     @LambdaForm.Compiled
guard_LID_V(VarHandle handle, Object arg0, int arg1, double arg2, VarHandle.AccessDescriptor ad)887     final static void guard_LID_V(VarHandle handle, Object arg0, int arg1, double arg2, VarHandle.AccessDescriptor ad) throws Throwable {
888         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
889             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
890         }
891         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
892             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
893         }
894         else {
895             MethodHandle mh = handle.getMethodHandle(ad.mode);
896             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
897         }
898     }
899 
900     @ForceInline
901     @LambdaForm.Compiled
guard_LID_D(VarHandle handle, Object arg0, int arg1, double arg2, VarHandle.AccessDescriptor ad)902     final static double guard_LID_D(VarHandle handle, Object arg0, int arg1, double arg2, VarHandle.AccessDescriptor ad) throws Throwable {
903         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
904             return (double) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
905         }
906         else {
907             MethodHandle mh = handle.getMethodHandle(ad.mode);
908             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
909         }
910     }
911 
912     @ForceInline
913     @LambdaForm.Compiled
guard_LIDD_Z(VarHandle handle, Object arg0, int arg1, double arg2, double arg3, VarHandle.AccessDescriptor ad)914     final static boolean guard_LIDD_Z(VarHandle handle, Object arg0, int arg1, double arg2, double arg3, VarHandle.AccessDescriptor ad) throws Throwable {
915         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
916             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
917         }
918         else {
919             MethodHandle mh = handle.getMethodHandle(ad.mode);
920             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
921         }
922     }
923 
924     @ForceInline
925     @LambdaForm.Compiled
guard_LIDD_D(VarHandle handle, Object arg0, int arg1, double arg2, double arg3, VarHandle.AccessDescriptor ad)926     final static double guard_LIDD_D(VarHandle handle, Object arg0, int arg1, double arg2, double arg3, VarHandle.AccessDescriptor ad) throws Throwable {
927         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
928             return (double) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
929         }
930         else {
931             MethodHandle mh = handle.getMethodHandle(ad.mode);
932             return (double) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
933         }
934     }
935 
936     @ForceInline
937     @LambdaForm.Compiled
guard_LJ_I(VarHandle handle, Object arg0, long arg1, VarHandle.AccessDescriptor ad)938     final static int guard_LJ_I(VarHandle handle, Object arg0, long arg1, VarHandle.AccessDescriptor ad) throws Throwable {
939         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
940             return (int) MethodHandle.linkToStatic(handle, arg0, arg1, handle.vform.getMemberName(ad.mode));
941         }
942         else {
943             MethodHandle mh = handle.getMethodHandle(ad.mode);
944             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1);
945         }
946     }
947 
948     @ForceInline
949     @LambdaForm.Compiled
guard_LJI_V(VarHandle handle, Object arg0, long arg1, int arg2, VarHandle.AccessDescriptor ad)950     final static void guard_LJI_V(VarHandle handle, Object arg0, long arg1, int arg2, VarHandle.AccessDescriptor ad) throws Throwable {
951         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
952             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
953         }
954         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
955             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
956         }
957         else {
958             MethodHandle mh = handle.getMethodHandle(ad.mode);
959             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
960         }
961     }
962 
963     @ForceInline
964     @LambdaForm.Compiled
guard_LJI_I(VarHandle handle, Object arg0, long arg1, int arg2, VarHandle.AccessDescriptor ad)965     final static int guard_LJI_I(VarHandle handle, Object arg0, long arg1, int arg2, VarHandle.AccessDescriptor ad) throws Throwable {
966         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
967             return (int) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
968         }
969         else {
970             MethodHandle mh = handle.getMethodHandle(ad.mode);
971             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
972         }
973     }
974 
975     @ForceInline
976     @LambdaForm.Compiled
guard_LJII_Z(VarHandle handle, Object arg0, long arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad)977     final static boolean guard_LJII_Z(VarHandle handle, Object arg0, long arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad) throws Throwable {
978         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
979             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
980         }
981         else {
982             MethodHandle mh = handle.getMethodHandle(ad.mode);
983             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
984         }
985     }
986 
987     @ForceInline
988     @LambdaForm.Compiled
guard_LJII_I(VarHandle handle, Object arg0, long arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad)989     final static int guard_LJII_I(VarHandle handle, Object arg0, long arg1, int arg2, int arg3, VarHandle.AccessDescriptor ad) throws Throwable {
990         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
991             return (int) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
992         }
993         else {
994             MethodHandle mh = handle.getMethodHandle(ad.mode);
995             return (int) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
996         }
997     }
998 
999     @ForceInline
1000     @LambdaForm.Compiled
guard_LJJ_V(VarHandle handle, Object arg0, long arg1, long arg2, VarHandle.AccessDescriptor ad)1001     final static void guard_LJJ_V(VarHandle handle, Object arg0, long arg1, long arg2, VarHandle.AccessDescriptor ad) throws Throwable {
1002         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
1003             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
1004         }
1005         else if (handle.vform.getMethodType_V(ad.type) == ad.symbolicMethodTypeErased) {
1006             MethodHandle.linkToStatic(handle, arg0, arg1, arg2, handle.vform.getMemberName(ad.mode));
1007         }
1008         else {
1009             MethodHandle mh = handle.getMethodHandle(ad.mode);
1010             mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2);
1011         }
1012     }
1013 
1014     @ForceInline
1015     @LambdaForm.Compiled
guard_LJJJ_Z(VarHandle handle, Object arg0, long arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad)1016     final static boolean guard_LJJJ_Z(VarHandle handle, Object arg0, long arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad) throws Throwable {
1017         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
1018             return (boolean) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
1019         }
1020         else {
1021             MethodHandle mh = handle.getMethodHandle(ad.mode);
1022             return (boolean) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
1023         }
1024     }
1025 
1026     @ForceInline
1027     @LambdaForm.Compiled
guard_LJJJ_J(VarHandle handle, Object arg0, long arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad)1028     final static long guard_LJJJ_J(VarHandle handle, Object arg0, long arg1, long arg2, long arg3, VarHandle.AccessDescriptor ad) throws Throwable {
1029         if (handle.vform.methodType_table[ad.type] == ad.symbolicMethodTypeErased) {
1030             return (long) MethodHandle.linkToStatic(handle, arg0, arg1, arg2, arg3, handle.vform.getMemberName(ad.mode));
1031         }
1032         else {
1033             MethodHandle mh = handle.getMethodHandle(ad.mode);
1034             return (long) mh.asType(ad.symbolicMethodTypeInvoker).invokeBasic(handle, arg0, arg1, arg2, arg3);
1035         }
1036     }
1037 
1038 }
1039