1*37f5703cSAndroid Build Coastguard Worker.class public LBootstrapLinker; 2*37f5703cSAndroid Build Coastguard Worker 3*37f5703cSAndroid Build Coastguard Worker.super Ljava/lang/Object; 4*37f5703cSAndroid Build Coastguard Worker 5*37f5703cSAndroid Build Coastguard Worker.method public static normalLink(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Object;)Ljava/lang/invoke/CallSite; 6*37f5703cSAndroid Build Coastguard Worker .registers 15 7*37f5703cSAndroid Build Coastguard Worker 8*37f5703cSAndroid Build Coastguard Worker sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream; 9*37f5703cSAndroid Build Coastguard Worker const-string v3, "BootstrapLinker.normalLink - " 10*37f5703cSAndroid Build Coastguard Worker invoke-virtual {v0, v3}, Ljava/io/PrintStream;->print(Ljava/lang/String;)V 11*37f5703cSAndroid Build Coastguard Worker invoke-virtual {p3}, Ljava/lang/Object;->toString()Ljava/lang/String; 12*37f5703cSAndroid Build Coastguard Worker move-result-object v1 13*37f5703cSAndroid Build Coastguard Worker invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V 14*37f5703cSAndroid Build Coastguard Worker 15*37f5703cSAndroid Build Coastguard Worker const v0, 0 16*37f5703cSAndroid Build Coastguard Worker const v1, 1 17*37f5703cSAndroid Build Coastguard Worker invoke-virtual {p2, v0, v1}, Ljava/lang/invoke/MethodType;->dropParameterTypes(II)Ljava/lang/invoke/MethodType; 18*37f5703cSAndroid Build Coastguard Worker move-result-object p2 19*37f5703cSAndroid Build Coastguard Worker 20*37f5703cSAndroid Build Coastguard Worker const-class v1, LCustom; 21*37f5703cSAndroid Build Coastguard Worker 22*37f5703cSAndroid Build Coastguard Worker invoke-virtual {p0, v1, p1, p2}, Ljava/lang/invoke/MethodHandles$Lookup;->findVirtual(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; 23*37f5703cSAndroid Build Coastguard Worker move-result-object v2 24*37f5703cSAndroid Build Coastguard Worker 25*37f5703cSAndroid Build Coastguard Worker new-instance v0, Ljava/lang/invoke/ConstantCallSite; 26*37f5703cSAndroid Build Coastguard Worker invoke-direct {v0, v2}, Ljava/lang/invoke/ConstantCallSite;-><init>(Ljava/lang/invoke/MethodHandle;)V 27*37f5703cSAndroid Build Coastguard Worker 28*37f5703cSAndroid Build Coastguard Worker return-object v0 29*37f5703cSAndroid Build Coastguard Worker.end method 30*37f5703cSAndroid Build Coastguard Worker 31*37f5703cSAndroid Build Coastguard Worker 32*37f5703cSAndroid Build Coastguard Worker.method public static backwardsLink(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; 33*37f5703cSAndroid Build Coastguard Worker .registers 15 34*37f5703cSAndroid Build Coastguard Worker 35*37f5703cSAndroid Build Coastguard Worker sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream; 36*37f5703cSAndroid Build Coastguard Worker const-string v3, "BootstrapLinker.backwardsLink - " 37*37f5703cSAndroid Build Coastguard Worker invoke-virtual {v0, v3}, Ljava/io/PrintStream;->print(Ljava/lang/String;)V 38*37f5703cSAndroid Build Coastguard Worker invoke-virtual {v0, p3}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V 39*37f5703cSAndroid Build Coastguard Worker 40*37f5703cSAndroid Build Coastguard Worker const v0, 0 41*37f5703cSAndroid Build Coastguard Worker const v1, 1 42*37f5703cSAndroid Build Coastguard Worker invoke-virtual {p2, v0, v1}, Ljava/lang/invoke/MethodType;->dropParameterTypes(II)Ljava/lang/invoke/MethodType; 43*37f5703cSAndroid Build Coastguard Worker move-result-object p2 44*37f5703cSAndroid Build Coastguard Worker 45*37f5703cSAndroid Build Coastguard Worker new-instance v0, Ljava/lang/StringBuffer; 46*37f5703cSAndroid Build Coastguard Worker invoke-direct {v0, p1}, Ljava/lang/StringBuffer;-><init>(Ljava/lang/String;)V 47*37f5703cSAndroid Build Coastguard Worker invoke-virtual {v0}, Ljava/lang/StringBuffer;->reverse()Ljava/lang/StringBuffer; 48*37f5703cSAndroid Build Coastguard Worker invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String; 49*37f5703cSAndroid Build Coastguard Worker move-result-object p1 50*37f5703cSAndroid Build Coastguard Worker 51*37f5703cSAndroid Build Coastguard Worker const-class v1, LCustom; 52*37f5703cSAndroid Build Coastguard Worker 53*37f5703cSAndroid Build Coastguard Worker invoke-virtual {p0, v1, p1, p2}, Ljava/lang/invoke/MethodHandles$Lookup;->findVirtual(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; 54*37f5703cSAndroid Build Coastguard Worker move-result-object v2 55*37f5703cSAndroid Build Coastguard Worker 56*37f5703cSAndroid Build Coastguard Worker new-instance v0, Ljava/lang/invoke/ConstantCallSite; 57*37f5703cSAndroid Build Coastguard Worker invoke-direct {v0, v2}, Ljava/lang/invoke/ConstantCallSite;-><init>(Ljava/lang/invoke/MethodHandle;)V 58*37f5703cSAndroid Build Coastguard Worker 59*37f5703cSAndroid Build Coastguard Worker return-object v0 60*37f5703cSAndroid Build Coastguard Worker.end method 61