================
@@ -204,6 +205,10 @@ static cl::opt<bool>
     EnableLoopInterchange("enable-loopinterchange", cl::init(false), 
cl::Hidden,
                           cl::desc("Enable the LoopInterchange Pass"));
 
+static cl::opt<bool> EnableLoopFusion("enable-loopfusion", cl::init(false),
----------------
madhur13490 wrote:

As I said, I am taking over this patch from Sebastian. Your comment makes me 
think.

The primary purpose of this patch is to user-facing option to allow turning 
fusion on or off. Not everyone is aware of the options provided by developer 
tools like opt. 

I see the precedence in the code. In 
`flang/include/flang/Frontend/CodegenOptions.def` I see options for 
loop-versioning, unrolling etc. 
I see clang and flang differ here. clang doesn't seem to have such options 
except for `floop-interchange`.  

`floop-interchange` was introduced in 
https://github.com/llvm/llvm-project/pull/125830 

Having `fexperimental-loop-fusion` is more of syntactic sugar and convenience 
is based on the same principles of 
https://github.com/llvm/llvm-project/pull/125830.

I can remove the change from `PassBuilderPipelines.cpp` i.e. EnableFusion, as 
it can be redundant.



https://github.com/llvm/llvm-project/pull/142686
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to