clang 20.0.0git
TargetOptions.h
Go to the documentation of this file.
1//===--- TargetOptions.h ----------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8///
9/// \file
10/// Defines the clang::TargetOptions class.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_CLANG_BASIC_TARGETOPTIONS_H
15#define LLVM_CLANG_BASIC_TARGETOPTIONS_H
16
18#include "llvm/Support/VersionTuple.h"
19#include "llvm/Target/TargetOptions.h"
20#include <string>
21#include <vector>
22
23namespace clang {
24
25/// Options for controlling the target.
27public:
28 /// The name of the target triple to compile for.
29 std::string Triple;
30
31 /// When compiling for the device side, contains the triple used to compile
32 /// for the host.
33 std::string HostTriple;
34
35 /// If given, the name of the target CPU to generate code for.
36 std::string CPU;
37
38 /// If given, the name of the target CPU to tune code for.
39 std::string TuneCPU;
40
41 /// If given, the unit to use for floating point math.
42 std::string FPMath;
43
44 /// If given, the name of the target ABI to use.
45 std::string ABI;