//===- HexagonGNUInfo.cpp -------------------------------------------------===// // // The MCLinker Project // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #include "HexagonGNUInfo.h" #include <llvm/ADT/StringRef.h> #include <llvm/ADT/StringSwitch.h> namespace mcld { //===----------------------------------------------------------------------===// // HexagonGNUInfo //===----------------------------------------------------------------------===// HexagonGNUInfo::HexagonGNUInfo(const TargetOptions& pTargetOptions) : GNUInfo(pTargetOptions.triple()), m_Options(pTargetOptions) { } /// flags - the value of ElfXX_Ehdr::e_flags uint64_t HexagonGNUInfo::flags() const { return llvm::StringSwitch<uint64_t>(m_Options.getTargetCPU()) .Case("hexagonv4", V4) .Case("hexagonv5", V5) .Default(V4); } } // namespace mcld