public static void installBytecode(MethodVisitor method, String classname) {
SkinnyMethodAdapter clinitMethod = new SkinnyMethodAdapter(method);
clinitMethod.ldc(c(classname));
clinitMethod.invokestatic(p(Class.class), "forName", sig(Class.class, params(String.class)));
clinitMethod.ldc(Type.getType(InvokeDynamicSupport.class));
clinitMethod.ldc("bootstrap");
clinitMethod.getstatic(p(Linkage.class), "BOOTSTRAP_METHOD_TYPE", ci(MethodType.class));
clinitMethod.invokestatic(p(MethodHandles.class), "findStatic", sig(MethodHandle.class, Class.class, String.class, MethodType.class));
clinitMethod.invokestatic(p(Linkage.class), "registerBootstrapMethod", sig(void.class, Class.class, MethodHandle.class));
}