LLVM 20.0.0git
DirectX.h
Go to the documentation of this file.
1//===- DirectXTargetMachine.h - DirectX Target Implementation ---*- 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//===----------------------------------------------------------------------===//
10
11#ifndef LLVM_LIB_TARGET_DIRECTX_DIRECTX_H
12#define LLVM_LIB_TARGET_DIRECTX_DIRECTX_H
13
14namespace llvm {
15class ModulePass;
16class PassRegistry;
17class raw_ostream;
18
19/// Initializer for dxil writer pass
21
22/// Initializer for dxil embedder pass
24
25/// Initializer for DXIL-prepare
27
28/// Pass to convert modules into DXIL-compatable modules
30
31/// Initializer for DXIL Intrinsic Expansion
33
34/// Pass to expand intrinsic operations that lack DXIL opCodes
36
37/// Initializer for DXILOpLowering
39
40/// Pass to lowering LLVM intrinsic call to DXIL op function call.
42
43/// Initializer for DXILTranslateMetadata.
45
46/// Pass to emit metadata for DXIL.
48
49/// Initializer for DXILTranslateMetadata.
51
52/// Pass to pretty print DXIL metadata.
54
55/// Initializer for DXILPrettyPrinter.
57
58/// Initializer for dxil::ShaderFlagsAnalysisWrapper pass.
60
61/// Initializer for DXContainerGlobals pass.
63
64/// Pass for generating DXContainer part globals.
66
67/// Initializer for DXILFinalizeLinkage pass.
69
70/// Pass to finalize linkage of functions.
72
73} // namespace llvm
74
75#endif // LLVM_LIB_TARGET_DIRECTX_DIRECTX_H
raw_pwrite_stream & OS
ModulePass class - This class is used to implement unstructured interprocedural optimizations and ana...
Definition: Pass.h:251
PassRegistry - This class manages the registration and intitialization of the pass subsystem as appli...
Definition: PassRegistry.h:37
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:52
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
void initializeDXILPrettyPrinterPass(PassRegistry &)
Initializer for DXILPrettyPrinter.
void initializeShaderFlagsAnalysisWrapperPass(PassRegistry &)
Initializer for dxil::ShaderFlagsAnalysisWrapper pass.
ModulePass * createDXILPrepareModulePass()
Pass to convert modules into DXIL-compatable modules.
ModulePass * createDXContainerGlobalsPass()
Pass for generating DXContainer part globals.
void initializeDXILResourceMDWrapperPass(PassRegistry &)
Initializer for DXILTranslateMetadata.
ModulePass * createDXILTranslateMetadataPass()
Pass to emit metadata for DXIL.
ModulePass * createDXILPrettyPrinterPass(raw_ostream &OS)
Pass to pretty print DXIL metadata.
void initializeDXILPrepareModulePass(PassRegistry &)
Initializer for DXIL-prepare.
ModulePass * createDXILFinalizeLinkageLegacyPass()
Pass to finalize linkage of functions.
void initializeEmbedDXILPassPass(PassRegistry &)
Initializer for dxil embedder pass.
ModulePass * createDXILIntrinsicExpansionLegacyPass()
Pass to expand intrinsic operations that lack DXIL opCodes.
void initializeDXILFinalizeLinkageLegacyPass(PassRegistry &)
Initializer for DXILFinalizeLinkage pass.
void initializeDXILIntrinsicExpansionLegacyPass(PassRegistry &)
Initializer for DXIL Intrinsic Expansion.
ModulePass * createDXILOpLoweringLegacyPass()
Pass to lowering LLVM intrinsic call to DXIL op function call.
void initializeDXILOpLoweringLegacyPass(PassRegistry &)
Initializer for DXILOpLowering.
void initializeWriteDXILPassPass(PassRegistry &)
Initializer for dxil writer pass.
void initializeDXILTranslateMetadataPass(PassRegistry &)
Initializer for DXILTranslateMetadata.
void initializeDXContainerGlobalsPass(PassRegistry &)
Initializer for DXContainerGlobals pass.