LLVM 22.0.0git
RootSignatureValidations.h
Go to the documentation of this file.
1//===- RootSignatureValidations.h - HLSL Root Signature helpers -----------===//
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 This file contains helper obejcts for working with HLSL Root
10/// Signatures.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_FRONTEND_HLSL_ROOTSIGNATUREVALIDATIONS_H
15#define LLVM_FRONTEND_HLSL_ROOTSIGNATUREVALIDATIONS_H
16
20
21namespace llvm {
22namespace hlsl {
23namespace rootsig {
24
25// Basic verification of RootElements
26
27LLVM_ABI bool verifyRootFlag(uint32_t Flags);
28LLVM_ABI bool verifyVersion(uint32_t Version);
29LLVM_ABI bool verifyRegisterValue(uint32_t RegisterValue);
30LLVM_ABI bool verifyRegisterSpace(uint32_t RegisterSpace);
31LLVM_ABI bool verifyRootDescriptorFlag(uint32_t Version, uint32_t FlagsVal);
37LLVM_ABI bool verifyNumDescriptors(uint32_t NumDescriptors);
38LLVM_ABI bool verifyMipLODBias(float MipLODBias);
39LLVM_ABI bool verifyMaxAnisotropy(uint32_t MaxAnisotropy);
40LLVM_ABI bool verifyLOD(float LOD);
41
44
45} // namespace rootsig
46} // namespace hlsl
47} // namespace llvm
48
49#endif // LLVM_FRONTEND_HLSL_ROOTSIGNATUREVALIDATIONS_H
#define LLVM_ABI
Definition Compiler.h:213
This file implements a coalescing interval map for small objects.
The instances of the Type class are immutable: once they are created, they are never changed.
Definition Type.h:45
LLVM_ABI bool verifyRootDescriptorFlag(uint32_t Version, uint32_t FlagsVal)
LLVM_ABI uint64_t computeRangeBound(uint64_t Offset, uint32_t Size)
LLVM_ABI bool verifyStaticSamplerFlags(uint32_t Version, uint32_t FlagsNumber)
LLVM_ABI bool verifyRegisterSpace(uint32_t RegisterSpace)
LLVM_ABI bool verifyDescriptorRangeFlag(uint32_t Version, dxil::ResourceClass Type, dxbc::DescriptorRangeFlags FlagsVal)
LLVM_ABI bool verifyVersion(uint32_t Version)
LLVM_ABI bool verifyRootFlag(uint32_t Flags)
LLVM_ABI bool verifyLOD(float LOD)
LLVM_ABI bool verifyRangeType(uint32_t Type)
LLVM_ABI bool verifyNoOverflowedOffset(uint64_t Offset)
LLVM_ABI bool verifyMipLODBias(float MipLODBias)
LLVM_ABI bool verifyNumDescriptors(uint32_t NumDescriptors)
LLVM_ABI bool verifyMaxAnisotropy(uint32_t MaxAnisotropy)
LLVM_ABI bool verifyRegisterValue(uint32_t RegisterValue)
This is an optimization pass for GlobalISel generic memory operations.
@ Offset
Definition DWP.cpp:477
FunctionAddr VTableAddr uintptr_t uintptr_t Version
Definition InstrProf.h:302