1//===- GNUInfo.cpp --------------------------------------------------------===//
2//
3//                     The MCLinker Project
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9#include "mcld/Target/GNUInfo.h"
10
11namespace mcld {
12
13//===----------------------------------------------------------------------===//
14// GNUInfo
15//===----------------------------------------------------------------------===//
16GNUInfo::GNUInfo(const llvm::Triple& pTriple) : m_Triple(pTriple) {
17}
18
19uint8_t GNUInfo::OSABI() const {
20  switch (m_Triple.getOS()) {
21    case llvm::Triple::FreeBSD:
22      return llvm::ELF::ELFOSABI_FREEBSD;
23    case llvm::Triple::Linux:
24      return llvm::ELF::ELFOSABI_LINUX;
25    default:
26      return llvm::ELF::ELFOSABI_NONE;
27  }
28}
29
30}  // namespace mcld
31