diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLIConfigurationKeys.java b/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLIConfigurationKeys.java index a64b55f6a02..2b49e6bbfdd 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLIConfigurationKeys.java +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/common/CLIConfigurationKeys.java @@ -28,6 +28,8 @@ public class CLIConfigurationKeys { CompilerConfigurationKey.create("compiler plugins"); public static final CompilerConfigurationKey ALLOW_KOTLIN_PACKAGE = CompilerConfigurationKey.create("allow kotlin package"); + public static final CompilerConfigurationKey REPORT_PERF = + CompilerConfigurationKey.create("report performance information"); private CLIConfigurationKeys() { } diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt index 0a0697fcd9a..81232f39d39 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt @@ -126,7 +126,6 @@ open class K2JVMCompiler : CLICompiler() { if (arguments.script) { configuration.add(CommonConfigurationKeys.SCRIPT_DEFINITIONS_KEY, StandardScriptDefinition) - shouldReportPerf = false } if (arguments.skipMetadataVersionCheck) { @@ -238,7 +237,6 @@ open class K2JVMCompiler : CLICompiler() { // allows to track GC time for each run when repeated compilation is used private val elapsedGCTime = hashMapOf() private var elapsedJITTime = 0L - private var shouldReportPerf = true fun resetInitStartTime() { if (initStartNanos == 0L) { @@ -251,7 +249,9 @@ open class K2JVMCompiler : CLICompiler() { } fun reportPerf(configuration: CompilerConfiguration, message: String) { - if (!shouldReportPerf) return + if (!configuration.get(CLIConfigurationKeys.REPORT_PERF, false)) { + return + } val collector = configuration[CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY]!! collector.report(CompilerMessageSeverity.INFO, "PERF: " + message, CompilerMessageLocation.NO_LOCATION) @@ -281,6 +281,7 @@ open class K2JVMCompiler : CLICompiler() { configuration.put(JVMConfigurationKeys.DISABLE_OPTIMIZATION, arguments.noOptimize) configuration.put(JVMConfigurationKeys.MULTIFILE_FACADES_OPEN, arguments.multifileFacadesOpen); configuration.put(CLIConfigurationKeys.ALLOW_KOTLIN_PACKAGE, arguments.allowKotlinPackage); + configuration.put(CLIConfigurationKeys.REPORT_PERF, arguments.reportPerf); } private fun getClasspath(paths: KotlinPaths, arguments: K2JVMCompilerArguments): List {