llvm-project/clang/tools/libclang
Ties Stuij ecd682bbf5 [ARM] Add __bf16 as new Bfloat16 C Type
Summary:
This patch upstreams support for a new storage only bfloat16 C type.
This type is used to implement primitive support for bfloat16 data, in
line with the Bfloat16 extension of the Armv8.6-a architecture, as
detailed here:

https://community.arm.com/developer/ip-products/processors/b/processors-ip-blog/posts/arm-architecture-developments-armv8-6-a

The bfloat type, and its properties are specified in the Arm Architecture
Reference Manual:

https://developer.arm.com/docs/ddi0487/latest/arm-architecture-reference-manual-armv8-for-armv8-a-architecture-profile

In detail this patch:
- introduces an opaque, storage-only C-type __bf16, which introduces a new bfloat IR type.

This is part of a patch series, starting with command-line and Bfloat16
assembly support. The subsequent patches will upstream intrinsics
support for BFloat16, followed by Matrix Multiplication and the
remaining Virtualization features of the armv8.6-a architecture.

The following people contributed to this patch:
- Luke Cheeseman
- Momchil Velikov
- Alexandros Lamprineas
- Luke Geeson
- Simon Tatham
- Ties Stuij

Reviewers: SjoerdMeijer, rjmccall, rsmith, liutianle, RKSimon, craig.topper, jfb, LukeGeeson, fpetrogalli

Reviewed By: SjoerdMeijer

Subscribers: labrinea, majnemer, asmith, dexonsmith, kristof.beyls, arphaman, danielkiss, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D76077
2020-06-05 10:32:43 +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 [OPENMP50]Codegen for inscan reductions in worksharing directives. 2020-06-04 16:29:33 -04: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 [clang] Avoid linking libdl unless needed 2020-05-28 21:08:00 +03: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 [Matrix] Implement matrix index expressions ([][]). 2020-06-01 20:08:49 +01: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 [ARM] Add __bf16 as new Bfloat16 C Type 2020-06-05 10:32:43 +01: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