xref: /aosp_15_r20/art/test/728-imt-conflict-zygote/src/Main.java (revision 795d594fd825385562da6b089ea9b2033f3abf5a)
1*795d594fSAndroid Build Coastguard Worker /*
2*795d594fSAndroid Build Coastguard Worker  * Copyright (C) 2020 The Android Open Source Project
3*795d594fSAndroid Build Coastguard Worker  *
4*795d594fSAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
5*795d594fSAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
6*795d594fSAndroid Build Coastguard Worker  * You may obtain a copy of the License at
7*795d594fSAndroid Build Coastguard Worker  *
8*795d594fSAndroid Build Coastguard Worker  *      http://www.apache.org/licenses/LICENSE-2.0
9*795d594fSAndroid Build Coastguard Worker  *
10*795d594fSAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
11*795d594fSAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
12*795d594fSAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*795d594fSAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
14*795d594fSAndroid Build Coastguard Worker  * limitations under the License.
15*795d594fSAndroid Build Coastguard Worker  */
16*795d594fSAndroid Build Coastguard Worker 
17*795d594fSAndroid Build Coastguard Worker import java.lang.reflect.Method;
18*795d594fSAndroid Build Coastguard Worker 
19*795d594fSAndroid Build Coastguard Worker // An interface with enough methods to trigger a conflict.
20*795d594fSAndroid Build Coastguard Worker interface Itf {
method0a()21*795d594fSAndroid Build Coastguard Worker   public void method0a();
method0b()22*795d594fSAndroid Build Coastguard Worker   public void method0b();
method0c()23*795d594fSAndroid Build Coastguard Worker   public void method0c();
method0d()24*795d594fSAndroid Build Coastguard Worker   public void method0d();
method0e()25*795d594fSAndroid Build Coastguard Worker   public void method0e();
method0f()26*795d594fSAndroid Build Coastguard Worker   public void method0f();
method0g()27*795d594fSAndroid Build Coastguard Worker   public void method0g();
method0h()28*795d594fSAndroid Build Coastguard Worker   public void method0h();
method0i()29*795d594fSAndroid Build Coastguard Worker   public void method0i();
method0j()30*795d594fSAndroid Build Coastguard Worker   public void method0j();
method0k()31*795d594fSAndroid Build Coastguard Worker   public void method0k();
method0l()32*795d594fSAndroid Build Coastguard Worker   public void method0l();
method0m()33*795d594fSAndroid Build Coastguard Worker   public void method0m();
method0n()34*795d594fSAndroid Build Coastguard Worker   public void method0n();
method0o()35*795d594fSAndroid Build Coastguard Worker   public void method0o();
method0p()36*795d594fSAndroid Build Coastguard Worker   public void method0p();
method0q()37*795d594fSAndroid Build Coastguard Worker   public void method0q();
method0r()38*795d594fSAndroid Build Coastguard Worker   public void method0r();
method0s()39*795d594fSAndroid Build Coastguard Worker   public void method0s();
method0t()40*795d594fSAndroid Build Coastguard Worker   public void method0t();
method0u()41*795d594fSAndroid Build Coastguard Worker   public void method0u();
method0v()42*795d594fSAndroid Build Coastguard Worker   public void method0v();
method0w()43*795d594fSAndroid Build Coastguard Worker   public void method0w();
method0x()44*795d594fSAndroid Build Coastguard Worker   public void method0x();
method0y()45*795d594fSAndroid Build Coastguard Worker   public void method0y();
method0z()46*795d594fSAndroid Build Coastguard Worker   public void method0z();
method1a()47*795d594fSAndroid Build Coastguard Worker   public void method1a();
method1b()48*795d594fSAndroid Build Coastguard Worker   public void method1b();
method1c()49*795d594fSAndroid Build Coastguard Worker   public void method1c();
method1d()50*795d594fSAndroid Build Coastguard Worker   public void method1d();
method1e()51*795d594fSAndroid Build Coastguard Worker   public void method1e();
method1f()52*795d594fSAndroid Build Coastguard Worker   public void method1f();
method1g()53*795d594fSAndroid Build Coastguard Worker   public void method1g();
method1h()54*795d594fSAndroid Build Coastguard Worker   public void method1h();
method1i()55*795d594fSAndroid Build Coastguard Worker   public void method1i();
method1j()56*795d594fSAndroid Build Coastguard Worker   public void method1j();
method1k()57*795d594fSAndroid Build Coastguard Worker   public void method1k();
method1l()58*795d594fSAndroid Build Coastguard Worker   public void method1l();
method1m()59*795d594fSAndroid Build Coastguard Worker   public void method1m();
method1n()60*795d594fSAndroid Build Coastguard Worker   public void method1n();
method1o()61*795d594fSAndroid Build Coastguard Worker   public void method1o();
method1p()62*795d594fSAndroid Build Coastguard Worker   public void method1p();
method1q()63*795d594fSAndroid Build Coastguard Worker   public void method1q();
method1r()64*795d594fSAndroid Build Coastguard Worker   public void method1r();
method1s()65*795d594fSAndroid Build Coastguard Worker   public void method1s();
method1t()66*795d594fSAndroid Build Coastguard Worker   public void method1t();
method1u()67*795d594fSAndroid Build Coastguard Worker   public void method1u();
method1v()68*795d594fSAndroid Build Coastguard Worker   public void method1v();
method1w()69*795d594fSAndroid Build Coastguard Worker   public void method1w();
method1x()70*795d594fSAndroid Build Coastguard Worker   public void method1x();
method1y()71*795d594fSAndroid Build Coastguard Worker   public void method1y();
method1z()72*795d594fSAndroid Build Coastguard Worker   public void method1z();
method2a()73*795d594fSAndroid Build Coastguard Worker   public void method2a();
method2b()74*795d594fSAndroid Build Coastguard Worker   public void method2b();
method2c()75*795d594fSAndroid Build Coastguard Worker   public void method2c();
method2d()76*795d594fSAndroid Build Coastguard Worker   public void method2d();
method2e()77*795d594fSAndroid Build Coastguard Worker   public void method2e();
method2f()78*795d594fSAndroid Build Coastguard Worker   public void method2f();
method2g()79*795d594fSAndroid Build Coastguard Worker   public void method2g();
method2h()80*795d594fSAndroid Build Coastguard Worker   public void method2h();
method2i()81*795d594fSAndroid Build Coastguard Worker   public void method2i();
method2j()82*795d594fSAndroid Build Coastguard Worker   public void method2j();
method2k()83*795d594fSAndroid Build Coastguard Worker   public void method2k();
method2l()84*795d594fSAndroid Build Coastguard Worker   public void method2l();
method2m()85*795d594fSAndroid Build Coastguard Worker   public void method2m();
method2n()86*795d594fSAndroid Build Coastguard Worker   public void method2n();
method2o()87*795d594fSAndroid Build Coastguard Worker   public void method2o();
method2p()88*795d594fSAndroid Build Coastguard Worker   public void method2p();
method2q()89*795d594fSAndroid Build Coastguard Worker   public void method2q();
method2r()90*795d594fSAndroid Build Coastguard Worker   public void method2r();
method2s()91*795d594fSAndroid Build Coastguard Worker   public void method2s();
method2t()92*795d594fSAndroid Build Coastguard Worker   public void method2t();
method2u()93*795d594fSAndroid Build Coastguard Worker   public void method2u();
method2v()94*795d594fSAndroid Build Coastguard Worker   public void method2v();
method2w()95*795d594fSAndroid Build Coastguard Worker   public void method2w();
method2x()96*795d594fSAndroid Build Coastguard Worker   public void method2x();
method2y()97*795d594fSAndroid Build Coastguard Worker   public void method2y();
method2z()98*795d594fSAndroid Build Coastguard Worker   public void method2z();
99*795d594fSAndroid Build Coastguard Worker }
100*795d594fSAndroid Build Coastguard Worker 
101*795d594fSAndroid Build Coastguard Worker public class Main implements Itf {
102*795d594fSAndroid Build Coastguard Worker   public static Itf main;
main(String[] args)103*795d594fSAndroid Build Coastguard Worker   public static void main(String[] args) throws Exception {
104*795d594fSAndroid Build Coastguard Worker     System.loadLibrary(args[0]);
105*795d594fSAndroid Build Coastguard Worker     ensureJitCompiled(Main.class, "$noinline$callInterfaceMethods");
106*795d594fSAndroid Build Coastguard Worker     $noinline$callInterfaceMethods(new Main());
107*795d594fSAndroid Build Coastguard Worker   }
108*795d594fSAndroid Build Coastguard Worker 
ensureJitCompiled(Class<?> cls, String name)109*795d594fSAndroid Build Coastguard Worker   public static native void ensureJitCompiled(Class<?> cls, String name);
110*795d594fSAndroid Build Coastguard Worker 
$noinline$callInterfaceMethods(Itf itf)111*795d594fSAndroid Build Coastguard Worker   public static void $noinline$callInterfaceMethods(Itf itf) {
112*795d594fSAndroid Build Coastguard Worker     itf.method0a();
113*795d594fSAndroid Build Coastguard Worker     itf.method0b();
114*795d594fSAndroid Build Coastguard Worker     itf.method0c();
115*795d594fSAndroid Build Coastguard Worker     itf.method0d();
116*795d594fSAndroid Build Coastguard Worker     itf.method0e();
117*795d594fSAndroid Build Coastguard Worker     itf.method0f();
118*795d594fSAndroid Build Coastguard Worker     itf.method0g();
119*795d594fSAndroid Build Coastguard Worker     itf.method0h();
120*795d594fSAndroid Build Coastguard Worker     itf.method0i();
121*795d594fSAndroid Build Coastguard Worker     itf.method0j();
122*795d594fSAndroid Build Coastguard Worker     itf.method0k();
123*795d594fSAndroid Build Coastguard Worker     itf.method0l();
124*795d594fSAndroid Build Coastguard Worker     itf.method0m();
125*795d594fSAndroid Build Coastguard Worker     itf.method0n();
126*795d594fSAndroid Build Coastguard Worker     itf.method0o();
127*795d594fSAndroid Build Coastguard Worker     itf.method0p();
128*795d594fSAndroid Build Coastguard Worker     itf.method0q();
129*795d594fSAndroid Build Coastguard Worker     itf.method0r();
130*795d594fSAndroid Build Coastguard Worker     itf.method0s();
131*795d594fSAndroid Build Coastguard Worker     itf.method0t();
132*795d594fSAndroid Build Coastguard Worker     itf.method0u();
133*795d594fSAndroid Build Coastguard Worker     itf.method0v();
134*795d594fSAndroid Build Coastguard Worker     itf.method0w();
135*795d594fSAndroid Build Coastguard Worker     itf.method0x();
136*795d594fSAndroid Build Coastguard Worker     itf.method0y();
137*795d594fSAndroid Build Coastguard Worker     itf.method0z();
138*795d594fSAndroid Build Coastguard Worker 
139*795d594fSAndroid Build Coastguard Worker     itf.method1a();
140*795d594fSAndroid Build Coastguard Worker     itf.method1b();
141*795d594fSAndroid Build Coastguard Worker     itf.method1c();
142*795d594fSAndroid Build Coastguard Worker     itf.method1d();
143*795d594fSAndroid Build Coastguard Worker     itf.method1e();
144*795d594fSAndroid Build Coastguard Worker     itf.method1f();
145*795d594fSAndroid Build Coastguard Worker     itf.method1g();
146*795d594fSAndroid Build Coastguard Worker     itf.method1h();
147*795d594fSAndroid Build Coastguard Worker     itf.method1i();
148*795d594fSAndroid Build Coastguard Worker     itf.method1j();
149*795d594fSAndroid Build Coastguard Worker     itf.method1k();
150*795d594fSAndroid Build Coastguard Worker     itf.method1l();
151*795d594fSAndroid Build Coastguard Worker     itf.method1m();
152*795d594fSAndroid Build Coastguard Worker     itf.method1n();
153*795d594fSAndroid Build Coastguard Worker     itf.method1o();
154*795d594fSAndroid Build Coastguard Worker     itf.method1p();
155*795d594fSAndroid Build Coastguard Worker     itf.method1q();
156*795d594fSAndroid Build Coastguard Worker     itf.method1r();
157*795d594fSAndroid Build Coastguard Worker     itf.method1s();
158*795d594fSAndroid Build Coastguard Worker     itf.method1t();
159*795d594fSAndroid Build Coastguard Worker     itf.method1u();
160*795d594fSAndroid Build Coastguard Worker     itf.method1v();
161*795d594fSAndroid Build Coastguard Worker     itf.method1w();
162*795d594fSAndroid Build Coastguard Worker     itf.method1x();
163*795d594fSAndroid Build Coastguard Worker     itf.method1y();
164*795d594fSAndroid Build Coastguard Worker     itf.method1z();
165*795d594fSAndroid Build Coastguard Worker   }
166*795d594fSAndroid Build Coastguard Worker 
method0a()167*795d594fSAndroid Build Coastguard Worker   public void method0a() {}
method0b()168*795d594fSAndroid Build Coastguard Worker   public void method0b() {}
method0c()169*795d594fSAndroid Build Coastguard Worker   public void method0c() {}
method0d()170*795d594fSAndroid Build Coastguard Worker   public void method0d() {}
method0e()171*795d594fSAndroid Build Coastguard Worker   public void method0e() {}
method0f()172*795d594fSAndroid Build Coastguard Worker   public void method0f() {}
method0g()173*795d594fSAndroid Build Coastguard Worker   public void method0g() {}
method0h()174*795d594fSAndroid Build Coastguard Worker   public void method0h() {}
method0i()175*795d594fSAndroid Build Coastguard Worker   public void method0i() {}
method0j()176*795d594fSAndroid Build Coastguard Worker   public void method0j() {}
method0k()177*795d594fSAndroid Build Coastguard Worker   public void method0k() {}
method0l()178*795d594fSAndroid Build Coastguard Worker   public void method0l() {}
method0m()179*795d594fSAndroid Build Coastguard Worker   public void method0m() {}
method0n()180*795d594fSAndroid Build Coastguard Worker   public void method0n() {}
method0o()181*795d594fSAndroid Build Coastguard Worker   public void method0o() {}
method0p()182*795d594fSAndroid Build Coastguard Worker   public void method0p() {}
method0q()183*795d594fSAndroid Build Coastguard Worker   public void method0q() {}
method0r()184*795d594fSAndroid Build Coastguard Worker   public void method0r() {}
method0s()185*795d594fSAndroid Build Coastguard Worker   public void method0s() {}
method0t()186*795d594fSAndroid Build Coastguard Worker   public void method0t() {}
method0u()187*795d594fSAndroid Build Coastguard Worker   public void method0u() {}
method0v()188*795d594fSAndroid Build Coastguard Worker   public void method0v() {}
method0w()189*795d594fSAndroid Build Coastguard Worker   public void method0w() {}
method0x()190*795d594fSAndroid Build Coastguard Worker   public void method0x() {}
method0y()191*795d594fSAndroid Build Coastguard Worker   public void method0y() {}
method0z()192*795d594fSAndroid Build Coastguard Worker   public void method0z() {}
method1a()193*795d594fSAndroid Build Coastguard Worker   public void method1a() {}
method1b()194*795d594fSAndroid Build Coastguard Worker   public void method1b() {}
method1c()195*795d594fSAndroid Build Coastguard Worker   public void method1c() {}
method1d()196*795d594fSAndroid Build Coastguard Worker   public void method1d() {}
method1e()197*795d594fSAndroid Build Coastguard Worker   public void method1e() {}
method1f()198*795d594fSAndroid Build Coastguard Worker   public void method1f() {}
method1g()199*795d594fSAndroid Build Coastguard Worker   public void method1g() {}
method1h()200*795d594fSAndroid Build Coastguard Worker   public void method1h() {}
method1i()201*795d594fSAndroid Build Coastguard Worker   public void method1i() {}
method1j()202*795d594fSAndroid Build Coastguard Worker   public void method1j() {}
method1k()203*795d594fSAndroid Build Coastguard Worker   public void method1k() {}
method1l()204*795d594fSAndroid Build Coastguard Worker   public void method1l() {}
method1m()205*795d594fSAndroid Build Coastguard Worker   public void method1m() {}
method1n()206*795d594fSAndroid Build Coastguard Worker   public void method1n() {}
method1o()207*795d594fSAndroid Build Coastguard Worker   public void method1o() {}
method1p()208*795d594fSAndroid Build Coastguard Worker   public void method1p() {}
method1q()209*795d594fSAndroid Build Coastguard Worker   public void method1q() {}
method1r()210*795d594fSAndroid Build Coastguard Worker   public void method1r() {}
method1s()211*795d594fSAndroid Build Coastguard Worker   public void method1s() {}
method1t()212*795d594fSAndroid Build Coastguard Worker   public void method1t() {}
method1u()213*795d594fSAndroid Build Coastguard Worker   public void method1u() {}
method1v()214*795d594fSAndroid Build Coastguard Worker   public void method1v() {}
method1w()215*795d594fSAndroid Build Coastguard Worker   public void method1w() {}
method1x()216*795d594fSAndroid Build Coastguard Worker   public void method1x() {}
method1y()217*795d594fSAndroid Build Coastguard Worker   public void method1y() {}
method1z()218*795d594fSAndroid Build Coastguard Worker   public void method1z() {}
method2a()219*795d594fSAndroid Build Coastguard Worker   public void method2a() {}
method2b()220*795d594fSAndroid Build Coastguard Worker   public void method2b() {}
method2c()221*795d594fSAndroid Build Coastguard Worker   public void method2c() {}
method2d()222*795d594fSAndroid Build Coastguard Worker   public void method2d() {}
method2e()223*795d594fSAndroid Build Coastguard Worker   public void method2e() {}
method2f()224*795d594fSAndroid Build Coastguard Worker   public void method2f() {}
method2g()225*795d594fSAndroid Build Coastguard Worker   public void method2g() {}
method2h()226*795d594fSAndroid Build Coastguard Worker   public void method2h() {}
method2i()227*795d594fSAndroid Build Coastguard Worker   public void method2i() {}
method2j()228*795d594fSAndroid Build Coastguard Worker   public void method2j() {}
method2k()229*795d594fSAndroid Build Coastguard Worker   public void method2k() {}
method2l()230*795d594fSAndroid Build Coastguard Worker   public void method2l() {}
method2m()231*795d594fSAndroid Build Coastguard Worker   public void method2m() {}
method2n()232*795d594fSAndroid Build Coastguard Worker   public void method2n() {}
method2o()233*795d594fSAndroid Build Coastguard Worker   public void method2o() {}
method2p()234*795d594fSAndroid Build Coastguard Worker   public void method2p() {}
method2q()235*795d594fSAndroid Build Coastguard Worker   public void method2q() {}
method2r()236*795d594fSAndroid Build Coastguard Worker   public void method2r() {}
method2s()237*795d594fSAndroid Build Coastguard Worker   public void method2s() {}
method2t()238*795d594fSAndroid Build Coastguard Worker   public void method2t() {}
method2u()239*795d594fSAndroid Build Coastguard Worker   public void method2u() {}
method2v()240*795d594fSAndroid Build Coastguard Worker   public void method2v() {}
method2w()241*795d594fSAndroid Build Coastguard Worker   public void method2w() {}
method2x()242*795d594fSAndroid Build Coastguard Worker   public void method2x() {}
method2y()243*795d594fSAndroid Build Coastguard Worker   public void method2y() {}
method2z()244*795d594fSAndroid Build Coastguard Worker   public void method2z() {}
245*795d594fSAndroid Build Coastguard Worker }
246