ソースを参照

Add pass for dxil-loop-unroll in hctdb. (#1815)

Xiang Li 6 年 前
コミット
2a8865470f
2 ファイル変更2 行追加1 行削除
  1. 1 1
      lib/HLSL/DxcOptimizer.cpp
  2. 1 0
      utils/hct/hctdb.py

+ 1 - 1
lib/HLSL/DxcOptimizer.cpp

@@ -98,6 +98,7 @@ HRESULT SetupRegistryPassForHLSL() {
     initializeDxilLegalizeResourcesPass(Registry);
     initializeDxilLegalizeSampleOffsetPassPass(Registry);
     initializeDxilLoadMetadataPass(Registry);
+    initializeDxilLoopUnrollPass(Registry);
     initializeDxilLowerCreateHandleForLibPass(Registry);
     initializeDxilPrecisePropagatePassPass(Registry);
     initializeDxilPreserveAllOutputsPass(Registry);
@@ -157,7 +158,6 @@ HRESULT SetupRegistryPassForHLSL() {
     initializeSROA_Parameter_HLSLPass(Registry);
     initializeSROA_SSAUpPass(Registry);
     initializeSROA_SSAUp_HLSLPass(Registry);
-    initializeDxilLoopUnrollPass(Registry);
     initializeSampleProfileLoaderPass(Registry);
     initializeScalarizerPass(Registry);
     initializeScopedNoAliasAAPass(Registry);

+ 1 - 0
utils/hct/hctdb.py

@@ -1615,6 +1615,7 @@ class db_dxil(object):
         # C:\nobackup\work\HLSLonLLVM\lib\Transforms\IPO\PassManagerBuilder.cpp:353
         add_pass('indvars', 'IndVarSimplify', "Induction Variable Simplification", [])
         add_pass('loop-idiom', 'LoopIdiomRecognize', "Recognize loop idioms", [])
+        add_pass('dxil-loop-unroll', 'DxilLoopUnroll', 'DxilLoopUnroll', [])
         add_pass('loop-deletion', 'LoopDeletion', "Delete dead loops", [])
         add_pass('loop-interchange', 'LoopInterchange', 'Interchanges loops for cache reuse', [])
         add_pass('loop-unroll', 'LoopUnroll', 'Unroll loops', [