@@ -6,8 +6,11 @@ SPDX-License-Identifier: MIT
6
6
7
7
============================= end_copyright_notice ===========================*/
8
8
9
+ #include < chrono>
10
+
9
11
#include " common/LLVMWarningsPush.hpp"
10
12
#include < llvm/Support/ScaledNumber.h>
13
+ #include " llvm/ADT/PostOrderIterator.h"
11
14
#include < llvm/IR/LLVMContext.h>
12
15
#include < llvm/IR/Verifier.h>
13
16
#include < llvm/Analysis/CFGPrinter.h>
@@ -38,7 +41,6 @@ SPDX-License-Identifier: MIT
38
41
#include " Compiler/CISACodeGen/ShaderCodeGen.hpp"
39
42
#include " Compiler/CISACodeGen/EstimateFunctionSize.h"
40
43
#include " Compiler/CISACodeGen/FixAddrSpaceCast.h"
41
- #include " Compiler/Optimizer/OpenCLPasses/GenericCastToPtrOpt/GenericCastToPtrOpt.hpp"
42
44
#include " Compiler/Optimizer/OpenCLPasses/GenericAddressResolution/GASResolving.h"
43
45
#include " Compiler/Optimizer/OpenCLPasses/GenericAddressResolution/GASRetValuePropagator.h"
44
46
#include " Compiler/Optimizer/OpenCLPasses/GenericAddressResolution/StaticGASResolution.h"
@@ -61,29 +63,35 @@ SPDX-License-Identifier: MIT
61
63
#include " Compiler/Optimizer/OpenCLPasses/PrepareInlineSamplerForBindless/PrepareInlineSamplerForBindless.hpp"
62
64
#include " Compiler/Optimizer/OpenCLPasses/ResolveInlineSamplerForBindless/ResolveInlineSamplerForBindless.hpp"
63
65
#include " Compiler/Optimizer/OpenCLPasses/PrivateMemory/PrivateMemoryUsageAnalysis.hpp"
66
+ #include " Compiler/Optimizer/OpenCLPasses/PrivateMemory/PrivateMemoryResolution.hpp"
64
67
#include " Compiler/Optimizer/OpenCLPasses/ProgramScopeConstants/ProgramScopeConstantAnalysis.hpp"
65
68
#include " Compiler/Optimizer/OpenCLPasses/ProgramScopeConstants/ProgramScopeConstantResolution.hpp"
66
69
#include " Compiler/Optimizer/OpenCLPasses/WIFuncs/WIFuncsAnalysis.hpp"
67
70
#include " Compiler/Optimizer/OpenCLPasses/WIFuncs/WIFuncResolution.hpp"
68
71
#include " Compiler/Optimizer/OpenCLPasses/ResourceAllocator/ResourceAllocator.hpp"
69
72
#include " Compiler/Optimizer/OpenCLPasses/BreakConstantExpr/BreakConstantExpr.hpp"
70
73
#include " Compiler/Optimizer/OpenCLPasses/LocalBuffers/InlineLocalsResolution.hpp"
74
+ #include " Compiler/Optimizer/OpenCLPasses/ReplaceUnsupportedIntrinsics/ReplaceUnsupportedIntrinsics.hpp"
71
75
#include " Compiler/Optimizer/OpenCLPasses/Atomics/ResolveOCLAtomics.hpp"
72
76
#include " Compiler/Optimizer/OpenCLPasses/WGFuncs/WGFuncResolution.hpp"
73
77
#include " Compiler/Optimizer/OpenCLPasses/AlignmentAnalysis/AlignmentAnalysis.hpp"
78
+ #include " Compiler/Optimizer/PreCompiledFuncImport.hpp"
74
79
#include " Compiler/Optimizer/OpenCLPasses/OpenCLPrintf/InjectPrintf.hpp"
75
80
#include " Compiler/Optimizer/OpenCLPasses/OpenCLPrintf/OpenCLPrintfAnalysis.hpp"
76
81
#include " Compiler/Optimizer/OpenCLPasses/OpenCLPrintf/OpenCLPrintfResolution.hpp"
77
82
#include " Compiler/Optimizer/OpenCLPasses/AggregateArguments/AggregateArguments.hpp"
78
83
#include " Compiler/Optimizer/OCLBIConverter.h"
79
84
#include " Compiler/Optimizer/OpenCLPasses/SetFastMathFlags/SetFastMathFlags.hpp"
80
85
#include " Compiler/Optimizer/OpenCLPasses/CorrectlyRoundedDivSqrt/CorrectlyRoundedDivSqrt.hpp"
86
+ #include " Compiler/Optimizer/OpenCLPasses/GenericAddressResolution/GenericAddressDynamicResolution.hpp"
87
+ #include " Compiler/Optimizer/OpenCLPasses/AddressSpaceAliasAnalysis/AddressSpaceAliasAnalysis.h"
81
88
#include " Compiler/Optimizer/OpenCLPasses/DeviceEnqueueFuncs/DeviceEnqueue.hpp"
82
89
#include " Compiler/Optimizer/OpenCLPasses/UndefinedReferences/UndefinedReferencesPass.hpp"
83
90
#include " Compiler/Optimizer/OpenCLPasses/SubGroupFuncs/SubGroupFuncsResolution.hpp"
84
91
#include " Compiler/Optimizer/OpenCLPasses/BIFTransforms/BIFTransforms.hpp"
85
92
#include " Compiler/Optimizer/OpenCLPasses/BreakdownIntrinsic/BreakdownIntrinsic.h"
86
93
#include " Compiler/Optimizer/OpenCLPasses/TransformUnmaskedFunctionsPass/TransformUnmaskedFunctionsPass.h"
94
+ #include " Compiler/Optimizer/OpenCLPasses/StatelessToStateful/StatelessToStateful.hpp"
87
95
#include " Compiler/Optimizer/OpenCLPasses/KernelFunctionCloning/KernelFunctionCloning.h"
88
96
#include " Compiler/Optimizer/OpenCLPasses/NontemporalLoadsAndStoresInAssert/NontemporalLoadsAndStoresInAssert.hpp"
89
97
#include " Compiler/Optimizer/OpenCLPasses/HandleDevicelibAssert/HandleDevicelibAssert.hpp"
@@ -106,10 +114,13 @@ SPDX-License-Identifier: MIT
106
114
#include " Compiler/Optimizer/OpenCLPasses/AccuracyDecoratedCallsBiFResolution/AccuracyDecoratedCallsBiFResolution.hpp"
107
115
#include " Compiler/Optimizer/OpenCLPasses/ScalarArgAsPointer/ScalarArgAsPointer.hpp"
108
116
#include " AdaptorCommon/RayTracing/RayTracingPasses.hpp"
117
+ #include " Compiler/MetaDataApi/IGCMetaDataHelper.h"
109
118
#include " Compiler/CodeGenContextWrapper.hpp"
110
119
#include " Compiler/FixResourcePtr.hpp"
120
+ #include " Compiler/InitializePasses.h"
111
121
#include " Compiler/MetaDataApi/SpirMetaDataApi.h"
112
122
#include " Compiler/Optimizer/ReduceOptPass.hpp"
123
+ #include " Compiler/CustomUnsafeOptPass.hpp"
113
124
#include " MoveStaticAllocas.h"
114
125
#include " preprocess_spvir/PreprocessSPVIR.h"
115
126
#include " preprocess_spvir/ConvertUserSemanticDecoratorOnFunctions.h"
@@ -126,15 +137,20 @@ SPDX-License-Identifier: MIT
126
137
127
138
#include " common/debug/Debug.hpp"
128
139
#include " common/igc_regkeys.hpp"
140
+ #include " common/debug/Dump.hpp"
141
+ #include " common/MemStats.h"
129
142
130
143
#include < iStdLib/utility.h>
131
144
132
145
#include " Compiler/CISACodeGen/DebugInfo.hpp"
133
146
#include " Compiler/CISACodeGen/TimeStatsCounter.h"
134
147
#include " Compiler/DebugInfo/ScalarVISAModule.h"
148
+ #include " Compiler/DebugInfo/Utils.h"
135
149
#include " Compiler/Builtins/BIFFlagCtrl/BIFFlagCtrlResolution.hpp"
150
+ #include " DebugInfo/VISADebugEmitter.hpp"
136
151
137
152
#include < string>
153
+ #include < algorithm>
138
154
139
155
#include < Metrics/IGCMetric.h>
140
156
@@ -382,10 +398,6 @@ static void CommonOCLBasedPasses(OpenCLProgramContext *pContext) {
382
398
// mark load and stores inside assert calls as nontemporal to avoid caching.
383
399
mpm.add (new NontemporalLoadsAndStoresInAssert ());
384
400
385
- if (IGC_IS_FLAG_ENABLED (EnableGenericCastToPtrOpt)) {
386
- mpm.add (new GenericCastToPtrOpt ());
387
- }
388
-
389
401
// Report undef references after setting func attribs for import linking
390
402
mpm.add (new UndefinedReferencesPass ());
391
403
0 commit comments