From: Rafael Espindola Date: Fri, 4 Oct 2013 21:40:54 +0000 (+0000) Subject: Fix object file writing in llvm-lto on Windows. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=ec2ac8985650a501b452b8fdb69d3124d7be5af9;p=oota-llvm.git Fix object file writing in llvm-lto on Windows. We were writing in text mode. Patch by Greg Bedwell. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191985 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/LTO/cfi_endproc.ll b/test/LTO/cfi_endproc.ll index acfaf5a8009..d8818d226e0 100644 --- a/test/LTO/cfi_endproc.ll +++ b/test/LTO/cfi_endproc.ll @@ -4,9 +4,6 @@ ; RUN: llvm-lto -o %t3 -exported-symbol=main %t1 ; RUN: llvm-nm %t3 | FileCheck %s -check-prefix=EXPORT -; FIXME: we can now build LTO on windows, debug why this fails. -; XFAIL: win32 - target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" diff --git a/test/LTO/lit.local.cfg b/test/LTO/lit.local.cfg index f61943a77af..7a70736aeac 100644 --- a/test/LTO/lit.local.cfg +++ b/test/LTO/lit.local.cfg @@ -2,5 +2,5 @@ targets = set(config.root.targets_to_build.split()) if not 'X86' in targets: config.unsupported = True -if config.root.host_os in ['Cygwin', 'MingW', 'Windows']: +if config.root.host_os in ['Cygwin']: config.unsupported = True diff --git a/tools/llvm-lto/llvm-lto.cpp b/tools/llvm-lto/llvm-lto.cpp index 1d03fa62a87..bce903fa160 100644 --- a/tools/llvm-lto/llvm-lto.cpp +++ b/tools/llvm-lto/llvm-lto.cpp @@ -136,7 +136,8 @@ int main(int argc, char **argv) { return 1; } - raw_fd_ostream FileStream(OutputFilename.c_str(), ErrorInfo); + raw_fd_ostream FileStream(OutputFilename.c_str(), ErrorInfo, + sys::fs::F_Binary); if (!ErrorInfo.empty()) { errs() << argv[0] << ": error opening the file '" << OutputFilename << "': " << ErrorInfo << "\n";