[all-commits] [llvm/llvm-project] 67e433: [sve][acle] Implement some of the C intrinsics for...

Francesco Petrogalli via All-commits all-commits at lists.llvm.org
Mon Jun 29 09:10:33 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 67e4330facfbf798ecc40cd2449f70e6758078b9
      https://github.com/llvm/llvm-project/commit/67e4330facfbf798ecc40cd2449f70e6758078b9
  Author: Francesco Petrogalli <francesco.petrogalli at arm.com>
  Date:   2020-06-29 (Mon, 29 Jun 2020)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_clasta-bfloat.c
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_clastb-bfloat.c
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dup-bfloat.c
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_dupq-bfloat.c
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_insr-bfloat.c
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_lasta-bfloat.c
    A clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_lastb-bfloat.c
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/sve-intrinsics-dup-x.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-perm-select.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-scalar-to-vec.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-shifts.ll
    M llvm/test/CodeGen/AArch64/sve-vector-splat.ll

  Log Message:
  -----------
  [sve][acle] Implement some of the C intrinsics for brain float.

Summary:
The following intrinsics have been extended to support brain float types:

svbfloat16_t svclasta[_bf16](svbool_t pg, svbfloat16_t fallback, svbfloat16_t data)
bfloat16_t svclasta[_n_bf16](svbool_t pg, bfloat16_t fallback, svbfloat16_t data)
bfloat16_t svlasta[_bf16](svbool_t pg, svbfloat16_t op)

svbfloat16_t svclastb[_bf16](svbool_t pg, svbfloat16_t fallback, svbfloat16_t data)
bfloat16_t svclastb[_n_bf16](svbool_t pg, bfloat16_t fallback, svbfloat16_t data)
bfloat16_t svlastb[_bf16](svbool_t pg, svbfloat16_t op)

svbfloat16_t svdup[_n]_bf16(bfloat16_t op)
svbfloat16_t svdup[_n]_bf16_m(svbfloat16_t inactive, svbool_t pg, bfloat16_t op)
svbfloat16_t svdup[_n]_bf16_x(svbool_t pg, bfloat16_t op)
svbfloat16_t svdup[_n]_bf16_z(svbool_t pg, bfloat16_t op)

svbfloat16_t svdupq[_n]_bf16(bfloat16_t x0, bfloat16_t x1, bfloat16_t x2, bfloat16_t x3, bfloat16_t x4, bfloat16_t x5, bfloat16_t x6, bfloat16_t x7)
svbfloat16_t svdupq_lane[_bf16](svbfloat16_t data, uint64_t index)

svbfloat16_t svinsr[_n_bf16](svbfloat16_t op1, bfloat16_t op2)

Reviewers: sdesmalen, kmclaughlin, c-rhodes, ctetreau, efriedma

Subscribers: tschuett, hiraditya, rkruppe, psnobl, cfe-commits, llvm-commits

Tags: #clang, #llvm

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




More information about the All-commits mailing list