Dump compiler arguments along with module model
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 127f1be..0c48ca3 100644
--- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt
+++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt
@@ -157,7 +157,7 @@
 
                 val dumpModelDir = environment.configuration.get(CommonConfigurationKeys.DUMP_MODEL)
                 if (dumpModelDir != null) {
-                    KotlinToJVMBytecodeCompiler.dumpModel(dumpModelDir, chunk, environment.configuration)
+                    KotlinToJVMBytecodeCompiler.dumpModel(dumpModelDir, chunk, environment.configuration, arguments)
                 }
 
                 KotlinToJVMBytecodeCompiler.compileModules(environment, buildFile, chunk)
diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt
index d1d59908..6a00076 100644
--- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt
+++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt
@@ -23,6 +23,8 @@
 import com.intellij.psi.PsiJavaModule
 import com.intellij.psi.search.DelegatingGlobalSearchScope
 import com.intellij.psi.search.GlobalSearchScope
+import com.intellij.util.xmlb.SkipDefaultsSerializationFilter
+import com.intellij.util.xmlb.XmlSerializer
 import org.jdom.Attribute
 import org.jdom.Document
 import org.jdom.Element
@@ -33,6 +35,7 @@
 import org.jetbrains.kotlin.backend.jvm.JvmIrCodegenFactory
 import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys
 import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys.CONTENT_ROOTS
+import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
 import org.jetbrains.kotlin.cli.common.checkKotlinPackageUsage
 import org.jetbrains.kotlin.cli.common.config.addKotlinSourceRoot
 import org.jetbrains.kotlin.cli.common.fir.FirDiagnosticsCompilerResultsReporter
@@ -57,9 +60,20 @@
 import java.io.File
 
 object KotlinToJVMBytecodeCompiler {
-    fun dumpModel(dir: String, chunk: List<Module>, configuration: CompilerConfiguration) {
-
+    fun dumpModel(
+        dir: String, chunk: List<Module>,
+        configuration: CompilerConfiguration,
+        arguments: K2JVMCompilerArguments
+    ) {
         val modules = Element("modules").apply {
+            // Just write out all compiler arguments as is
+            addContent(
+                Element("compilerArguments").apply {
+                    val skipDefaultsFilter = SkipDefaultsSerializationFilter()
+                    val element = XmlSerializer.serialize(arguments, skipDefaultsFilter)
+                    addContent(element)
+                }
+            )
             for (module in chunk) {
                 addContent(Element("module").apply {
                     attributes.add(