clang 22.0.0git
DirectX.cpp
Go to the documentation of this file.
1//===--- DirectX.cpp - Implement DirectX target feature support -----------===//
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// This file implements DirectX TargetInfo objects.
10//
11//===----------------------------------------------------------------------===//
12
13#include "DirectX.h"
14#include "Targets.h"
16
17using namespace clang;
18using namespace clang::targets;
19
20static constexpr int NumBuiltins =
22
23#define GET_BUILTIN_STR_TABLE
24#include "clang/Basic/BuiltinsDirectX.inc"
25#undef GET_BUILTIN_STR_TABLE
26
27static constexpr Builtin::Info BuiltinInfos[] = {
28#define GET_BUILTIN_INFOS
29#include "clang/Basic/BuiltinsDirectX.inc"
30#undef GET_BUILTIN_INFOS
31};
32static_assert(std::size(BuiltinInfos) == NumBuiltins);
33
35 MacroBuilder &Builder) const {
36 DefineStd(Builder, "DIRECTX", Opts);
37}
38
static constexpr llvm::StringTable BuiltinStrings
Definition AMDGPU.cpp:101
static constexpr Builtin::Info BuiltinInfos[]
Definition Builtins.cpp:38
static constexpr unsigned NumBuiltins
Definition Builtins.cpp:32
Enumerates target-specific builtins in their own namespaces within namespace clang.
Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...
llvm::SmallVector< Builtin::InfosShard > getTargetBuiltins() const override
Return information about target-specific builtins for the current primary target, and info about whic...
Definition DirectX.cpp:40
void getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const override
===-— Other target property query methods -----------------------—===//
Definition DirectX.cpp:34
LLVM_LIBRARY_VISIBILITY void DefineStd(clang::MacroBuilder &Builder, llvm::StringRef MacroName, const clang::LangOptions &Opts)
Define a macro name and standard variants.
The JSON file list parser is used to communicate input to InstallAPI.
The info used to represent each builtin.
Definition Builtins.h:78