소스 검색

Run constant array hoisting pass by default (#224)

David Peixotto 8 년 전
부모
커밋
449165a52d

+ 2 - 0
lib/Transforms/IPO/PassManagerBuilder.cpp

@@ -409,6 +409,8 @@ void PassManagerBuilder::populateModulePassManager(
   if (LoadCombine)
     MPM.add(createLoadCombinePass());
 
+  MPM.add(createHoistConstantArrayPass()); // HLSL change
+
   MPM.add(createAggressiveDCEPass());         // Delete dead instructions
   MPM.add(createCFGSimplificationPass()); // Merge & remove BBs
   MPM.add(createInstructionCombiningPass());  // Clean up after everything.

+ 1 - 1
tools/clang/test/HLSL/hca/01.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK:     internal unnamed_addr constant [3 x float]
 // CHECK-NOT: alloca [3 x float]
 

+ 1 - 1
tools/clang/test/HLSL/hca/02.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK: alloca [3 x float]
 
 float main(int i : I, int b : B) : SV_Target {

+ 1 - 1
tools/clang/test/HLSL/hca/03.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK: alloca [3 x float]
 
 float main(int i : I, float f : F) : SV_Target {

+ 1 - 1
tools/clang/test/HLSL/hca/04.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK:     internal unnamed_addr constant [3 x float]
 // CHECK-NOT: alloca [3 x float]
 

+ 1 - 1
tools/clang/test/HLSL/hca/05.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK: alloca [3 x float]
 
 void foo(inout float f) {

+ 1 - 1
tools/clang/test/HLSL/hca/06.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK:     internal unnamed_addr constant [3 x float]
 // CHECK-NOT: alloca [3 x float]
 

+ 1 - 1
tools/clang/test/HLSL/hca/07.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK: alloca [3 x float]
 
 float main(int i : I, int b : B) : SV_Target {

+ 1 - 1
tools/clang/test/HLSL/hca/08.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK:     internal unnamed_addr constant [3 x float]
 // CHECK-NOT: alloca [3 x float]
 

+ 1 - 1
tools/clang/test/HLSL/hca/09.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK:     internal unnamed_addr constant [3 x float]
 // CHECK-NOT: alloca [3 x float]
 

+ 1 - 1
tools/clang/test/HLSL/hca/10.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK: alloca [3 x float]
 
 int main(int i : I, int j : J) : SV_Target {

+ 1 - 1
tools/clang/test/HLSL/hca/11.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK: alloca [3 x i32]
 
 // We could get hoist the arrays individually but the two allocas are

+ 1 - 1
tools/clang/test/HLSL/hca/12.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK:     internal unnamed_addr constant [3 x i32]
 // CHECK:     internal unnamed_addr constant [3 x i32]
 // CHECK-NOT: alloca [3 x i32]

+ 1 - 1
tools/clang/test/HLSL/hca/13.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK-DAG: internal unnamed_addr constant [3 x i32]
 // CHECK-DAG: internal unnamed_addr constant [4 x i32]
 // CHECK-NOT: alloca [

+ 1 - 1
tools/clang/test/HLSL/hca/14.hlsl

@@ -1,4 +1,4 @@
-// RUN: %dxc -Emain -Tps_6_0 %s | %opt -S -hlsl-hca -dce | %FileCheck %s
+// RUN: %dxc -Emain -Tps_6_0 %s | %FileCheck %s
 // CHECK-DAG:     internal unnamed_addr constant [3 x i32]
 // CHECK-DAG:     internal unnamed_addr constant [3 x float]
 // CHECK-NOT: alloca [3 x i32]