Revert " [LoongArch][ISel] Check the number of sign bits in `PatGprGpr_32` (#107432)"
[llvm-project.git] / llvm / lib / Target / DirectX / DirectX.h
blob11b5412c21d783b96722a56c17788dca51a04a29
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 //===----------------------------------------------------------------------===//
11 #ifndef LLVM_LIB_TARGET_DIRECTX_DIRECTX_H
12 #define LLVM_LIB_TARGET_DIRECTX_DIRECTX_H
14 namespace llvm {
15 class ModulePass;
16 class PassRegistry;
17 class raw_ostream;
19 /// Initializer for dxil writer pass
20 void initializeWriteDXILPassPass(PassRegistry &);
22 /// Initializer for dxil embedder pass
23 void initializeEmbedDXILPassPass(PassRegistry &);
25 /// Initializer for DXIL-prepare
26 void initializeDXILPrepareModulePass(PassRegistry &);
28 /// Pass to convert modules into DXIL-compatable modules
29 ModulePass *createDXILPrepareModulePass();
31 /// Initializer for DXIL Intrinsic Expansion
32 void initializeDXILIntrinsicExpansionLegacyPass(PassRegistry &);
34 /// Pass to expand intrinsic operations that lack DXIL opCodes
35 ModulePass *createDXILIntrinsicExpansionLegacyPass();
37 /// Initializer for DXILOpLowering
38 void initializeDXILOpLoweringLegacyPass(PassRegistry &);
40 /// Pass to lowering LLVM intrinsic call to DXIL op function call.
41 ModulePass *createDXILOpLoweringLegacyPass();
43 /// Initializer for DXILTranslateMetadata.
44 void initializeDXILTranslateMetadataPass(PassRegistry &);
46 /// Pass to emit metadata for DXIL.
47 ModulePass *createDXILTranslateMetadataPass();
49 /// Initializer for DXILTranslateMetadata.
50 void initializeDXILResourceWrapperPass(PassRegistry &);
52 /// Pass to pretty print DXIL metadata.
53 ModulePass *createDXILPrettyPrinterPass(raw_ostream &OS);
55 /// Initializer for DXILPrettyPrinter.
56 void initializeDXILPrettyPrinterPass(PassRegistry &);
58 /// Initializer for dxil::ShaderFlagsAnalysisWrapper pass.
59 void initializeShaderFlagsAnalysisWrapperPass(PassRegistry &);
61 /// Initializer for DXContainerGlobals pass.
62 void initializeDXContainerGlobalsPass(PassRegistry &);
64 /// Pass for generating DXContainer part globals.
65 ModulePass *createDXContainerGlobalsPass();
66 } // namespace llvm
68 #endif // LLVM_LIB_TARGET_DIRECTX_DIRECTX_H