1 //===- DirectXPassRegistry.def
- Registry of DirectX passes
-----*- C
++--*-===//
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
7 //===----------------------------------------------------------------------===//
9 // This file is used as the registry of passes that are part of the
12 //===----------------------------------------------------------------------===//
14 // NOTE
: NO INCLUDE GUARD DESIRED
!
16 #ifndef MODULE_ANALYSIS
17 #define
MODULE_ANALYSIS(NAME
, CREATE_PASS
)
19 MODULE_ANALYSIS("dx-shader-flags", dxil
::ShaderFlagsAnalysis())
20 MODULE_ANALYSIS("dxil-resource-md", DXILResourceMDAnalysis())
21 #undef MODULE_ANALYSIS
24 #define
MODULE_PASS(NAME
, CREATE_PASS
)
26 MODULE_PASS("dxil-data-scalarization", DXILDataScalarization())
27 MODULE_PASS("dxil-flatten-arrays", DXILFlattenArrays())
28 MODULE_PASS("dxil-intrinsic-expansion", DXILIntrinsicExpansion())
29 MODULE_PASS("dxil-op-lower", DXILOpLowering())
30 MODULE_PASS("dxil-pretty-printer", DXILPrettyPrinterPass(dbgs()))
31 MODULE_PASS("dxil-translate-metadata", DXILTranslateMetadata())
32 // TODO
: rename to print
<foo
> after NPM switch
33 MODULE_PASS("print-dx-shader-flags", dxil
::ShaderFlagsAnalysisPrinter(dbgs()))
37 #define
FUNCTION_PASS(NAME
, CREATE_PASS
)
39 FUNCTION_PASS("dxil-resource-access", DXILResourceAccess())