[all-commits] [llvm/llvm-project] 8c30f4: [AArch64] Always allow the __bf16 type
David Green via All-commits
all-commits at lists.llvm.org
Thu Aug 4 10:35:46 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8c30f4a5ab3e8dc4a75669d497723f9a2d8d39c8
https://github.com/llvm/llvm-project/commit/8c30f4a5ab3e8dc4a75669d497723f9a2d8d39c8
Author: David Green <david.green at arm.com>
Date: 2022-08-04 (Thu, 04 Aug 2022)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/test/CodeGen/arm-bf16-params-returns.c
M clang/test/CodeGen/arm-mangle-bf16.cpp
M clang/test/Sema/arm-bf16-forbidden-ops.c
M clang/test/Sema/arm-bf16-forbidden-ops.cpp
M clang/test/Sema/arm-bfloat.cpp
Log Message:
-----------
[AArch64] Always allow the __bf16 type
We would like to make the ACLE NEON and SVE intrinsics more useable by
gating them on the target, not by ifdef preprocessor macros. In order to
do this the types they use need to be available. This patches makes
__bf16 always available under AArch64 not just when the bf16
architecture feature is present. This bringing it in-line with GCC. In
subsequent patches the NEON bfloat16x8_t and SVE svbfloat16_t types
(along with bfloat16_t used in arm_sve.h) will be made unconditional
too.
The operations valid on the types are still very limited. They can be
used as a storage type, but the intrinsics used for convertions are
still behind an ifdef guard in arm_neon.h/arm_bf16.h.
Differential Revision: https://reviews.llvm.org/D130973
More information about the All-commits
mailing list