Path: blob/main/contrib/llvm-project/llvm/lib/Target/DirectX/DXILMetadata.h
35266 views
//===- DXILMetadata.h - DXIL Metadata helper objects ----------------------===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//7///8/// \file This file contains helper objects for working with DXIL metadata.9///10//===----------------------------------------------------------------------===//1112#ifndef LLVM_TARGET_DIRECTX_DXILMETADATA_H13#define LLVM_TARGET_DIRECTX_DXILMETADATA_H1415#include <stdint.h>1617namespace llvm {18class Module;19class NamedMDNode;20class VersionTuple;21namespace dxil {2223class ValidatorVersionMD {24NamedMDNode *Entry;2526public:27ValidatorVersionMD(Module &M);2829void update(VersionTuple ValidatorVer);3031bool isEmpty();32VersionTuple getAsVersionTuple();33};3435void createShaderModelMD(Module &M);36void createDXILVersionMD(Module &M);37void createEntryMD(Module &M, const uint64_t ShaderFlags);3839} // namespace dxil40} // namespace llvm4142#endif // LLVM_TARGET_DIRECTX_DXILMETADATA_H434445