From 45260cee1e828e309d102114fc3b7f01cc55ec37 Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Wed, 27 May 2020 15:55:20 +0700 Subject: [PATCH] [Commonizer] Update stats collector to report lifted up declarations --- .../commonizer/konan/NativeStatsCollector.kt | 35 +++++++++++++------ 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeStatsCollector.kt b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeStatsCollector.kt index 02825e62798..8fe07886287 100644 --- a/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeStatsCollector.kt +++ b/native/commonizer/src/org/jetbrains/kotlin/descriptors/commonizer/konan/NativeStatsCollector.kt @@ -79,18 +79,33 @@ class NativeStatsCollector( append(SEPARATOR) append(firstNotNull.declarationType) // readable declaration type append(SEPARATOR) - append(if (lastIsNull) '-' else 'E') // common - for (index in 0 until output.size - 1) { - append(SEPARATOR) - append( - when { - output[index] == null -> '-' // absent - lastIsNull -> 'O' // original (not commonized) - else -> 'A' // actual (commonized) - } - ) + var isLiftedUp = !lastIsNull + val platformItems = StringBuilder().apply { + for (index in 0 until output.size - 1) { + append(SEPARATOR) + append( + when { + output[index] == null -> '-' // absent + lastIsNull -> 'O' // original (not commonized) + else -> { + isLiftedUp = false + 'A' // actual (commonized) + } + } + ) + } } + + append( + when { + isLiftedUp -> 'L' + lastIsNull -> '-' + else -> 'E' + } + ) // common + + append(platformItems) } writer.println(row)