public <T> void newInstance(Local<T> target, MethodId<T, Void> constructor, Local<?>... args) {
    if (target == null) {
      throw new IllegalArgumentException();
    }
    addInstruction(
        new ThrowingCstInsn(
            Rops.NEW_INSTANCE,
            sourcePosition,
            RegisterSpecList.EMPTY,
            catches,
            constructor.declaringType.constant));
    moveResult(target, true);
    invokeDirect(constructor, null, target, args);
  }
Calls the constructor {@code constructor} using {@code args} and assigns the new instance to
{@code target}.
android/android_framework/dex-maker/src/main/java/com/android/dx/Code.java