fix: don't apply const split if not needed
This commit is contained in:
@@ -586,6 +586,10 @@ public final class TypeInferenceVisitor extends AbstractVisitor {
|
||||
}
|
||||
|
||||
private boolean checkAndSplitConstInsn(MethodNode mth, SSAVar var) {
|
||||
ArgType type = var.getTypeInfo().getType();
|
||||
if (type.isTypeKnown() || var.isTypeImmutable()) {
|
||||
return false;
|
||||
}
|
||||
if (var.getUsedInPhi().size() < 2) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -17,6 +17,8 @@ public class TestPrimitiveConversion2 extends SmaliTest {
|
||||
.doesNotContain("z2 == 0")
|
||||
.doesNotContain("z2 | 2")
|
||||
.containsOne("(z2 ? 1 : 0) | 2")
|
||||
.containsOne("if (z2 && formatCurrency != null) {");
|
||||
.containsOne("if (z2 && formatCurrency != null) {")
|
||||
.containsOne("i = 1;")
|
||||
.containsOne("spannable = null;");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user