blob: 5a8867979e73cc84b81dd796fa829d6b7450cabc [file] [log] [blame]
/*
* Copyright (C) 2020 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.lang.reflect.Method;
// An interface with enough methods to trigger a conflict.
interface Itf {
public void method0a();
public void method0b();
public void method0c();
public void method0d();
public void method0e();
public void method0f();
public void method0g();
public void method0h();
public void method0i();
public void method0j();
public void method0k();
public void method0l();
public void method0m();
public void method0n();
public void method0o();
public void method0p();
public void method0q();
public void method0r();
public void method0s();
public void method0t();
public void method0u();
public void method0v();
public void method0w();
public void method0x();
public void method0y();
public void method0z();
public void method1a();
public void method1b();
public void method1c();
public void method1d();
public void method1e();
public void method1f();
public void method1g();
public void method1h();
public void method1i();
public void method1j();
public void method1k();
public void method1l();
public void method1m();
public void method1n();
public void method1o();
public void method1p();
public void method1q();
public void method1r();
public void method1s();
public void method1t();
public void method1u();
public void method1v();
public void method1w();
public void method1x();
public void method1y();
public void method1z();
public void method2a();
public void method2b();
public void method2c();
public void method2d();
public void method2e();
public void method2f();
public void method2g();
public void method2h();
public void method2i();
public void method2j();
public void method2k();
public void method2l();
public void method2m();
public void method2n();
public void method2o();
public void method2p();
public void method2q();
public void method2r();
public void method2s();
public void method2t();
public void method2u();
public void method2v();
public void method2w();
public void method2x();
public void method2y();
public void method2z();
}
public class Main implements Itf {
public static Itf main;
public static void main(String[] args) throws Exception {
System.loadLibrary(args[0]);
ensureJitCompiled(Main.class, "$noinline$callInterfaceMethods");
$noinline$callInterfaceMethods(new Main());
}
public static native void ensureJitCompiled(Class<?> cls, String name);
public static void $noinline$callInterfaceMethods(Itf itf) {
itf.method0a();
itf.method0b();
itf.method0c();
itf.method0d();
itf.method0e();
itf.method0f();
itf.method0g();
itf.method0h();
itf.method0i();
itf.method0j();
itf.method0k();
itf.method0l();
itf.method0m();
itf.method0n();
itf.method0o();
itf.method0p();
itf.method0q();
itf.method0r();
itf.method0s();
itf.method0t();
itf.method0u();
itf.method0v();
itf.method0w();
itf.method0x();
itf.method0y();
itf.method0z();
itf.method1a();
itf.method1b();
itf.method1c();
itf.method1d();
itf.method1e();
itf.method1f();
itf.method1g();
itf.method1h();
itf.method1i();
itf.method1j();
itf.method1k();
itf.method1l();
itf.method1m();
itf.method1n();
itf.method1o();
itf.method1p();
itf.method1q();
itf.method1r();
itf.method1s();
itf.method1t();
itf.method1u();
itf.method1v();
itf.method1w();
itf.method1x();
itf.method1y();
itf.method1z();
}
public void method0a() {}
public void method0b() {}
public void method0c() {}
public void method0d() {}
public void method0e() {}
public void method0f() {}
public void method0g() {}
public void method0h() {}
public void method0i() {}
public void method0j() {}
public void method0k() {}
public void method0l() {}
public void method0m() {}
public void method0n() {}
public void method0o() {}
public void method0p() {}
public void method0q() {}
public void method0r() {}
public void method0s() {}
public void method0t() {}
public void method0u() {}
public void method0v() {}
public void method0w() {}
public void method0x() {}
public void method0y() {}
public void method0z() {}
public void method1a() {}
public void method1b() {}
public void method1c() {}
public void method1d() {}
public void method1e() {}
public void method1f() {}
public void method1g() {}
public void method1h() {}
public void method1i() {}
public void method1j() {}
public void method1k() {}
public void method1l() {}
public void method1m() {}
public void method1n() {}
public void method1o() {}
public void method1p() {}
public void method1q() {}
public void method1r() {}
public void method1s() {}
public void method1t() {}
public void method1u() {}
public void method1v() {}
public void method1w() {}
public void method1x() {}
public void method1y() {}
public void method1z() {}
public void method2a() {}
public void method2b() {}
public void method2c() {}
public void method2d() {}
public void method2e() {}
public void method2f() {}
public void method2g() {}
public void method2h() {}
public void method2i() {}
public void method2j() {}
public void method2k() {}
public void method2l() {}
public void method2m() {}
public void method2n() {}
public void method2o() {}
public void method2p() {}
public void method2q() {}
public void method2r() {}
public void method2s() {}
public void method2t() {}
public void method2u() {}
public void method2v() {}
public void method2w() {}
public void method2x() {}
public void method2y() {}
public void method2z() {}
}