diff options
| author | Michael J. Spencer <bigcheesegs@gmail.com> | 2013-01-22 02:15:30 +0000 |
|---|---|---|
| committer | Michael J. Spencer <bigcheesegs@gmail.com> | 2013-01-22 02:15:30 +0000 |
| commit | d68d6196afc47b3fe0a0953d4d7fa08cfc90f17e (patch) | |
| tree | 8b671b631457ac1e5b91dd798754cbe9c511b020 /lld/lib/Core | |
| parent | df0b43d1f9988e055ec590531b640d64d87a8a8d (diff) | |
| download | bcm5719-llvm-d68d6196afc47b3fe0a0953d4d7fa08cfc90f17e.tar.gz bcm5719-llvm-d68d6196afc47b3fe0a0953d4d7fa08cfc90f17e.zip | |
Add {,ELF,MachO}TargetInfo.
llvm-svn: 173117
Diffstat (limited to 'lld/lib/Core')
| -rw-r--r-- | lld/lib/Core/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | lld/lib/Core/TargetInfo.cpp | 35 |
2 files changed, 36 insertions, 0 deletions
diff --git a/lld/lib/Core/CMakeLists.txt b/lld/lib/Core/CMakeLists.txt index 877da26aca3..44becf48903 100644 --- a/lld/lib/Core/CMakeLists.txt +++ b/lld/lib/Core/CMakeLists.txt @@ -7,4 +7,5 @@ add_lld_library(lldCore InputFiles.cpp Resolver.cpp SymbolTable.cpp + TargetInfo.cpp ) diff --git a/lld/lib/Core/TargetInfo.cpp b/lld/lib/Core/TargetInfo.cpp new file mode 100644 index 00000000000..da834fb2c9c --- /dev/null +++ b/lld/lib/Core/TargetInfo.cpp @@ -0,0 +1,35 @@ +//===- lib/Core/TargetInfo.cpp - Linker Target Info Interface -------------===// +// +// The LLVM Linker +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#include "lld/Core/TargetInfo.h" + +#include "lld/Core/LinkerOptions.h" + +#include "llvm/ADT/Triple.h" + +namespace lld { +TargetInfo::~TargetInfo() {} + +llvm::Triple TargetInfo::getTriple() const { + return llvm::Triple(llvm::Triple::normalize(_options._target)); +} + +bool TargetInfo::is64Bits() const { + return getTriple().isArch64Bit(); +} + +bool TargetInfo::isLittleEndian() const { + // TODO: Do this properly. It is not defined purely by arch. + return true; +} + +StringRef TargetInfo::getEntry() const { + return _options._entrySymbol; +} +} // end namespace lld |

