From ee60a1a4317ddfe22d7b9fc1820758b57a996513 Mon Sep 17 00:00:00 2001 From: Zalim Bashorov Date: Tue, 8 Dec 2020 01:23:12 +0300 Subject: [PATCH] [IR] Add an ability to change dump strategy using a system property --- .../kotlin/backend/common/phaser/DumperVerifier.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/phaser/DumperVerifier.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/phaser/DumperVerifier.kt index db767d4bacf..5fd4ecc7905 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/phaser/DumperVerifier.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/phaser/DumperVerifier.kt @@ -1,5 +1,5 @@ /* - * Copyright 2010-2019 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. */ @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.backend.common.IrValidatorConfig import org.jetbrains.kotlin.ir.IrElement import org.jetbrains.kotlin.ir.declarations.* import org.jetbrains.kotlin.ir.util.dump +import org.jetbrains.kotlin.ir.util.dumpKotlinLike import org.jetbrains.kotlin.ir.util.fqNameWhenAvailable import org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid import org.jetbrains.kotlin.ir.visitors.acceptChildrenVoid @@ -62,6 +63,9 @@ fun dumpIrElement(actionState: ActionState, data: IrElement, @Suppress("UNUSED_P var dumpText: String = "" val elementName: String + val dumpStrategy = System.getProperty("org.jetbrains.kotlin.compiler.ir.dump.strategy") + val dump: IrElement.() -> String = if (dumpStrategy == "KotlinLike") IrElement::dumpKotlinLike else IrElement::dump + val dumpOnlyFqName = actionState.config.dumpOnlyFqName if (dumpOnlyFqName != null) { elementName = dumpOnlyFqName