[all-commits] [llvm/llvm-project] d45cf9: [AArch64][SVE2] Guard while intrinsics on scalar b...

Cullen Rhodes via All-commits all-commits at lists.llvm.org
Fri Jun 26 03:26:23 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: d45cf9105b5a88ed03382ffbbfcd54b461f1bb23
      https://github.com/llvm/llvm-project/commit/d45cf9105b5a88ed03382ffbbfcd54b461f1bb23
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2020-06-26 (Fri, 26 Jun 2020)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilerw-bfloat.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_whilewr-bfloat.c

  Log Message:
  -----------
  [AArch64][SVE2] Guard while intrinsics on scalar bfloat feature macro

Summary:
`svwhilerw_bf16` and `svwhilewr_bf16` intrinsics use the scalar
`bfloat16_t`
type which is predicated on `__ARM_FEATURE_BF16_SCALAR_ARITHMETIC`. This
patch changes the feature guard from `__ARM_FEATURE_SVE_BF16` to the
scalar bfloat feature macro.

The verify tests for `+bf16` are also removed in this patch. The purpose
of these checks was to match the SVE2 ACLE tests that look for an
implicit declaration warning if the feature isn't set. They worked when
the intrinsics were guarded on `__ARM_FEATURE_SVE_BF16` as the
`bfloat16_t`
was guarded on a different macro, but with both the type and intrinsic
guarded on the same macro an earlier error is triggered in the ACLE
regarding the type and we don't get a warning as we do for SVE2.

Reviewers: sdesmalen, fpetrogalli, kmclaughlin, rengolin, efriedma

Reviewed By: sdesmalen, fpetrogalli

Differential Revision: https://reviews.llvm.org/D82578




More information about the All-commits mailing list