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