From e9019e9fb3c2c282ae4d7a8ab43e75613f7b46d5 Mon Sep 17 00:00:00 2001 From: Ivan Kylchik Date: Wed, 6 Sep 2023 10:26:33 +0200 Subject: [PATCH] [JVM] Drop `StoreLoadInterpreter` class --- .../optimization/temporaryVals/FastStoreLoadAnalyzer.kt | 6 ++---- .../codegen/optimization/temporaryVals/TemporaryVals.kt | 4 +++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/FastStoreLoadAnalyzer.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/FastStoreLoadAnalyzer.kt index c00400ca998..b81f3ca449b 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/FastStoreLoadAnalyzer.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/FastStoreLoadAnalyzer.kt @@ -42,8 +42,6 @@ import org.jetbrains.org.objectweb.asm.tree.analysis.Frame import org.jetbrains.org.objectweb.asm.tree.analysis.Interpreter import org.jetbrains.org.objectweb.asm.tree.analysis.Value -abstract class StoreLoadInterpreter : Interpreter(API_VERSION) - class StoreLoadFrame(val maxLocals: Int) : Frame(maxLocals, 0) { override fun execute(insn: AbstractInsnNode, interpreter: Interpreter) { when (insn.opcode) { @@ -66,8 +64,8 @@ class StoreLoadFrame(val maxLocals: Int) : Frame(maxLocals, 0) { class FastStoreLoadAnalyzer( owner: String, method: MethodNode, - interpreter: StoreLoadInterpreter -) : FastAnalyzer, StoreLoadFrame>(owner, method, interpreter) { + interpreter: Interpreter +) : FastAnalyzer, StoreLoadFrame>(owner, method, interpreter) { private val isMergeNode = FastMethodAnalyzer.findMergeNodes(method) override fun analyzeInstruction( diff --git a/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/TemporaryVals.kt b/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/TemporaryVals.kt index 7007435c95a..33671c129fa 100644 --- a/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/TemporaryVals.kt +++ b/compiler/backend/src/org/jetbrains/kotlin/codegen/optimization/temporaryVals/TemporaryVals.kt @@ -10,10 +10,12 @@ import org.jetbrains.kotlin.codegen.optimization.common.isMeaningful import org.jetbrains.kotlin.codegen.optimization.common.isStoreOperation import org.jetbrains.kotlin.utils.SmartSet import org.jetbrains.org.objectweb.asm.Opcodes +import org.jetbrains.org.objectweb.asm.Opcodes.API_VERSION import org.jetbrains.org.objectweb.asm.Type import org.jetbrains.org.objectweb.asm.tree.AbstractInsnNode import org.jetbrains.org.objectweb.asm.tree.MethodNode import org.jetbrains.org.objectweb.asm.tree.VarInsnNode +import org.jetbrains.org.objectweb.asm.tree.analysis.Interpreter import org.jetbrains.org.objectweb.asm.tree.analysis.Value @@ -155,7 +157,7 @@ class TemporaryValsAnalyzer { private class StoreTrackingInterpreter( private val storeInsnToStoreData: Map - ) : StoreLoadInterpreter() { + ) : Interpreter(API_VERSION) { override fun newEmptyValue(local: Int): StoredValue = StoredValue.Unknown