diff options
Diffstat (limited to 'lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp')
-rw-r--r-- | lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp | 137 |
1 files changed, 0 insertions, 137 deletions
diff --git a/lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp b/lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp deleted file mode 100644 index bb831b42d3f..00000000000 --- a/lld/lib/ReaderWriter/MachO/WriterOptionsMachO.cpp +++ /dev/null @@ -1,137 +0,0 @@ -//===- lib/ReaderWriter/MachO/WriterOptionsMachO.cpp ----------------------===// -// -// The LLVM Linker -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -#include "lld/ReaderWriter/WriterMachO.h" - -#include "llvm/Support/Debug.h" -#include "llvm/Support/ErrorHandling.h" -#include "llvm/Support/system_error.h" - -#include "llvm/ADT/SmallVector.h" -#include "llvm/ADT/StringRef.h" - -#include "MachOFormat.hpp" - -namespace lld { - -WriterOptionsMachO::WriterOptionsMachO() - : _outputkind(outputDynamicExecutable), - _architecture(arch_x86), - _pageZeroSize(0x1000), - _noTextRelocations(true) { -} - -WriterOptionsMachO::~WriterOptionsMachO() { -} - -StringRef WriterOptionsMachO::archName() const { - switch ( _architecture ) { - case arch_x86_64: - return StringRef("x86_64"); - case arch_x86: - return StringRef("i386"); - case arch_armv6: - return StringRef("armv6"); - case arch_armv7: - return StringRef("armv7"); - } - llvm_unreachable("unknown arch"); -} - -uint32_t WriterOptionsMachO::cpuType() const { - switch ( _architecture ) { - case arch_x86_64: - return mach_o::CPU_TYPE_X86_64; - case arch_x86: - return mach_o::CPU_TYPE_I386; - case arch_armv6: - case arch_armv7: - return mach_o::CPU_TYPE_ARM; - } - llvm_unreachable("unknown arch"); -} - -uint32_t WriterOptionsMachO::cpuSubtype() const { - switch ( _architecture ) { - case arch_x86_64: - return mach_o::CPU_SUBTYPE_X86_64_ALL; - case arch_x86: - return mach_o::CPU_SUBTYPE_X86_ALL; - case arch_armv6: - return mach_o::CPU_SUBTYPE_ARM_V6; - case arch_armv7: - return mach_o::CPU_SUBTYPE_ARM_V7; - } - llvm_unreachable("unknown arch"); -} - -uint64_t WriterOptionsMachO::pageZeroSize() const { - switch ( _outputkind ) { - case outputDynamicExecutable: - return _pageZeroSize; - case outputDylib: - case outputBundle: - case outputObjectFile: - assert(_pageZeroSize == 0); - return 0; - } - llvm_unreachable("unknown outputkind"); -} - -bool WriterOptionsMachO::addEntryPointLoadCommand() const { - switch ( _outputkind ) { - case outputDynamicExecutable: - // Only main executables have an entry point - return false; - case outputDylib: - case outputBundle: - case outputObjectFile: - return false; - } - llvm_unreachable("unknown outputkind"); -} - -bool WriterOptionsMachO::addUnixThreadLoadCommand() const { - switch ( _outputkind ) { - case outputDynamicExecutable: - // Only main executables have an entry point - return true; - case outputDylib: - case outputBundle: - case outputObjectFile: - return false; - } - llvm_unreachable("unknown outputkind"); -} - -StringRef WriterOptionsMachO::entryPointName() const { - switch ( _outputkind ) { - case outputDynamicExecutable: - // Only main executables have an entry point - if ( ! _customEntryPointName.empty() ) { - return _customEntryPointName; - } - else { - if ( true || this->addEntryPointLoadCommand() ) - return StringRef("_main"); - else - return StringRef("start"); - } - break; - case outputDylib: - case outputBundle: - case outputObjectFile: - return StringRef(); - } - llvm_unreachable("unknown outputkind"); -} - - -} // namespace lld - |