JesusFreke / smali

smali/baksmali
6.29k stars 1.07k forks source link

Support invoke-polymorphic (and -range) as builder instruction #767

Open GraxCode opened 4 years ago

GraxCode commented 4 years ago

Should not be that hard to implement, see Signature Polymorphic Methods.

org.jf.util.ExceptionWithContext: Instruction format Format45cc not supported
    at org.jf.dexlib2.builder.MutableMethodImplementation.convertAndSetInstruction(MutableMethodImplementation.java:675)
    at org.jf.dexlib2.builder.MutableMethodImplementation.<init>(MutableMethodImplementation.java:94)

invoke-polymorphic can be generated by converting this code with dx to dex:

public void invoke(MethodHandle handle) throws Throwable {
    handle.invoke(0, 1);
    handle.invokeExact("args", "here");
}
vn-ki commented 1 year ago

Hi @JesusFreke, when is the next release planned? Thanks