llvm-project/clang/tools
Florian Hahn 1065869195 [Matrix] Add matrix type to Clang.
This patch adds a matrix type to Clang as described in the draft
specification in clang/docs/MatrixSupport.rst. It introduces a new option
-fenable-matrix, which can be used to enable the matrix support.

The patch adds new MatrixType and DependentSizedMatrixType types along
with the plumbing required. Loads of and stores to pointers to matrix
values are lowered to memory operations on 1-D IR arrays. After loading,
the loaded values are cast to a vector. This ensures matrix values use
the alignment of the element type, instead of LLVM's large vector
alignment.

The operators and builtins described in the draft spec will will be added in
follow-up patches.

Reviewers: martong, rsmith, Bigcheese, anemet, dexonsmith, rjmccall, aaron.ballman

Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D72281
2020-05-11 18:55:45 +01:00
..
arcmt-test Revert "Use InitLLVM to setup a pretty stack printer" 2019-11-25 21:06:56 -05:00
c-arcmt-test [CMake] Use PRIVATE in target_link_libraries for executables 2017-12-05 21:49:56 +00:00
c-index-test Expose AtomicType in the libclang C API. 2020-04-16 08:06:58 -04:00
clang-check Revert "Use InitLLVM to setup a pretty stack printer" 2019-11-25 21:06:56 -05:00
clang-diff Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
clang-extdef-mapping Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
clang-format [clang-format] [PR45126] Help text is missing all available formats 2020-05-07 19:50:21 +01:00
clang-format-vs clang-format-vs : Fix Unicode formatting 2019-11-27 09:58:59 +01:00
clang-fuzzer [clang-objc-fuzzer] Add LLVMFuzzerInitialize to fix msvc builds (PR44414) 2020-04-14 13:37:27 +01:00
clang-import-test Avoid including FileManager.h from SourceManager.h 2020-03-11 13:53:12 -07:00
clang-offload-bundler [Clang][Bundler][NFC] Replace SmallString<...> with StringRef 2020-01-30 12:50:04 -08:00
clang-offload-wrapper [clang-offload-wrapper] Lower priority of __tgt_register_lib in favor of __tgt_register_requires 2020-03-03 12:31:40 -08:00
clang-refactor Avoid including FileManager.h from SourceManager.h 2020-03-11 13:53:12 -07:00
clang-rename Rename F_{None,Text,Append} to OF_{None,Text,Append}. NFC 2019-08-05 05:43:48 +00:00
clang-scan-deps Upgrade some instances of std::sort to llvm::sort. NFC. 2020-03-28 19:23:29 +01:00
clang-shlib [cmake] Fix clang builds with BUILD_SHARED=ON and CLANG_LINK_CLANG_DYLIB=ON 2020-02-04 14:15:16 -08:00
diag-build
diagtool [diagtree] Use a different color for unimplemented GCC diagnostic flags 2020-01-31 13:40:32 -08:00
driver Simplify string joins. NFCI. 2020-04-11 17:20:11 +02:00
libclang [Matrix] Add matrix type to Clang. 2020-05-11 18:55:45 +01:00
scan-build [gn build] add scan-build target 2020-04-10 06:18:41 -04:00
scan-build-py [scan-build-py] Set of small fixes 2019-12-05 09:00:16 -08:00
scan-view [clang] [cmake] Add distribution install targets for remaining components 2019-10-04 05:43:20 +00:00
CMakeLists.txt [Clang][OpenMP Offload] Add new tool for wrapping offload device binaries 2019-10-09 20:42:58 +00:00