Code clean after convertion

This commit is contained in:
Mikhael Bogdanov
2017-06-12 10:21:11 +02:00
parent 51d494a271
commit 172a9c7e1e
6 changed files with 17 additions and 18 deletions
@@ -346,15 +346,16 @@ fun getNodeText(node: MethodNode?): String {
return node.name + " " + node.desc + ":\n" + sw.buffer.toString()
}
fun getInsnText(node: AbstractInsnNode?): String {
if (node == null) return "<null>"
val textifier = Textifier()
node.accept(TraceMethodVisitor(textifier))
val sw = StringWriter()
textifier.print(PrintWriter(sw))
sw.flush()
return sw.toString().trim { it <= ' ' }
}
val AbstractInsnNode?.insnText: String
get() {
if (this == null) return "<null>"
val textifier = Textifier()
accept(TraceMethodVisitor(textifier))
val sw = StringWriter()
textifier.print(PrintWriter(sw))
sw.flush()
return sw.toString().trim { it <= ' ' }
}
fun getInsnOpcodeText(node: AbstractInsnNode?): String {
return if (node == null) "null" else Printer.OPCODES[node.opcode]
@@ -21,7 +21,6 @@ import org.jetbrains.kotlin.codegen.OwnerKind
import org.jetbrains.kotlin.codegen.inline.ReifiedTypeInliner.Companion.isNeedClassReificationMarker
import org.jetbrains.kotlin.codegen.optimization.common.InsnSequence
import org.jetbrains.kotlin.codegen.optimization.common.asSequence
import org.jetbrains.kotlin.codegen.optimization.common.insnText
import org.jetbrains.kotlin.descriptors.FunctionDescriptor
import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor
import org.jetbrains.kotlin.resolve.DescriptorUtils
@@ -16,9 +16,9 @@
package org.jetbrains.kotlin.codegen.optimization
import org.jetbrains.kotlin.codegen.inline.insnText
import org.jetbrains.kotlin.codegen.optimization.common.OptimizationBasicInterpreter
import org.jetbrains.kotlin.codegen.optimization.common.StrictBasicValue
import org.jetbrains.kotlin.codegen.optimization.common.insnText
import org.jetbrains.kotlin.codegen.optimization.fixStack.peek
import org.jetbrains.kotlin.codegen.optimization.fixStack.top
import org.jetbrains.kotlin.codegen.optimization.transformer.MethodTransformer
@@ -18,7 +18,7 @@ package org.jetbrains.kotlin.codegen.optimization.boxing
import com.intellij.openapi.util.Pair
import org.jetbrains.kotlin.codegen.inline.getInsnOpcodeText
import org.jetbrains.kotlin.codegen.inline.getInsnText
import org.jetbrains.kotlin.codegen.inline.insnText
import org.jetbrains.kotlin.codegen.intrinsics.IntrinsicMethods
import org.jetbrains.kotlin.codegen.optimization.common.StrictBasicValue
import org.jetbrains.kotlin.codegen.optimization.common.*
@@ -325,7 +325,7 @@ class RedundantBoxingMethodTransformer : MethodTransformer() {
}
private fun throwCannotAdaptInstruction(insn: AbstractInsnNode): Nothing =
throw AssertionError("Cannot adapt instruction: ${getInsnText(insn)}")
throw AssertionError("Cannot adapt instruction: ${insn.insnText}")
private fun adaptAreEqualIntrinsic(
node: MethodNode,
@@ -46,7 +46,7 @@
package org.jetbrains.kotlin.codegen.optimization.common
import org.jetbrains.kotlin.codegen.inline.getInsnText
import org.jetbrains.kotlin.codegen.inline.insnText
import org.jetbrains.org.objectweb.asm.Opcodes
import org.jetbrains.org.objectweb.asm.Type
import org.jetbrains.org.objectweb.asm.tree.*
@@ -146,10 +146,10 @@ open class MethodAnalyzer<V : Value>(
}
catch (e: AnalyzerException) {
throw AnalyzerException(e.node, "Error at instruction #" + insn + " ${getInsnText(insnNode)}: " + e.message, e)
throw AnalyzerException(e.node, "Error at instruction #" + insn + " ${insnNode.insnText}: " + e.message, e)
}
catch (e: Exception) {
throw AnalyzerException(insnNode, "Error at instruction #" + insn + " ${getInsnText(insnNode)}: " + e.message, e)
throw AnalyzerException(insnNode, "Error at instruction #" + insn + " ${insnNode.insnText}: " + e.message, e)
}
}
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.codegen.optimization.common
import org.jetbrains.kotlin.codegen.inline.getInsnText
import org.jetbrains.kotlin.codegen.inline.insnText
import org.jetbrains.kotlin.utils.addToStdlib.safeAs
import org.jetbrains.org.objectweb.asm.Opcodes
import org.jetbrains.org.objectweb.asm.Opcodes.*
@@ -176,7 +176,6 @@ fun insnListOf(vararg insns: AbstractInsnNode) = InsnList().apply { insns.forEac
fun AbstractInsnNode.isStoreOperation(): Boolean = opcode in Opcodes.ISTORE..Opcodes.ASTORE
fun AbstractInsnNode.isLoadOperation(): Boolean = opcode in Opcodes.ILOAD..Opcodes.ALOAD
val AbstractInsnNode?.insnText get() = getInsnText(this)
val AbstractInsnNode?.debugText get() =
if (this == null) "<null>" else "${this::class.java.simpleName}: $insnText"