@@ -85,9 +85,17 @@ ir::LoweredFunc Optimize(ir::LoweredFunc fn,
8585#ifdef CINN_WITH_CUDA
8686 ir::SetCudaAxisInfo (copied);
8787 if (remove_gpu_for_loops) {
88- RemoveGpuForLoops (copied);
88+ LOG (INFO) << " Before removing GPU for loops:\n " << copied;
89+ FuncPassManager func_pass_manager;
90+ func_pass_manager.AddPass (CreateRemoveGpuForLoopsPass ());
91+ func_pass_manager.Run (copied);
92+ LOG (INFO) << " After removing GPU for loops:\n " << copied;
8993 }
90- CudaSyncThreadsDropIfThenElse (copied);
94+ VLOG (10 ) << " Before Optimize CudaSyncThreadsDropIfThenElse:" << copied;
95+ BlockPassManager blk_pass_manager;
96+ blk_pass_manager.AddPass (CreateCudaSyncThreadsDropIfThenElsePass ());
97+ blk_pass_manager.Run (copied->body_block );
98+ VLOG (10 ) << " After Optimize CudaSyncThreadsDropIfThenElse:" << copied;
9199 FuncPassManager func_pass_manager;
92100 VLOG (10 ) << " Before Optimize TransBufferWithDynamicShape:" << copied;
93101 func_pass_manager.AddPass (CreateTransBufferWithDynamicShapePass ());
@@ -99,10 +107,17 @@ ir::LoweredFunc Optimize(ir::LoweredFunc fn,
99107#ifdef CINN_WITH_HIP
100108 ir::SetCudaAxisInfo (copied);
101109 if (remove_gpu_for_loops) {
102- RemoveGpuForLoops (copied);
110+ LOG (INFO) << " Before removing GPU for loops:\n " << copied;
111+ FuncPassManager func_pass_manager;
112+ func_pass_manager.AddPass (CreateRemoveGpuForLoopsPass ());
113+ func_pass_manager.Run (copied);
114+ LOG (INFO) << " After removing GPU for loops:\n " << copied;
103115 }
104- CudaSyncThreadsDropIfThenElse (copied);
105- // CudaTransBufferWithDynamicShape(&copied);
116+ VLOG (10 ) << " Before Optimize CudaSyncThreadsDropIfThenElse:" << copied;
117+ BlockPassManager blk_pass_manager;
118+ blk_pass_manager.AddPass (CreateCudaSyncThreadsDropIfThenElsePass ());
119+ blk_pass_manager.Run (copied->body_block );
120+ VLOG (10 ) << " After Optimize CudaSyncThreadsDropIfThenElse:" << copied;
106121#endif
107122 },
108123 [&](common::HygonDCUArchSYCL) { CINN_NOT_IMPLEMENTED },
0 commit comments