llvm-project/clang/tools/libclang
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
..
ARCMigrate.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
BuildSystem.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CIndex.cpp [Matrix] Add matrix type to Clang. 2020-05-11 18:55:45 +01:00
CIndexCXX.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CIndexCodeCompletion.cpp AllocatedCXCodeCompleteResults::DiagnosticWrappers: use unique_ptr to simplify memory management 2020-04-28 17:45:07 -07:00
CIndexDiagnostic.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
CIndexDiagnostic.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CIndexHigh.cpp Range-style std::find{,_if} -> llvm::find{,_if}. NFC 2019-03-31 08:48:19 +00:00
CIndexInclusionStack.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CIndexUSRs.cpp Fix file headers. NFC 2019-03-01 06:49:51 +00:00
CIndexer.cpp Avoid including FileSystem.h from MemoryBuffer.h 2020-02-29 12:30:23 -08:00
CIndexer.h Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
CLog.h Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
CMakeLists.txt Add a flag that controls if clang-tidy and clang-include-fixer are built into libclang. 2020-05-08 11:41:45 -04:00
CXComment.cpp [Wdocumentation] Implement \anchor 2019-12-21 14:52:21 +01:00
CXComment.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXCompilationDatabase.cpp
CXCursor.cpp [OPENMP50]Add initial support for OpenMP 5.0 iterator. 2020-04-02 08:28:15 -04:00
CXCursor.h [clang] Reformat cindex. NFC. 2020-03-25 11:11:48 -05:00
CXIndexDataConsumer.cpp [clang][Index] Introduce a TemplateParm SymbolKind 2020-02-14 13:20:34 +01:00
CXIndexDataConsumer.h [NFC] Fix typos in Clangd and Clang 2019-12-16 10:54:40 +01:00
CXLoadedDiagnostic.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00
CXLoadedDiagnostic.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXSourceLocation.cpp Avoid including FileManager.h from SourceManager.h 2020-03-11 13:53:12 -07:00
CXSourceLocation.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXStoredDiagnostic.cpp Fix file headers. NFC 2019-03-01 06:49:51 +00:00
CXString.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXString.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXTranslationUnit.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CXType.cpp Expose AtomicType in the libclang C API. 2020-04-16 08:06:58 -04:00
CXType.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CursorVisitor.h [libclang]: visit BindingDecl in DecompositionDecl 2020-05-02 22:18:31 +02:00
FatalErrorHandler.cpp Add missing newlines at EOF; NFC 2020-02-12 15:57:25 +00:00
Index_Internal.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Indexing.cpp Improve diagnostics for missing import / #include of module. 2020-04-28 18:41:14 -07:00
libclang.exports Expose AtomicType in the libclang C API. 2020-04-16 08:06:58 -04:00