diff options
| author | Keno Fischer <kfischer@college.harvard.edu> | 2015-05-04 20:03:01 +0000 |
|---|---|---|
| committer | Keno Fischer <kfischer@college.harvard.edu> | 2015-05-04 20:03:01 +0000 |
| commit | d71a17710beaa2c95aeaf51f264c7436a69a4b35 (patch) | |
| tree | 958c15303ccc3d51a85f3cdba22657faafa28c4a | |
| parent | d6e8c0d4361faa507cdf70028040a018a6c500fa (diff) | |
| download | bcm5719-llvm-d71a17710beaa2c95aeaf51f264c7436a69a4b35.tar.gz bcm5719-llvm-d71a17710beaa2c95aeaf51f264c7436a69a4b35.zip | |
Respect object format choice on Darwin
Summary:
The object format can be set to something other than MachO, e.g.
to use ELF-on-Darwin for MCJIT. This already works on Windows, so
there's no reason it shouldn't on Darwin.
Reviewers: lhames, grosbach
Subscribers: rafael, grosbach, t.p.northover, llvm-commits
Differential Revision: http://reviews.llvm.org/D6185
llvm-svn: 236455
| -rw-r--r-- | llvm/lib/MC/MCObjectFileInfo.cpp | 2 | ||||
| -rw-r--r-- | llvm/test/MC/ELF/empty.s | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/llvm/lib/MC/MCObjectFileInfo.cpp b/llvm/lib/MC/MCObjectFileInfo.cpp index 02fc55e0749..29f5a1d3752 100644 --- a/llvm/lib/MC/MCObjectFileInfo.cpp +++ b/llvm/lib/MC/MCObjectFileInfo.cpp @@ -754,7 +754,7 @@ void MCObjectFileInfo::InitMCObjectFileInfo(StringRef T, Reloc::Model relocm, Arch == Triple::aarch64 || Arch == Triple::ppc || Arch == Triple::ppc64 || Arch == Triple::UnknownArch) && - (TT.isOSDarwin() || TT.isOSBinFormatMachO())) { + TT.isOSBinFormatMachO()) { Env = IsMachO; InitMachOMCObjectFileInfo(TT); } else if ((Arch == Triple::x86 || Arch == Triple::x86_64 || diff --git a/llvm/test/MC/ELF/empty.s b/llvm/test/MC/ELF/empty.s index d6a852ce15a..a371af443da 100644 --- a/llvm/test/MC/ELF/empty.s +++ b/llvm/test/MC/ELF/empty.s @@ -1,4 +1,14 @@ // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -s | FileCheck %s +// RUN: llvm-mc -filetype=obj -triple x86_64-apple-darwin14.0.0-elf %s -o - | llvm-readobj -s | FileCheck %s -check-prefix=DARWIN +// RUN: llvm-mc -filetype=obj -triple x86_64-pc-win32-elf %s -o - | llvm-readobj -s | FileCheck %s -check-prefix=WINDOWS + +// Check that we can create ELF files for darwin/windows, even though +// it is not the default file format. + +// DARWIN: Format: ELF64-x86-64 +// WINDOWS: Format: ELF64-x86-64 +// DARWIN-NEXT: Arch: x86_64 +// WINDOWS-NEXT: Arch: x86_64 // Test that like gnu as we create text, data and bss by default. Also test // that shstrtab, symtab and strtab are listed. |

