[JS] Support multimodule IC tests with K2

Includes supporting klib file generation.
This commit is contained in:
Anton Bannykh
2023-08-09 17:37:58 +02:00
committed by teamcity
parent d25d0e4f94
commit 962bfaca9c
6 changed files with 482 additions and 1 deletions
@@ -555,6 +555,7 @@ class K2JsIrCompiler : CLICompiler<K2JSCompilerArguments>() {
firOutputs = analyzedOutput.output,
fir2IrActualizedResult = fir2IrActualizedResult,
outputKlibPath = outputKlibPath,
nopack = arguments.irProduceKlibDir,
messageCollector = messageCollector,
diagnosticsReporter = diagnosticsReporter,
jsOutputName = arguments.irPerModuleOutputName,
@@ -302,6 +302,7 @@ fun serializeFirKlib(
firOutputs: List<ModuleCompilerAnalyzedOutput>,
fir2IrActualizedResult: Fir2IrActualizedResult,
outputKlibPath: String,
nopack: Boolean,
messageCollector: MessageCollector,
diagnosticsReporter: BaseDiagnosticsCollector,
jsOutputName: String?,
@@ -320,7 +321,7 @@ fun serializeFirKlib(
fir2IrActualizedResult.irModuleFragment,
expectDescriptorToSymbol = mutableMapOf(),
cleanFiles = icData ?: emptyList(),
nopack = true,
nopack = nopack,
perFile = false,
containsErrorCode = messageCollector.hasErrors() || diagnosticsReporter.hasErrors,
abiVersion = KotlinAbiVersion.CURRENT, // TODO get from test file data