[PATCH] D76327: [Matrix] Also run LowerMatrixIntrinsics for -O0.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 17 15:08:03 PDT 2020


fhahn created this revision.
fhahn added reviewers: anemet, Gerolf, andrew.w.kaylor, LuoYuanke.
Herald added subscribers: tschuett, hiraditya.
Herald added a project: LLVM.

The lowering of the llvm.matrix intrinsics happens exclusively in the
LowerMatrixIntrinsics pass and the backends do not know about those
intrinsics. That means we also have to run LowerMatrixIntrinsics for
-O0. Otherwise Clang will crash in the backend for code with llvm.matrix
intrinsics.

Fixes PR45227.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D76327

Files:
  llvm/lib/Transforms/IPO/PassManagerBuilder.cpp


Index: llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
===================================================================
--- llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
+++ 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;
   }
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76327.250913.patch
Type: text/x-patch
Size: 502 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200317/8413a5f8/attachment.bin>


More information about the llvm-commits mailing list