xref: /openbsd-src/gnu/llvm/lld/Common/TargetOptionsCommandFlags.cpp (revision dfe94b169149f14cc1aee2cf6dad58a8d9a1860c)
1ece8a530Spatrick //===-- TargetOptionsCommandFlags.cpp ---------------------------*- C++ -*-===//
2ece8a530Spatrick //
3ece8a530Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4ece8a530Spatrick // See https://llvm.org/LICENSE.txt for license information.
5ece8a530Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6ece8a530Spatrick //
7ece8a530Spatrick //===----------------------------------------------------------------------===//
8ece8a530Spatrick 
9ece8a530Spatrick #include "lld/Common/TargetOptionsCommandFlags.h"
10*dfe94b16Srobert #include "llvm/ADT/Triple.h"
11bb684c34Spatrick #include "llvm/CodeGen/CommandFlags.h"
12ece8a530Spatrick #include "llvm/Target/TargetOptions.h"
13*dfe94b16Srobert #include <optional>
14bb684c34Spatrick 
initTargetOptionsFromCodeGenFlags()15ece8a530Spatrick llvm::TargetOptions lld::initTargetOptionsFromCodeGenFlags() {
161cf9926bSpatrick   return llvm::codegen::InitTargetOptionsFromCodeGenFlags(llvm::Triple());
17ece8a530Spatrick }
18ece8a530Spatrick 
getRelocModelFromCMModel()19*dfe94b16Srobert std::optional<llvm::Reloc::Model> lld::getRelocModelFromCMModel() {
20bb684c34Spatrick   return llvm::codegen::getExplicitRelocModel();
21ece8a530Spatrick }
22ece8a530Spatrick 
getCodeModelFromCMModel()23*dfe94b16Srobert std::optional<llvm::CodeModel::Model> lld::getCodeModelFromCMModel() {
24bb684c34Spatrick   return llvm::codegen::getExplicitCodeModel();
25ece8a530Spatrick }
26ece8a530Spatrick 
getCPUStr()27bb684c34Spatrick std::string lld::getCPUStr() { return llvm::codegen::getCPUStr(); }
28ece8a530Spatrick 
getMAttrs()29bb684c34Spatrick std::vector<std::string> lld::getMAttrs() { return llvm::codegen::getMAttrs(); }
30