diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLower.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLower.kt index 1fd67ab3267..c1127366272 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLower.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanLower.kt @@ -40,11 +40,8 @@ internal class KonanLower(val context: Context) { fun lowerModule(irModule: IrModuleFragment) { val phaser = PhaseManager(context) - // TODO: Find a place for the phase - if (context.shouldGenerateTestRunner()) { - phaser.phase(KonanPhase.TEST_PROCESSOR) { - irModule.files.forEach(TestProcessor(context)::lower) - } + phaser.phase(KonanPhase.TEST_PROCESSOR) { + irModule.files.forEach(TestProcessor(context)::lower) } phaser.phase(KonanPhase.LOWER_SPECIAL_CALLS) { diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanPhases.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanPhases.kt index cd1afae1857..51fa7fdcefb 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanPhases.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/KonanPhases.kt @@ -28,7 +28,7 @@ enum class KonanPhase(val description: String, /* */ SERIALIZER("Serialize descriptor tree and inline IR bodies"), /* */ BACKEND("All backend"), /* ... */ LOWER("IR Lowering"), - /* ... ... */ TEST_PROCESSOR("Unit test processor"), // TODO: It is not a lowering. Move into a separate phase before lowering? + /* ... ... */ TEST_PROCESSOR("Unit test processor"), /* ... ... */ LOWER_SPECIAL_CALLS("Special calls processing before inlining"), /* ... ... */ LOWER_INLINE_CONSTRUCTORS("Inline constructors transformation", LOWER_SPECIAL_CALLS), /* ... ... */ LOWER_INLINE("Functions inlining", LOWER_INLINE_CONSTRUCTORS, LOWER_SPECIAL_CALLS), @@ -86,6 +86,8 @@ object KonanPhases { KonanPhase.LINK_STAGE.enabled = (get(PRODUCE) == CompilerOutputKind.PROGRAM) + KonanPhase.TEST_PROCESSOR.enabled = getBoolean(GENERATE_TEST_RUNNER) + val disabled = get(DISABLED_PHASES) disabled?.forEach { phases[known(it)]!!.enabled = false } diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ir/Ir.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ir/Ir.kt index 886734b1adb..c67413bc6cb 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ir/Ir.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/ir/Ir.kt @@ -22,24 +22,17 @@ import org.jetbrains.kotlin.backend.common.ir.Symbols import org.jetbrains.kotlin.backend.konan.Context import org.jetbrains.kotlin.backend.konan.ValueType import org.jetbrains.kotlin.backend.konan.descriptors.getMemberScope -import org.jetbrains.kotlin.backend.konan.descriptors.isKFunctionType import org.jetbrains.kotlin.backend.konan.lower.TestProcessor import org.jetbrains.kotlin.builtins.KotlinBuiltIns -import org.jetbrains.kotlin.builtins.isBuiltinFunctionalType import org.jetbrains.kotlin.builtins.isFunctionType -import org.jetbrains.kotlin.builtins.isFunctionTypeOrSubtype import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.descriptors.FunctionDescriptor import org.jetbrains.kotlin.descriptors.PropertyDescriptor import org.jetbrains.kotlin.incremental.components.NoLookupLocation -import org.jetbrains.kotlin.ir.IrElement -import org.jetbrains.kotlin.ir.declarations.IrEnumEntry import org.jetbrains.kotlin.ir.declarations.IrModuleFragment import org.jetbrains.kotlin.ir.symbols.IrEnumEntrySymbol import org.jetbrains.kotlin.ir.util.SymbolTable import org.jetbrains.kotlin.name.Name -import org.jetbrains.kotlin.resolve.calls.components.isVararg -import org.jetbrains.kotlin.serialization.KonanIr import org.jetbrains.kotlin.types.KotlinType import kotlin.properties.Delegates diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/CapturedTypes.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/CapturedTypes.kt index 1841117948a..b7e157a32ce 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/CapturedTypes.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/serialization/CapturedTypes.kt @@ -10,7 +10,7 @@ import org.jetbrains.kotlin.resolve.calls.inference.* private val konanInternalPackageName = FqName("konan.internal") private val fakeCapturedTypeClassName = Name.identifier("FAKE_CAPTURED_TYPE_CLASS") -internal fun createFakeClass(packageName: FqName, className: Name) +internal fun createFakeClass(packageName: FqName, className: Name) = MutableClassDescriptor( EmptyPackageFragmentDescriptor( ErrorUtils.getErrorModule(), diff --git a/backend.native/tests/build.gradle b/backend.native/tests/build.gradle index a0812063560..6f2971654af 100644 --- a/backend.native/tests/build.gradle +++ b/backend.native/tests/build.gradle @@ -2146,4 +2146,3 @@ if (isMac()) { } } } - diff --git a/build.gradle b/build.gradle index b0d3109c5d9..a6fc64f33c8 100644 --- a/build.gradle +++ b/build.gradle @@ -258,10 +258,6 @@ targetList.each { target -> rename("${target}Start.bc", 'start.bc') into("klib/stdlib/targets/$target/native") } - from(project(':runtime').file("build/${target}Test.bc")) { - rename("${target}Test.bc", 'test.bc') - into("klib/stdlib/targets/$target/native") - } if (target == 'wasm32') { from(project(':runtime').file('src/launcher/js')) { into('klib/stdlib/targets/wasm32/included') diff --git a/runtime/src/main/kotlin/konan/test/TestRunner.kt b/runtime/src/main/kotlin/konan/test/TestRunner.kt index e480d5311cb..2d4f816cea5 100644 --- a/runtime/src/main/kotlin/konan/test/TestRunner.kt +++ b/runtime/src/main/kotlin/konan/test/TestRunner.kt @@ -23,4 +23,3 @@ object TestRunner { endTesting(this@TestRunner) } } - diff --git a/settings.gradle b/settings.gradle index 4e18753effc..24b2f4efa1d 100644 --- a/settings.gradle +++ b/settings.gradle @@ -28,4 +28,3 @@ include ':backend.native:tests' include ':shared' include ':tools:kotlin-native-gradle-plugin' include ':utilities' -include ':ext:junit' \ No newline at end of file