From 59e093c8e464dcddbc238a7f8dd9b3b89e452b5a Mon Sep 17 00:00:00 2001 From: Ilya Matveev Date: Wed, 25 Jan 2017 17:21:47 +0300 Subject: [PATCH] backend: Place *.bc.o files in a temporary directory for llvmLlc() --- .../org/jetbrains/kotlin/backend/konan/LinkStage.kt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/LinkStage.kt b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/LinkStage.kt index 0fe7e41762e..ee0106d4109 100644 --- a/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/LinkStage.kt +++ b/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/LinkStage.kt @@ -162,12 +162,12 @@ internal class LinkStage(val context: Context) { } fun llvmLlc(file: BitcodeFile): ObjectFile { - // TODO: Make it a temporary file. - val objectFile = "$file.o" - + val tmpObjectFile = File.createTempFile(File(file).name, ".o") + tmpObjectFile.deleteOnExit() + val objectFile = tmpObjectFile.absolutePath val tool = distribution.llvmLlc - val command = listOf(distribution.llvmLlc, "-o", objectFile, "-filetype=obj") + - properties.propertyList("llvmLlcFlags.$suffix") + listOf(file) + val command = listOf(distribution.llvmLlc, "-o", objectFile, "-filetype=obj") + + properties.propertyList("llvmLlcFlags.$suffix") + listOf(file) runTool(*command.toTypedArray()) return objectFile