Resolve smali using frozen raw method names and full DEX descriptors. Select one complete block before truncation for missing Java, static initializers and decompiler marker fallbacks. Reject ambiguous or incomplete blocks and preserve upstream disassembly failure notes. Bind method replies to the selected descriptor with bridge protocol 3. Remove consumer placeholder/error-prefix interpretations and the superseded blanket overload fallback rejection. Producer failures now use the shared failed-tool path before truncation. Migrate protocol fixtures and consumers. Adapt the direct selector guard from PR #3450; recover original bytecode instead of inferring a holder from generated comments. Validation: 122 focused tests in 9 files; real pinned-JAR baseline regression fails and candidate passes, including overloads, aliases after generation, branches/handlers, 16-byte output and negative selection controls. Nine real CLI and nine MCP fixture calls pass with parity/identity/digest/no-mutation checks. Static/docs checks and two source reviews pass. Six completed real MCP cost workflows recorded; same calls with improved source, no speedup claim. Tiny authored APKs, macOS/JDK 21 only; reported editor APK and native Linux/Windows unverified. Heavy profiling and stress remain stopped. Fixes #3443 Co-authored-by: Taksh <takshkothari09@gmail.com>
46 lines
1.1 KiB
Smali
46 lines
1.1 KiB
Smali
.class public Lfixture/MergedMethod;
|
|
.super Ljava/lang/Object;
|
|
|
|
.field public static VALUE:I
|
|
|
|
.method public constructor <init>()V
|
|
.registers 1
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
return-void
|
|
.end method
|
|
|
|
.method private highlightText()V
|
|
.registers 2
|
|
:try_start
|
|
sget v0, Lfixture/MergedMethod;->VALUE:I
|
|
if-nez v0, :assigned
|
|
const/16 v0, 0x77
|
|
sput v0, Lfixture/MergedMethod;->VALUE:I
|
|
:assigned
|
|
:try_end
|
|
return-void
|
|
.catch Ljava/lang/RuntimeException; {:try_start .. :try_end} :handler
|
|
:handler
|
|
move-exception v0
|
|
throw v0
|
|
.end method
|
|
|
|
.method private highlightText(I)V
|
|
.registers 2
|
|
const/16 p1, 0x2a
|
|
sput p1, Lfixture/MergedMethod;->VALUE:I
|
|
return-void
|
|
.end method
|
|
|
|
.method public synthetic lambda$highlight$0()V
|
|
.registers 1
|
|
invoke-direct {p0}, Lfixture/MergedMethod;->highlightText()V
|
|
return-void
|
|
.end method
|
|
|
|
.method public decoy()Ljava/lang/String;
|
|
.registers 2
|
|
const-string v0, "renamed from: highlightText, reason: merged with bridge method [inline-methods]"
|
|
return-object v0
|
|
.end method
|