diff --git a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp --- a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp +++ b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp @@ -521,6 +521,10 @@ // new unnamed globals. MPM.add(createNameAnonGlobalPass()); } + + // Lower the matrix intrinsics to regular LLVM instructions, even for O0. + if (EnableMatrix) + MPM.add(createLowerMatrixIntrinsicsPass()); return; }